Can't create a region?
Phil Torre
ptorre at zetron.com
Sat Apr 14 02:51:07 UTC 2001
In my RTEMS 4.5.0 BSP for our MPC860 board, I want to create a non-
cached memory region that I can allocate CPM buffers out of.
(Right now they're malloc'd off of the heap, so it screws up when
the D-cache is on.) So at the bottom of bsp_start(), right after
cache_mmu_init() has set up the page tables containing my cache-
inhibited area, I make a call to rtems_region_create(). This call
fails with RTEMS_TOO_MANY, because the _Region_Information struct
hasn't been initialized yet. (I did include MANAGERS=region in my
application Makefile, and CONFIGURE_MAXIMUM_REGIONS 1 in my init.c.)
Is _Region_Information not initialized yet because I'm doing this
in the wrong place, or have I missed something else? I've looked
over the code and I can't find the place where the struct gets
filled in with anything.
Also, regarding non-cached buffers for the 860 CPM: Am I solving
a problem that's already been fixed by other means?
Many thanks for any advise...
--
=====================================================================
Phil Torre phone: 425-820-6363 x234
Design Engineer email: ptorre at zetron.com
Switching Systems Group fax: 425-820-7031
Zetron, Inc. web: http://www.zetron.com
More information about the users
mailing list