[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [lwip-users] Ethernet Driver development guidelines.
From: |
Jonathan Larmour |
Subject: |
Re: [lwip-users] Ethernet Driver development guidelines. |
Date: |
Wed, 19 Mar 2008 11:00:08 +0000 |
User-agent: |
Mozilla Thunderbird 1.0.8-1.1.fc3.4.legacy (X11/20060515) |
Piero 74 wrote:
Bill,
i could have some problems:
- my emac dma works only in a dedicated 16kB ram, so, pbufs poll must be
allocated in this memory area.
I should want only PBUF_POOL allocated in this memory, but PBUF_POOL is
a part of memp vars (i.e. memp_memory, memp_sizes....), so i cannot
split pbufs in different memory area.
i'm thinking that something is possible using custom pools... but i have
no idea how i can use them to solve my problem.
At present, lwIP assumes that the struct pbuf for the pool pbuf data comes
immediately before it in memory. Because of problems like yours with a
limited DMA window, this is something that will have to be addressed at
some point, but has not been yet - it's waiting for after 1.3.0.
If you can still write to and address that dedicated memory from the
processor, and don't mind wasting 16 bytes per pbuf, then it's still
possible with some more limited changes to lwIP by maintaining that struct
pbuf before the pool buffer, all still within your dedicated 16kb. I
believe I described in the past what I did here, and sent mails to
lwip-users about it on 2007-09-19 (subject: Zero Copy Ethernet interface)
and 2007-12-12 (subject: Transferring large data fast and pointing pbufs
directly to Ethernet receive buffers) so you can have a look at the list
archives.
Jifl
--
eCosCentric Limited http://www.eCosCentric.com/ The eCos experts
Barnwell House, Barnwell Drive, Cambridge, UK. Tel: +44 1223 245571
Registered in England and Wales: Reg No 4422071.
------["The best things in life aren't things."]------ Opinions==mine