1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun #ifndef _NET_FIREWIRE_H 3*4882a593Smuzhiyun #define _NET_FIREWIRE_H 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun /* Pseudo L2 address */ 6*4882a593Smuzhiyun #define FWNET_ALEN 16 7*4882a593Smuzhiyun union fwnet_hwaddr { 8*4882a593Smuzhiyun u8 u[FWNET_ALEN]; 9*4882a593Smuzhiyun /* "Hardware address" defined in RFC2734/RF3146 */ 10*4882a593Smuzhiyun struct { 11*4882a593Smuzhiyun __be64 uniq_id; /* EUI-64 */ 12*4882a593Smuzhiyun u8 max_rec; /* max packet size */ 13*4882a593Smuzhiyun u8 sspd; /* max speed */ 14*4882a593Smuzhiyun __be16 fifo_hi; /* hi 16bits of FIFO addr */ 15*4882a593Smuzhiyun __be32 fifo_lo; /* lo 32bits of FIFO addr */ 16*4882a593Smuzhiyun } __packed uc; 17*4882a593Smuzhiyun }; 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun /* Pseudo L2 Header */ 20*4882a593Smuzhiyun #define FWNET_HLEN 18 21*4882a593Smuzhiyun struct fwnet_header { 22*4882a593Smuzhiyun u8 h_dest[FWNET_ALEN]; /* destination address */ 23*4882a593Smuzhiyun __be16 h_proto; /* packet type ID field */ 24*4882a593Smuzhiyun } __packed; 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun #endif 27