summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsbruno <sbruno@FreeBSD.org>2009-02-13 17:45:09 +0000
committersbruno <sbruno@FreeBSD.org>2009-02-13 17:45:09 +0000
commit482df37a9ec093145af5d2f758f6e565fba7980d (patch)
treebd58e6399f3b931314d5ae459f4547d6c87f5a7e
parent8c071e7985f426b3cc07220320d3cd5795745afa (diff)
downloadFreeBSD-src-482df37a9ec093145af5d2f758f6e565fba7980d.zip
FreeBSD-src-482df37a9ec093145af5d2f758f6e565fba7980d.tar.gz
Update the Self ID structure to conform to 1394a-2000.
Delete the unused defines. Reviewed by: scottl
-rw-r--r--sys/dev/firewire/firewire.h68
1 files changed, 50 insertions, 18 deletions
diff --git a/sys/dev/firewire/firewire.h b/sys/dev/firewire/firewire.h
index 619f500..33fe25d 100644
--- a/sys/dev/firewire/firewire.h
+++ b/sys/dev/firewire/firewire.h
@@ -284,6 +284,10 @@ struct fw_devlstreq {
struct fw_devinfo dev[FW_MAX_DEVLST];
};
+/*
+ * Defined in IEEE 1394a-2000
+ * 4.3.4.1
+ */
#define FW_SELF_ID_PORT_CONNECTED_TO_CHILD 3
#define FW_SELF_ID_PORT_CONNECTED_TO_PARENT 2
#define FW_SELF_ID_PORT_NOT_CONNECTED 1
@@ -312,18 +316,32 @@ union fw_self_id {
phy_id:6,
sequel:1,
sequence_num:3,
- :2,
- porta:2,
- portb:2,
- portc:2,
- portd:2,
- porte:2,
- portf:2,
- portg:2,
- porth:2,
- :1,
+ reserved2:2,
+ port3:2,
+ port4:2,
+ port5:2,
+ port6:2,
+ port7:2,
+ port8:2,
+ port9:2,
+ port10:2,
+ reserved1:1,
more_packets:1;
} p1;
+ struct {
+ uint32_t
+ id:2,
+ phy_id:6,
+ sequel:1,
+ sequence_num:3,
+ :2,
+ port11:2,
+ port12:2,
+ port13:2,
+ port14:2,
+ port15:2,
+ :8;
+ } p2;
};
#else
union fw_self_id {
@@ -346,20 +364,34 @@ union fw_self_id {
struct {
uint32_t more_packets:1,
reserved1:1,
- porth:2,
- portg:2,
- portf:2,
- porte:2,
- portd:2,
- portc:2,
- portb:2,
- porta:2,
+ port10:2,
+ port9:2,
+ port8:2,
+ port7:2,
+ port6:2,
+ port5:2,
+ port4:2,
+ port3:2,
reserved2:2,
sequence_num:3,
sequel:1,
phy_id:6,
id:2;
} p1;
+ struct {
+ uint32_t
+ reserved3:8,
+ port15:2,
+ port14:2,
+ port13:2,
+ port12:2,
+ port11:2,
+ reserved4:2,
+ sequence_num:3,
+ sequel:1,
+ phy_id:6,
+ id:2;
+ } p2;
};
#endif
OpenPOWER on IntegriCloud