[PATCH net-next v10 03/11] net: ti: prueth: Adds PRUETH HW and SW configuration
Parvathi Pudi
parvathi at couthit.com
Fri Jul 11 05:28:46 PDT 2025
Hi,
> On Wed, 2 Jul 2025 19:36:25 +0530 Parvathi Pudi wrote:
>> diff --git a/drivers/net/ethernet/ti/icssm/icssm_prueth.c
>> b/drivers/net/ethernet/ti/icssm/icssm_prueth.c
>> index aed5cdc402b5..f52858da89d4 100644
>> --- a/drivers/net/ethernet/ti/icssm/icssm_prueth.c
>> +++ b/drivers/net/ethernet/ti/icssm/icssm_prueth.c
>> + txcfg = PRUSS_MII_RT_TXCFG_TX_ENABLE |
>> + PRUSS_MII_RT_TXCFG_TX_AUTO_PREAMBLE |
>> + PRUSS_MII_RT_TXCFG_TX_32_MODE_EN |
>> + (TX_START_DELAY << PRUSS_MII_RT_TXCFG_TX_START_DELAY_SHIFT) |
>> + (TX_CLK_DELAY_100M << PRUSS_MII_RT_TXCFG_TX_CLK_DELAY_SHIFT);
>
>> + /* Min frame length should be set to 64 to allow receive of standard
>> + * Ethernet frames such as PTP, LLDP that will not have the tag/rct.
>> + * Actual size written to register is size - 1 per TRM. This also
>> + * includes CRC/FCS.
>> + */
>> + txcfg = (((PRUSS_MII_RT_RX_FRMS_MIN_FRM - 1) <<
>> + PRUSS_MII_RT_RX_FRMS_MIN_FRM_SHIFT) &
>> + PRUSS_MII_RT_RX_FRMS_MIN_FRM_MASK);
>
> Please use FIELD_PREP() instead of defining separate _MASK and _SHIFT
> values.
>
Sure, we will use FIELD_PREP() to align with kernel bit-field handling.
>> + /* For EMAC, set Max frame size to 1528 i.e size with VLAN.
>> + * Actual size written to register is size - 1 as per TRM.
>> + * Since driver support run time change of protocol, driver
>> + * must overwrite the values based on Ethernet type.
>> + */
>> + txcfg |= (((PRUSS_MII_RT_RX_FRMS_MAX_SUPPORT_EMAC - 1) <<
>> + PRUSS_MII_RT_RX_FRMS_MAX_FRM_SHIFT) &
>> + PRUSS_MII_RT_RX_FRMS_MAX_FRM_MASK);
>
>> +struct prueth_queue_desc {
>> + u16 rd_ptr;
>> + u16 wr_ptr;
>> + u8 busy_s;
>> + u8 status;
>> + u8 max_fill_level;
>> + u8 overflow_cnt;
>> +} __packed;
>
> Please don't use __packed if the struct will be packed anyway based on
> C packing rules.
We will address this in the next version.
Thanks and Regards,
Parvathi.
More information about the linux-arm-kernel
mailing list