drivers: net: Force LAN865x to start received frames at first chunk word
Zephyr's network stack has issues with network IP header split across fragments. To alleviate this problem, the frame would be now aligned to first byte of the chunk. This would ensure that the header is stored at one network buffer fragment (as we explicitly set its size to 64B). Signed-off-by: Lukasz Majewski <lukma@denx.de>
This commit is contained in:
parent
6c8c0f57f9
commit
d378e64508
|
@ -408,7 +408,8 @@ static void lan865x_int_thread(const struct device *dev)
|
|||
oa_tc6_reg_write(tc6, OA_STATUS0, sts);
|
||||
lan865x_default_config(dev, ctx->silicon_rev);
|
||||
oa_tc6_reg_read(tc6, OA_CONFIG0, &val);
|
||||
oa_tc6_reg_write(tc6, OA_CONFIG0, OA_CONFIG0_SYNC | val);
|
||||
val |= OA_CONFIG0_SYNC | OA_CONFIG0_RFA_ZARFE;
|
||||
oa_tc6_reg_write(tc6, OA_CONFIG0, val);
|
||||
lan865x_mac_rxtx_control(dev, LAN865x_MAC_TXRX_ON);
|
||||
|
||||
ctx->reset = true;
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
#define OA_RESET_SWRESET BIT(0)
|
||||
#define OA_CONFIG0 MMS_REG(0x0, 0x004)
|
||||
#define OA_CONFIG0_SYNC BIT(15)
|
||||
#define OA_CONFIG0_RFA_ZARFE BIT(12)
|
||||
#define OA_CONFIG0_PROTE BIT(5)
|
||||
#define OA_STATUS0 MMS_REG(0x0, 0x008)
|
||||
#define OA_STATUS0_RESETC BIT(6)
|
||||
|
|
Loading…
Reference in New Issue