Re: Proposal for new generic device API: dma_get_required_mask()

Krzysztof Halasa
2004-06-20T02:01:43Z

Russell King <rmk+lkml@arm.linux.org.uk> writes:

> The SA1111 device and associated sub-device drivers. Basically, Intel
> has a "no fix" errata where one of the address bits gets incorrectly
> routed to the SDRAM "auto precharge" address bit. This address bit
> must be zero, otherwise the SDRAM accesses are messed up.

Well, I knew about it, but I thought it's a "host" problem and device
drivers don't have to care.

> You may have a 32MB SDRAM but need to ensure that
> physical bit 20 is always zero - IOW you can only DMA from even MB
> addresses and not odd MB addresses.

I understand that currently the bit in question is cleared from the
masks, and that the ARM/SA1111 dma/pci alloc/map functions know how
to handle such mask?

Wouldn't it be better to not touch the masks (which are device
capabilities rather than platform limitations) and let alloc/map
functions always use the correct half of RAM?

Just asking, I've never worked with such thing.
--
Krzysztof Halasa, B*FH