[rtems-libbsd commit] imx/imx_gpio.c: Port to RTEMS

Sebastian Huber sebh at rtems.org
Tue Sep 25 08:02:46 UTC 2018


Module:    rtems-libbsd
Branch:    master
Commit:    06dd40e5447933d2f7a6f744e08661c91146216d
Changeset: http://git.rtems.org/rtems-libbsd/commit/?id=06dd40e5447933d2f7a6f744e08661c91146216d

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Mon Sep 24 13:45:52 2018 +0200

imx/imx_gpio.c: Port to RTEMS

Update #3525.

---

 freebsd/sys/arm/freescale/imx/imx_gpio.c | 5 ++++-
 libbsd.py                                | 9 +++++----
 rtemsbsd/include/bsp/nexus-devices.h     | 2 ++
 3 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/freebsd/sys/arm/freescale/imx/imx_gpio.c b/freebsd/sys/arm/freescale/imx/imx_gpio.c
index 7b9d300..983e4d7 100644
--- a/freebsd/sys/arm/freescale/imx/imx_gpio.c
+++ b/freebsd/sys/arm/freescale/imx/imx_gpio.c
@@ -124,6 +124,9 @@ struct imx51_gpio_softc {
 };
 
 static struct ofw_compat_data compat_data[] = {
+#ifdef __rtems__
+	{"fsl,imx7d-gpio",  1},
+#endif /* __rtems__ */
 	{"fsl,imx6q-gpio",  1},
 	{"fsl,imx53-gpio",  1},
 	{"fsl,imx51-gpio",  1},
@@ -508,7 +511,7 @@ gpio_pic_register_isrcs(struct imx51_gpio_softc *sc)
  */
 static void
 imx51_gpio_pin_configure(struct imx51_gpio_softc *sc, struct gpio_pin *pin,
-    unsigned int flags)
+    uint32_t flags)
 {
 	u_int newflags, pad;
 
diff --git a/libbsd.py b/libbsd.py
index a066b37..c814d36 100644
--- a/libbsd.py
+++ b/libbsd.py
@@ -719,12 +719,13 @@ class mmc_ti(builder.Module):
         )
         self.addKernelSpaceSourceFiles(
             [
-                'sys/dev/sdhci/sdhci.c',
-                'sys/arm/ti/ti_sdhci.c',
+                'sys/arm/freescale/imx/imx_gpio.c',
                 'sys/arm/ti/ti_hwmods.c',
-                'sys/dev/sdhci/sdhci_fdt_gpio.c',
-                'sys/dev/gpio/ofw_gpiobus.c',
+                'sys/arm/ti/ti_sdhci.c',
                 'sys/dev/gpio/gpiobus.c',
+                'sys/dev/gpio/ofw_gpiobus.c',
+                'sys/dev/sdhci/sdhci.c',
+                'sys/dev/sdhci/sdhci_fdt_gpio.c',
             ],
             mm.generator['source']()
         )
diff --git a/rtemsbsd/include/bsp/nexus-devices.h b/rtemsbsd/include/bsp/nexus-devices.h
index 4daf1a1..714c74a 100644
--- a/rtemsbsd/include/bsp/nexus-devices.h
+++ b/rtemsbsd/include/bsp/nexus-devices.h
@@ -127,6 +127,8 @@ SYSINIT_DRIVER_REFERENCE(simplebus, ofwbus);
 SYSINIT_DRIVER_REFERENCE(ffec, simplebus);
 SYSINIT_DRIVER_REFERENCE(ukphy, miibus);
 
+SYSINIT_DRIVER_REFERENCE(imx51_gpio, simplebus);
+
 #elif defined(LIBBSP_ARM_LPC24XX_BSP_H)
 
 RTEMS_BSD_DEFINE_NEXUS_DEVICE(ohci, 0, 0, NULL);




More information about the vc mailing list