altos: Make ao_xmem funcs require __xdata void * instead of casting
authorKeith Packard <keithp@keithp.com>
Sat, 12 Nov 2011 06:30:17 +0000 (22:30 -0800)
committerKeith Packard <keithp@keithp.com>
Sat, 12 Nov 2011 06:30:17 +0000 (22:30 -0800)
commitb132eefc5f63412bb4a98a4bb72b9055e40d5d42
tree53f0d529cf30b21649b69cee3e5f8966adf86642
parent7ecde50fbebe68a2e2200a2f8d081fd37074f840
altos: Make ao_xmem funcs require __xdata void * instead of casting

Having an explicit cast in the ao_xmem wrapper macros caused the
compiler to generate garbage values for pdata addresses, making the
upper byte 0x00 instead of the required 0xf0. Removing the
casts from the ao_xmem macros exposed this problem, so a new
PDATA_TO_XDATA macros was added, along with a CODE_TO_XDATA macro
which serve to cast pointers, with suitable address modifications, so
that things work again.

Signed-off-by: Keith Packard <keithp@keithp.com>
src/cc1111/ao_arch.h
src/cc1111/ao_string.c
src/core/ao.h
src/core/ao_config.c
src/core/ao_host.h
src/core/ao_telemetry.c
src/drivers/ao_gps_skytraq.c