diff options
author | Mike Frysinger <vapier@gentoo.org> | 2016-05-16 21:46:00 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2016-05-16 22:53:46 -0400 |
commit | 05919779f2a6a519a43ec0c3ecbdb8f43ea57abd (patch) | |
tree | 9cf6dc4eaeda37070b249340a1e41c57fc20fec7 /sys-block | |
parent | dev-perl/Gentoo-App-Pram: Whitespace. (diff) | |
download | gentoo-05919779f2a6a519a43ec0c3ecbdb8f43ea57abd.tar.gz gentoo-05919779f2a6a519a43ec0c3ecbdb8f43ea57abd.tar.bz2 gentoo-05919779f2a6a519a43ec0c3ecbdb8f43ea57abd.zip |
sys-block/sedutil: new package for Chromium OS
Diffstat (limited to 'sys-block')
-rw-r--r-- | sys-block/sedutil/Manifest | 1 | ||||
-rw-r--r-- | sys-block/sedutil/files/nvme.h | 90 | ||||
-rw-r--r-- | sys-block/sedutil/metadata.xml | 10 | ||||
-rw-r--r-- | sys-block/sedutil/sedutil-1.12.ebuild | 46 |
4 files changed, 147 insertions, 0 deletions
diff --git a/sys-block/sedutil/Manifest b/sys-block/sedutil/Manifest new file mode 100644 index 000000000000..5662aa36fc41 --- /dev/null +++ b/sys-block/sedutil/Manifest @@ -0,0 +1 @@ +DIST sedutil-1.12.tar.gz 214066 SHA256 5509d4279cfb316f33730c5cb06f8162ae212c7f4d31d206642d67cc8be245c1 SHA512 f17fbb5a6d71d5bdd59d0fc85eed11036a8e365545133bc1374a733ce1975d6c8dd2cdc500bd46cffbec1f2bef621a98ca392e0dd314734c1ef12c073d70b0de WHIRLPOOL 299e35256de3c49a717fff727f45a1aaeeb2f65e1e3fb8afc4ba0af1626101e0f95618f182a32d90fee6278d980670df2c444219346fb6783fbe630d11209970 diff --git a/sys-block/sedutil/files/nvme.h b/sys-block/sedutil/files/nvme.h new file mode 100644 index 000000000000..448aca0279ff --- /dev/null +++ b/sys-block/sedutil/files/nvme.h @@ -0,0 +1,90 @@ +/* stub to deal with renamed/neutered nvme.h header */ + +#include <linux/types.h> +#include <linux/nvme_ioctl.h> + +struct nvme_id_power_state { + __le16 max_power; /* centiwatts */ + __u8 rsvd2; + __u8 flags; + __le32 entry_lat; /* microseconds */ + __le32 exit_lat; /* microseconds */ + __u8 read_tput; + __u8 read_lat; + __u8 write_tput; + __u8 write_lat; + __le16 idle_power; + __u8 idle_scale; + __u8 rsvd19; + __le16 active_power; + __u8 active_work_scale; + __u8 rsvd23[9]; +}; + +enum { + NVME_PS_FLAGS_MAX_POWER_SCALE = 1 << 0, + NVME_PS_FLAGS_NON_OP_STATE = 1 << 1, +}; + +struct nvme_id_ctrl { + __le16 vid; + __le16 ssvid; + char sn[20]; + char mn[40]; + char fr[8]; + __u8 rab; + __u8 ieee[3]; + __u8 mic; + __u8 mdts; + __le16 cntlid; + __le32 ver; + __u8 rsvd84[172]; + __le16 oacs; + __u8 acl; + __u8 aerl; + __u8 frmw; + __u8 lpa; + __u8 elpe; + __u8 npss; + __u8 avscc; + __u8 apsta; + __le16 wctemp; + __le16 cctemp; + __u8 rsvd270[242]; + __u8 sqes; + __u8 cqes; + __u8 rsvd514[2]; + __le32 nn; + __le16 oncs; + __le16 fuses; + __u8 fna; + __u8 vwc; + __le16 awun; + __le16 awupf; + __u8 nvscc; + __u8 rsvd531; + __le16 acwu; + __u8 rsvd534[2]; + __le32 sgls; + __u8 rsvd540[1508]; + struct nvme_id_power_state psd[32]; + __u8 vs[1024]; +}; + +enum nvme_admin_opcode { + nvme_admin_delete_sq = 0x00, + nvme_admin_create_sq = 0x01, + nvme_admin_get_log_page = 0x02, + nvme_admin_delete_cq = 0x04, + nvme_admin_create_cq = 0x05, + nvme_admin_identify = 0x06, + nvme_admin_abort_cmd = 0x08, + nvme_admin_set_features = 0x09, + nvme_admin_get_features = 0x0a, + nvme_admin_async_event = 0x0c, + nvme_admin_activate_fw = 0x10, + nvme_admin_download_fw = 0x11, + nvme_admin_format_nvm = 0x80, + nvme_admin_security_send = 0x81, + nvme_admin_security_recv = 0x82, +}; diff --git a/sys-block/sedutil/metadata.xml b/sys-block/sedutil/metadata.xml new file mode 100644 index 000000000000..d42fdfaaa958 --- /dev/null +++ b/sys-block/sedutil/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer type="project"> + <email>base-system@gentoo.org</email> +</maintainer> +<upstream> + <remote-id type="github">Drive-Trust-Alliance/sedutil</remote-id> +</upstream> +</pkgmetadata> diff --git a/sys-block/sedutil/sedutil-1.12.ebuild b/sys-block/sedutil/sedutil-1.12.ebuild new file mode 100644 index 000000000000..7e65008ea2d0 --- /dev/null +++ b/sys-block/sedutil/sedutil-1.12.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +inherit toolchain-funcs + +DESCRIPTION="The Drive Trust Alliance Self Encrypting Drive Utility" +HOMEPAGE="https://github.com/Drive-Trust-Alliance/sedutil" +SRC_URI="https://github.com/Drive-Trust-Alliance/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +src_prepare() { + # https://github.com/Drive-Trust-Alliance/sedutil/pull/49 + find -name '*.mk' -exec sed -E -i 's: -(Werror|g|O[0-9]?) : :g' {} + || die + mkdir linux/linux || die + cp "${FILESDIR}"/nvme.h linux/linux/ || die +} + +src_configure() { + case $(tc-arch) in + x86) sedutil_arch="Release_i686" ;; + amd64) sedutil_arch="Release_x86_64" ;; + *) die "unsupported architecture" ;; + esac +} + +src_compile() { + emake \ + -C "linux/CLI" \ + V=1 \ + CONF="${sedutil_arch}" \ + CC="$(tc-getCC)" \ + CXX="$(tc-getCXX)" \ + CFLAGS="${CFLAGS}" \ + CXXFLAGS="${CXXFLAGS}" +} + +src_install() { + dobin "linux/CLI/dist/${sedutil_arch}/GNU-Linux/sedutil-cli" + dodoc README.md +} |