Skip to content

Commit 62f2316

Browse files
committed
nvme: mi: Convert ControllerInformationResponse to deku bits
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
1 parent 2fb98bb commit 62f2316

2 files changed

Lines changed: 12 additions & 4 deletions

File tree

src/nvme/mi.rs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -815,8 +815,14 @@ impl Encode<24> for TwoWirePortDataResponse {}
815815
struct ControllerInformationResponse {
816816
#[deku(pad_bytes_after = "4")]
817817
portid: u8,
818-
prii: u8,
819-
pri: u16,
818+
#[deku(bits = "1", pad_bits_before = "7")]
819+
prii_pcieriv: bool,
820+
#[deku(bits = "8")]
821+
pri_pcibn: u16,
822+
#[deku(bits = "5")]
823+
pri_pcidn: u16,
824+
#[deku(bits = "3")]
825+
pri_pcifn: u16,
820826
pcivid: u16,
821827
pcidid: u16,
822828
pcisvid: u16,

src/nvme/mi/dev.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -797,8 +797,10 @@ impl RequestHandler for NvmeMiDataStructureRequest {
797797

798798
let ci = ControllerInformationResponse {
799799
portid: ctlr.port.0,
800-
prii: 1,
801-
pri: pprt.b << 8 | pprt.d << 4 | pprt.f,
800+
prii_pcieriv: true,
801+
pri_pcibn: pprt.b,
802+
pri_pcidn: pprt.d,
803+
pri_pcifn: pprt.f,
802804
pcivid: subsys.info.pci_vid,
803805
pcidid: subsys.info.pci_did,
804806
pcisvid: subsys.info.pci_svid,

0 commit comments

Comments
 (0)