[ECOS] bugs in AT91 Ethernet driver

Andrew Lunn andrew@lunn.ch
Sat May 31 12:04:00 GMT 2008


On Sat, May 31, 2008 at 03:49:24PM +0400, I-Yanaslov wrote:
>
>> However, you are wrong about the TX buffers being on the heap. The
>> buffer is inside the at91_eth_priv_t structure. This is allocated at
>> the end of if_at91.c. It will be placed in the data segment.
>
> at91_eth_priv structure is contains only RX buffers, RX buffer 
> descriptors and "TX buffer descriptors". No contains "TX buffers".
>
> at91_eth_send() shows " priv->tbd[priv->curr_tbd_idx].addr = 
> sg_list[i].buf; " - no memory copy, only address assigment.
> But, sg_list[] it is mbuf, dynamically allocated in TCP/IP stack.

Ah, OK. My error. That makes it more messy. 

How big is the SRAM on these ARM9 devices? 32K, 64K? If it is big
enough maybe we can move net_mbufs_area[] into the SRAM. Otherwise a
copy is needed for every packet to be transmitted.

     Andrew

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss



More information about the Ecos-discuss mailing list