From: Abraham vd M. <ab...@2d...> - 2002-04-25 10:33:41
|
Hi! I'm beating my head against a stone here :P If I set the irq exception handler to any address in a INIT_LEVEL_DRIVER_SELECTION hook and I check that address later on in a INIT_LEVEL_OTHER_STUFF hook, the address differs, e.g. with static void frodo_set_irq() { u32 *irq_vector =3D (u32 *) 0x00000018; *irq_vector =3D 0xdeadbeaf; =20 } __initlist(frodo_set_irq,INIT_LEVEL_DRIVER_SELECTION); static void frodo_debug_irq() { u32 *irq_vector =3D (u32 *) 0x00000018; printf ("*irq_vector =3D=3D 0x%.8x\n",*irq_vector); =20 } __initlist(frodo_debug_irq,INIT_LEVEL_OTHER_STUFF); I get *irq_vector =3D=3D 0xea0000c1 when booting blob. I can't see anything in the second stage boot loader that modifies this address, so what is happening here? --=20 Regards Abraham "Kill the Wabbit, Kill the Wabbit, Kill the Wabbit!" -- Looney Tunes, "What's Opera Doc?" (1957, Chuck Jones) __________________________________________________________ Abraham vd Merwe - 2d3D, Inc. Device Driver Development, Outsourcing, Embedded Systems Cell: +27 82 565 4451 Snailmail: Tel: +27 21 761 7549 Block C, Aintree Park Fax: +27 21 761 7648 Doncaster Road Email: ab...@2d... Kenilworth, 7700 Http: http://www.2d3d.com South Africa |