[PATCH 2/2] GPIO Driver

Ketul Shah ketulshah1993 at gmail.com
Tue Jun 30 09:47:18 UTC 2015


diff --git a/c/src/lib/libbsp/arm/beagle/include/beagleboneblack.h b/c/src/lib/libbsp/arm/beagle/include/beagleboneblack.h
new file mode 100644
index 0000000..1265828
--- /dev/null
+++ b/c/src/lib/libbsp/arm/beagle/include/beagleboneblack.h
@@ -0,0 +1,63 @@
+/**
+ * @file
+ *
+ * @ingroup arm_beagle
+ *
+ * @brief BeagleBone Black BSP definitions.
+ */
+
+/**
+ * Copyright (c) 2015 Ketul Shah <ketulshah1993 at gmail.com>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.org/license/LICENSE.
+ */
+
+#ifndef LIBBSP_ARM_BEAGLE_BEAGLEBONEBLACK_H
+#define LIBBSP_ARM_BEAGLE_BEAGLEBONEBLACK_H
+
+/* BSP related specifications */
+#define GPIO_PIN_COUNT 128
+#define GPIO_PINS_PER_BANK 32 
+
+/* USER LEDs of BeagleBone Black */
+#define BBB_LED_USR0  53 /* USR LED0 */
+#define BBB_LED_USR1  54 /* USR LED1 */
+#define BBB_LED_USR2  55 /* USR LED2 */
+#define BBB_LED_USR3  56 /* USR LED3 */
+
+/* Header P8 of BeagleBone Black */
+#define BBB_P8_7      66 /* GPIO2_2 */
+#define BBB_P8_8      67 /* GPIO2_3 */
+#define BBB_P8_9      69 /* GPIO2_5 */
+#define BBB_P8_10     68 /* GPIO2_4 */
+#define BBB_P8_11     45 /* GPIO1_13 */
+#define BBB_P8_12     44 /* GPIO1_12 */
+#define BBB_P8_13     23 /* GPIO0_23 */
+#define BBB_P8_14     26 /* GPIO0_26 */
+#define BBB_P8_15     47 /* GPIO1_15 */
+#define BBB_P8_16     46 /* GPIO1_14 */
+#define BBB_P8_17     27 /* GPIO0_27 */
+#define BBB_P8_18     65 /* GPIO2_1 */
+#define BBB_P8_19     22 /* GPIO0_22 */
+#define BBB_P8_26     61 /* GPIO1_29 */
+	
+/* Header P9 of BeagleBone Black */
+#define BBB_P9_11     30 /* GPIO0_30 */
+#define BBB_P9_12     60 /* GPIO1_28 */
+#define BBB_P9_13     31 /* GPIO0_31 */
+#define BBB_P9_14     50 /* GPIO1_18 */
+#define BBB_P9_15     48 /* GPIO1_16 */
+#define BBB_P9_16     51 /* GPIO1_19 */
+#define BBB_P9_17      5 /* GPIO0_5 */
+#define BBB_P9_18      4 /* GPIO0_4 */
+#define BBB_P9_23     49 /* GPIO1_17 */
+#define BBB_P9_24     15 /* GPIO0_15 */
+#define BBB_P9_26     14 /* GPIO1_14 */
+#define BBB_P9_27     115/* GPIO3_19 */
+#define BBB_P9_30     112/* GPIO3_16 */
+#define BBB_P9_41     20 /* GPIO0_20 */
+#define BBB_P9_42      7 /* GPIO0_7 */
+
+#endif /* LIBBSP_ARM_BEAGLE_GPIO_H */
\ No newline at end of file
diff --git a/c/src/lib/libcpu/arm/shared/include/am335x.h b/c/src/lib/libcpu/arm/shared/include/am335x.h
index 37c5eeb..ebaa703 100644
--- a/c/src/lib/libcpu/arm/shared/include/am335x.h
+++ b/c/src/lib/libcpu/arm/shared/include/am335x.h
@@ -300,3 +300,23 @@
 
 #define AM335X_RTC_KICK0_KEY    0x83E70B13
 #define AM335X_RTC_KICK1_KEY    0x95A4F1E0
+
+    /*Gpio memory registers am335x*/
+#define AM335X_GPIO0                  0x44E07000
+    /* GPIO Bank 0 base Register */
+#define AM335X_GPIO1                  0x4804C000
+    /* GPIO Bank 1 base Register */
+#define AM335X_GPIO2                  0x481AC000
+    /* GPIO Bank 2 base Register */
+#define AM335X_GPIO3                  0x481AE000
+    /* GPIO Bank 3 base Register */
+#define AM335X_GPIO_OE                0x134
+    /* GPIO Output Enable Register */
+#define AM335X_GPIO_DATAOUT           0x13C
+    /* GPIO Output pin set Register */
+#define AM335X_GPIO_DATAIN            0x138
+    /* GPIO Read Data Register */
+#define AM335X_GPIO_CLEARDATAOUT      0x190
+    /* GPIO Output Clear Register */
+#define AM335X_GPIO_SETDATAOUT        0x194
+    /* GPIO Output Set Register */
\ No newline at end of file


More information about the devel mailing list