This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Need uncached memory for USB - Redboot IXP435
- From: mukund jampala <mukund dot redboot at gmail dot com>
- To: ecos-discuss at ecos dot sourceware dot org
- Date: Sat, 11 Jul 2009 00:29:22 -0700
- Subject: [ECOS] Need uncached memory for USB - Redboot IXP435
Hi Guys,
I am having problems finding the uncached buffers on Redboot on IXP435.
I need these buffers to setup HW descriptors for USB EHCI controller.
I found no means of getting an uncached buffer. Let me know if there is one?
So, I resolved to start using the flush/invalidate MACROS.
HAL_DCACHE_FLUSH / HAL_DCACHE_INVALIDATE.
But it does not work some how? Strangely, it does not flush the
buffers completely.
And the controller gets confused.
The same code works perfectly if I disable the CACHING by placing the
following code in hal_hardware_init(void).
file: "hal/arm/xscale/ixp425/current/src/ixp425_misc.c".
HAL_DISABLE_INTERRUPTS(oldints);
HAL_DCACHE_SYNC();
// HAL_ICACHE_DISABLE();
HAL_DCACHE_DISABLE();
HAL_DCACHE_SYNC();
// HAL_ICACHE_INVALIDATE_ALL();
HAL_DCACHE_INVALIDATE_ALL();
HAL_RESTORE_INTERRUPTS(oldints);
I have developed a complete USB EHCI Host stack /drivers for Redboot.
I am this close to completion and I am struck here.
Please help reslove this issue. Any clues would help.
- Mukund Jampala
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss