diff options
author | Solomon Peachy <pizza@shaftnet.org> | 2020-10-13 15:47:26 -0400 |
---|---|---|
committer | Solomon Peachy <pizza@shaftnet.org> | 2020-10-13 15:48:31 -0400 |
commit | 431caa4311c13a0937ae60ac225e780c0a0670b9 (patch) | |
tree | 319db80e0ce77663b70d04391ee81ccae2012c0b /firmware/target/arm/imx31 | |
parent | f8bd54d5759c78d0777f25cad287a6dbeb0b45ea (diff) | |
download | rockbox-431caa4311c13a0937ae60ac225e780c0a0670b9.tar.gz rockbox-431caa4311c13a0937ae60ac225e780c0a0670b9.zip |
imx31: Work around an apparently not-quite-kosher abuse of CPP
(we were trying to foward-declare functions from within static
initializer context. GCC no longer accepts this)
Change-Id: I58f316ecc84c8ab45fffc054955727a55714b0a3
Diffstat (limited to 'firmware/target/arm/imx31')
-rw-r--r-- | firmware/target/arm/imx31/gigabeat-s/gpio-target.h | 5 | ||||
-rw-r--r-- | firmware/target/arm/imx31/gigabeat-s/mc13783-target.h | 9 | ||||
-rw-r--r-- | firmware/target/arm/imx31/gpio-imx31.h | 9 |
3 files changed, 19 insertions, 4 deletions
diff --git a/firmware/target/arm/imx31/gigabeat-s/gpio-target.h b/firmware/target/arm/imx31/gigabeat-s/gpio-target.h index 543b25f244..9204e6cd9d 100644 --- a/firmware/target/arm/imx31/gigabeat-s/gpio-target.h +++ b/firmware/target/arm/imx31/gigabeat-s/gpio-target.h @@ -28,6 +28,11 @@ #ifdef DEFINE_GPIO_VECTOR_TABLE +GPIO_EVENT_VECTOR_CB(GPIO1_31); +#if CONFIG_TUNER +GPIO_EVENT_VECTOR_CB(GPIO1_27); +#endif + GPIO_VECTOR_TBL_START() /* mc13783 keeps the PRIINT high (no low pulse) if other unmasked * interrupts become active when clearing them or if a source being diff --git a/firmware/target/arm/imx31/gigabeat-s/mc13783-target.h b/firmware/target/arm/imx31/gigabeat-s/mc13783-target.h index 4bb148e36c..e656e4e08f 100644 --- a/firmware/target/arm/imx31/gigabeat-s/mc13783-target.h +++ b/firmware/target/arm/imx31/gigabeat-s/mc13783-target.h @@ -42,6 +42,15 @@ static struct spi_node mc13783_spi = 0, /* SPI clock - no wait states */ }; +MC13783_EVENT_VECTOR_CB(ADCDONE); +#if CONFIG_RTC +MC13783_EVENT_VECTOR_CB(1HZ); +#endif +MC13783_EVENT_VECTOR_CB(ONOFD1); +MC13783_EVENT_VECTOR_CB(SE1); +MC13783_EVENT_VECTOR_CB(USB); +MC13783_EVENT_VECTOR_CB(ONOFD2); + /* Gigabeat S definitions for static MC13783 event registration */ MC13783_EVENT_VECTOR_TBL_START() /* ADC conversion complete */ diff --git a/firmware/target/arm/imx31/gpio-imx31.h b/firmware/target/arm/imx31/gpio-imx31.h index 86ca964f94..e02896f4c3 100644 --- a/firmware/target/arm/imx31/gpio-imx31.h +++ b/firmware/target/arm/imx31/gpio-imx31.h @@ -166,11 +166,12 @@ struct gpio_event { \ static const struct gpio_event __tbl[] = { +#define GPIO_EVENT_VECTOR_CB(__name) void __name##_EVENT_CB(void) + #define GPIO_EVENT_VECTOR(__name, __sense) \ - { .id = (__name##_ID), \ - .sense = (__sense), \ - .callback = ({ void __name##_EVENT_CB(void); \ - __name##_EVENT_CB; }) }, + { .id = (__name##_ID), \ + .sense = (__sense), \ + .callback = (__name##_EVENT_CB) }, #define GPIO_VECTOR_TBL_END() \ }; \ |