Hi Gary, On Wed, Aug 18, 2010 at 05:54:43AM -0600, Gary Thomas wrote: > On 08/18/2010 12:54 AM, Stuart Longland wrote: > > Hi, > > > > Does anyone happen to know what CYGACC_CALL_IF_RESET _actually_ does? > > Please don't say "reset the device", because in my case, it doesn't... > > and I'm looking to find out why. > Look at .../packages/hal/arm/mdbmx1/var/current/include/hal_var_ints.h > > #define HAL_PLATFORM_RESET() \ > CYG_MACRO_START \ > ((void(*)(void))0)(); /* hang here forever if reset fails */ \ > CYG_MACRO_END > > This says that to reset the board, simply jump to location 0, which may or > may not really do what you want. You'll have to figure out what magic can > actually reset the board. > > Note: the code for this platform is not in the public repository, so you > really should ask whomever delivered it to you for help as the eCos community > in general will have no clue. I just happen to also have access to it.
Much appreciated. I found the bit of code in question for the i.MX27 (it does something with the watchdog to reset the device). What I'm not sure of is what happens in CYGACC_CALL_IF_RESET? It seems that this function gets called, and after a number of unknown steps, it eventually calls HAL_PLATFORM_RESET, which does the actual reset of the device. I'm suspicious that it's one of these intermediate steps that's causing problems. Is there any documentation on what happens in between? Regards, -- Stuart Longland (aka Redhatter, VK4MSL) .'''. Gentoo Linux/MIPS Cobalt and Docs Developer '.'` : . . . . . . . . . . . . . . . . . . . . . . .'.' http://dev.gentoo.org/~redhatter :.' I haven't lost my mind... ...it's backed up on a tape somewhere. -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss