Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Feb 2016 13:41:21 +0900 (JST)
From:      Mori Hiroki <yamori813@yahoo.co.jp>
To:        "freebsd-mips@freebsd.org" <freebsd-mips@freebsd.org>
Subject:   about if_arge.c
Message-ID:  <316967.63047.qm@web101710.mail.ssk.yahoo.co.jp>

next in thread | raw e-mail | index | archive | help
I make AR2315 ethercode. I refer=A0if_arge.c and I have idea.=0A=0ACurrent =
code is here.=0A=0A=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0=A0if (sc->arge_hw_flags =
& ARGE_HW_FLG_RX_DESC_ALIGN_4BYTE)=0A=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 arge_fixup_rx(m);=0A=0A=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 m->m_pkt=
hdr.rcvif =3D ifp;=0A=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 /* Skip 4 bytes of CRC=
 */=0A=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 m->m_pkthdr.len =3D m->m_len =3D pack=
et_len - ETHER_CRC_LEN;=0A=0A=0AI think better set m_len before arge_fixup_=
rx().=A0=0AThis is only copy packet length at arge_fixup_rx().=0A=0A=A0 =A0=
 =A0 =A0 =A0 =A0 =A0 =A0 /* Skip 4 bytes of CRC */=0A=A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0=A0m->m_pkthdr.len =3D m->m_len =3D packet_len - ETHER_CRC_LEN; =
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 if (sc->arg=
e_hw_flags & ARGE_HW_FLG_RX_DESC_ALIGN_4BYTE)=0A=A0 =A0 =A0 =A0 =A0 =A0 =A0=
 =A0 =A0 =A0 =A0 =A0=A0arge_fixup_rx(m);=0A=0A=A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0=A0m->m_pkthdr.rcvif =3D ifp;=0A=0AAnd=0A=0A=A0 =A0 =A0 =A0=A0if (sc->ar=
ge_hw_flags & ARGE_HW_FLG_RX_DESC_ALIGN_4BYTE)=0A=A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 m_adj(m, sizeof(uint64_t));=0A=0AI think not need uint64_t(8byte) o=
nly tcp header 2 byte(ETHER_ALIGN)=A0shift.=A0=0A=0A=A0 =A0 =A0 =A0 if (sc-=
>arge_hw_flags & ARGE_HW_FLG_RX_DESC_ALIGN_4BYTE)=0A=A0 =A0 =A0 =A0 =A0 =A0=
 =A0 =A0=A0m_adj(m, sizeof(uint32_t));=0A=0ARegards.=0A=0AHiroki Mori=0A



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?316967.63047.qm>