[PATCH net-next v12 3/5] net: ti: prueth: Adds PRUETH HW and SW configuration

Parvathi Pudi parvathi at couthit.com
Thu Jul 31 07:11:09 PDT 2025


Hi,

>> +/* NRT Buffer descriptor definition
>> + * Each buffer descriptor points to a max 32 byte block and has 32 bit in size
>> + * to have atomic operation.
>> + * PRU can address bytewise into memory.
>> + * Definition of 32 bit descriptor is as follows
>> + *
>> + * Bits		Name			Meaning
>> + *
>> =============================================================================
>> + * 0..7		Index		points to index in buffer queue, max 256 x 32
>> + *				byte blocks can be addressed
>> + * 6		LookupSuccess	For switch, FDB lookup was successful (source
>> + *				MAC address found in FDB).
>> + *				For RED, NodeTable lookup was successful.
>> + * 7		Flood		Packet should be flooded (destination MAC
>> + *				address found in FDB). For switch only.
>> + * 8..12	Block_length	number of valid bytes in this specific block.
>> + *				Will be <=32 bytes on last block of packet
>> + * 13		More		"More" bit indicating that there are more blocks
>> + * 14		Shadow		indicates that "index" is pointing into shadow
>> + *				buffer
>> + * 15		TimeStamp	indicates that this packet has time stamp in
>> + *				separate buffer - only needed of PTCP runs on
> 
> only needed if PTCP runs on host
> 

Sure, We will address this.

>> + *				host
>> + * 16..17	Port		different meaning for ingress and egress,
>> + *				Ingress: Port = 0 indicates phy port 1 and
>> + *				Port = 1 indicates phy port 2.
>> + *				Egress: 0 sends on phy port 1 and 1 sends on
>> + *				phy port 2. Port = 2 goes over MAC table
>> + *				look-up
>> + * 18..28	Length		11 bit of total packet length which is put into
>> + *				first BD only so that host access only one BD
>> + * 29		VlanTag		indicates that packet has Length/Type field of
>> + *				0x08100 with VLAN tag in following byte
>> + * 30		Broadcast	indicates that packet goes out on both physical
>> + *				ports,	there will be two bd but only one buffer
>> + * 31		Error		indicates there was an error in the packet
>> + */
>> +#define PRUETH_BD_START_FLAG_MASK	BIT(0)
>> +#define PRUETH_BD_START_FLAG_SHIFT	0
>> +
>> +#define PRUETH_BD_HSR_FRAME_MASK	BIT(4)
>> +#define PRUETH_BD_HSR_FRAME_SHIFT	4
>> +
>> +#define PRUETH_BD_SUP_HSR_FRAME_MASK	BIT(5)
>> +#define PRUETH_BD_SUP_HSR_FRAME_SHIFT	5
>> +
>> +#define PRUETH_BD_LOOKUP_SUCCESS_MASK	BIT(6)
>> +#define PRUETH_BD_LOOKUP_SUCCESS_SHIFT	6
>> +
>> +#define PRUETH_BD_SW_FLOOD_MASK		BIT(7)
>> +#define PRUETH_BD_SW_FLOOD_SHIFT	7
>> +
>> +#define	PRUETH_BD_SHADOW_MASK		BIT(14)
>> +#define	PRUETH_BD_SHADOW_SHIFT		14
>> +
>> +#define PRUETH_BD_TIMESTAMP_MASK	BIT(15)
>> +#define PRUETH_BD_TIMESTAMP_SHIT	15
> 
> typo PRUETH_BD_TIMESTAMP_SHIT -> PRUETH_BD_TIMESTAMP_SHIFT
> 

Sure, We will address this.


Thanks and Regards,
Parvathi.



More information about the linux-arm-kernel mailing list