aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSuman Anna <s-anna@ti.com>2018-02-12 20:32:37 -0500
committerTony Lindgren <tony@atomide.com>2018-02-14 13:28:12 -0500
commita0e37da2a542acb6069b9e10d8aba3be4e5204d7 (patch)
tree01032bd8793c186a3adf0b369e79b6e2b14c6239
parentddd6a9d928931f2dfe61029e55faee21f7de2768 (diff)
ARM: OMAP2+: Cleanup omap_gpio_dev_attr usage
The omap_gpio_dev_attr data was used to supply instance-specific data for legacy non-DT devices. The GPIO legacy device support has been cleaned up in commit 14944934f8ac ("ARM: OMAP2+: Remove legacy gpio code") a while ago and this data is therefore no longer needed. So, cleanup the structure and all the associated data in various hwmod data files. Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2430_data.c1
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c13
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_33xx_43xx_common_data.h1
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c9
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_33xx_data.c2
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_3xxx_data.c13
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_43xx_data.c4
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_44xx_data.c13
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_54xx_data.c15
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_7xx_data.c15
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_81xx_data.c8
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_common_data.h1
-rw-r--r--include/linux/platform_data/gpio-omap.h5
13 files changed, 1 insertions, 99 deletions
diff --git a/arch/arm/mach-omap2/omap_hwmod_2430_data.c b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
index 013b26b305d2..1f696bec9962 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2430_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
@@ -134,7 +134,6 @@ static struct omap_hwmod omap2430_gpio5_hwmod = {
134 }, 134 },
135 }, 135 },
136 .class = &omap2xxx_gpio_hwmod_class, 136 .class = &omap2xxx_gpio_hwmod_class,
137 .dev_attr = &omap2xxx_gpio_dev_attr,
138}; 137};
139 138
140/* dma attributes */ 139/* dma attributes */
diff --git a/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c b/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
index 4f0a1d4dd7fa..e1a6ebe3a8ac 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c
@@ -10,9 +10,8 @@
10 */ 10 */
11 11
12#include <linux/types.h> 12#include <linux/types.h>
13
14#include <linux/platform_data/gpio-omap.h>
15#include <linux/omap-dma.h> 13#include <linux/omap-dma.h>
14
16#include <plat/dmtimer.h> 15#include <plat/dmtimer.h>
17#include <linux/platform_data/spi-omap2-mcspi.h> 16#include <linux/platform_data/spi-omap2-mcspi.h>
18 17
@@ -570,12 +569,6 @@ struct omap_hwmod omap2xxx_dss_venc_hwmod = {
570 .flags = HWMOD_NO_IDLEST, 569 .flags = HWMOD_NO_IDLEST,
571}; 570};
572 571
573/* gpio dev_attr */
574struct omap_gpio_dev_attr omap2xxx_gpio_dev_attr = {
575 .bank_width = 32,
576 .dbck_flag = false,
577};
578
579/* gpio1 */ 572/* gpio1 */
580struct omap_hwmod omap2xxx_gpio1_hwmod = { 573struct omap_hwmod omap2xxx_gpio1_hwmod = {
581 .name = "gpio1", 574 .name = "gpio1",
@@ -589,7 +582,6 @@ struct omap_hwmod omap2xxx_gpio1_hwmod = {
589 }, 582 },
590 }, 583 },
591 .class = &omap2xxx_gpio_hwmod_class, 584 .class = &omap2xxx_gpio_hwmod_class,
592 .dev_attr = &omap2xxx_gpio_dev_attr,
593}; 585};
594 586
595/* gpio2 */ 587/* gpio2 */
@@ -605,7 +597,6 @@ struct omap_hwmod omap2xxx_gpio2_hwmod = {
605 }, 597 },
606 }, 598 },
607 .class = &omap2xxx_gpio_hwmod_class, 599 .class = &omap2xxx_gpio_hwmod_class,
608 .dev_attr = &omap2xxx_gpio_dev_attr,
609}; 600};
610 601
611/* gpio3 */ 602/* gpio3 */
@@ -621,7 +612,6 @@ struct omap_hwmod omap2xxx_gpio3_hwmod = {
621 }, 612 },
622 }, 613 },
623 .class = &omap2xxx_gpio_hwmod_class, 614 .class = &omap2xxx_gpio_hwmod_class,
624 .dev_attr = &omap2xxx_gpio_dev_attr,
625}; 615};
626 616
627/* gpio4 */ 617/* gpio4 */
@@ -637,7 +627,6 @@ struct omap_hwmod omap2xxx_gpio4_hwmod = {
637 }, 627 },
638 }, 628 },
639 .class = &omap2xxx_gpio_hwmod_class, 629 .class = &omap2xxx_gpio_hwmod_class,
640 .dev_attr = &omap2xxx_gpio_dev_attr,
641}; 630};
642 631
643/* mcspi1 */ 632/* mcspi1 */
diff --git a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_common_data.h b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_common_data.h
index 434bd1a77229..bbda6887388b 100644
--- a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_common_data.h
+++ b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_common_data.h
@@ -139,7 +139,6 @@ extern struct omap_hwmod_class am33xx_epwmss_hwmod_class;
139extern struct omap_hwmod_class am33xx_ehrpwm_hwmod_class; 139extern struct omap_hwmod_class am33xx_ehrpwm_hwmod_class;
140extern struct omap_hwmod_class am33xx_spi_hwmod_class; 140extern struct omap_hwmod_class am33xx_spi_hwmod_class;
141 141
142extern struct omap_gpio_dev_attr gpio_dev_attr;
143extern struct omap2_mcspi_dev_attr mcspi_attrib; 142extern struct omap2_mcspi_dev_attr mcspi_attrib;
144 143
145void omap_hwmod_am33xx_reg(void); 144void omap_hwmod_am33xx_reg(void);
diff --git a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c
index 4161e369d216..db8cd550a5bd 100644
--- a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c
@@ -16,7 +16,6 @@
16 16
17#include <linux/types.h> 17#include <linux/types.h>
18 18
19#include <linux/platform_data/gpio-omap.h>
20#include <linux/platform_data/hsmmc-omap.h> 19#include <linux/platform_data/hsmmc-omap.h>
21#include <linux/platform_data/spi-omap2-mcspi.h> 20#include <linux/platform_data/spi-omap2-mcspi.h>
22#include "omap_hwmod.h" 21#include "omap_hwmod.h"
@@ -539,11 +538,6 @@ struct omap_hwmod_class am33xx_gpio_hwmod_class = {
539 .rev = 2, 538 .rev = 2,
540}; 539};
541 540
542struct omap_gpio_dev_attr gpio_dev_attr = {
543 .bank_width = 32,
544 .dbck_flag = true,
545};
546
547/* gpio1 */ 541/* gpio1 */
548static struct omap_hwmod_opt_clk gpio1_opt_clks[] = { 542static struct omap_hwmod_opt_clk gpio1_opt_clks[] = {
549 { .role = "dbclk", .clk = "gpio1_dbclk" }, 543 { .role = "dbclk", .clk = "gpio1_dbclk" },
@@ -562,7 +556,6 @@ struct omap_hwmod am33xx_gpio1_hwmod = {
562 }, 556 },
563 .opt_clks = gpio1_opt_clks, 557 .opt_clks = gpio1_opt_clks,
564 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks), 558 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks),
565 .dev_attr = &gpio_dev_attr,
566}; 559};
567 560
568/* gpio2 */ 561/* gpio2 */
@@ -583,7 +576,6 @@ struct omap_hwmod am33xx_gpio2_hwmod = {
583 }, 576 },
584 .opt_clks = gpio2_opt_clks, 577 .opt_clks = gpio2_opt_clks,
585 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks), 578 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks),
586 .dev_attr = &gpio_dev_attr,
587}; 579};
588 580
589/* gpio3 */ 581/* gpio3 */
@@ -604,7 +596,6 @@ struct omap_hwmod am33xx_gpio3_hwmod = {
604 }, 596 },
605 .opt_clks = gpio3_opt_clks, 597 .opt_clks = gpio3_opt_clks,
606 .opt_clks_cnt = ARRAY_SIZE(gpio3_opt_clks), 598 .opt_clks_cnt = ARRAY_SIZE(gpio3_opt_clks),
607 .dev_attr = &gpio_dev_attr,
608}; 599};
609 600
610/* gpmc */ 601/* gpmc */
diff --git a/arch/arm/mach-omap2/omap_hwmod_33xx_data.c b/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
index 4d16b15bb0cf..232d03045c6d 100644
--- a/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
@@ -17,7 +17,6 @@
17#include <linux/i2c-omap.h> 17#include <linux/i2c-omap.h>
18 18
19#include "omap_hwmod.h" 19#include "omap_hwmod.h"
20#include <linux/platform_data/gpio-omap.h>
21#include <linux/platform_data/spi-omap2-mcspi.h> 20#include <linux/platform_data/spi-omap2-mcspi.h>
22 21
23#include "omap_hwmod_common_data.h" 22#include "omap_hwmod_common_data.h"
@@ -252,7 +251,6 @@ static struct omap_hwmod am33xx_gpio0_hwmod = {
252 }, 251 },
253 .opt_clks = gpio0_opt_clks, 252 .opt_clks = gpio0_opt_clks,
254 .opt_clks_cnt = ARRAY_SIZE(gpio0_opt_clks), 253 .opt_clks_cnt = ARRAY_SIZE(gpio0_opt_clks),
255 .dev_attr = &gpio_dev_attr,
256}; 254};
257 255
258/* lcdc */ 256/* lcdc */
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
index 1a2f2242e31b..c7ff7560f47a 100644
--- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
@@ -17,7 +17,6 @@
17 17
18#include <linux/i2c-omap.h> 18#include <linux/i2c-omap.h>
19#include <linux/power/smartreflex.h> 19#include <linux/power/smartreflex.h>
20#include <linux/platform_data/gpio-omap.h>
21#include <linux/platform_data/hsmmc-omap.h> 20#include <linux/platform_data/hsmmc-omap.h>
22 21
23#include <linux/omap-dma.h> 22#include <linux/omap-dma.h>
@@ -769,12 +768,6 @@ static struct omap_hwmod_class omap3xxx_gpio_hwmod_class = {
769 .rev = 1, 768 .rev = 1,
770}; 769};
771 770
772/* gpio_dev_attr */
773static struct omap_gpio_dev_attr gpio_dev_attr = {
774 .bank_width = 32,
775 .dbck_flag = true,
776};
777
778/* gpio1 */ 771/* gpio1 */
779static struct omap_hwmod_opt_clk gpio1_opt_clks[] = { 772static struct omap_hwmod_opt_clk gpio1_opt_clks[] = {
780 { .role = "dbclk", .clk = "gpio1_dbck", }, 773 { .role = "dbclk", .clk = "gpio1_dbck", },
@@ -794,7 +787,6 @@ static struct omap_hwmod omap3xxx_gpio1_hwmod = {
794 }, 787 },
795 }, 788 },
796 .class = &omap3xxx_gpio_hwmod_class, 789 .class = &omap3xxx_gpio_hwmod_class,
797 .dev_attr = &gpio_dev_attr,
798}; 790};
799 791
800/* gpio2 */ 792/* gpio2 */
@@ -816,7 +808,6 @@ static struct omap_hwmod omap3xxx_gpio2_hwmod = {
816 }, 808 },
817 }, 809 },
818 .class = &omap3xxx_gpio_hwmod_class, 810 .class = &omap3xxx_gpio_hwmod_class,
819 .dev_attr = &gpio_dev_attr,
820}; 811};
821 812
822/* gpio3 */ 813/* gpio3 */
@@ -838,7 +829,6 @@ static struct omap_hwmod omap3xxx_gpio3_hwmod = {
838 }, 829 },
839 }, 830 },
840 .class = &omap3xxx_gpio_hwmod_class, 831 .class = &omap3xxx_gpio_hwmod_class,
841 .dev_attr = &gpio_dev_attr,
842}; 832};
843 833
844/* gpio4 */ 834/* gpio4 */
@@ -860,7 +850,6 @@ static struct omap_hwmod omap3xxx_gpio4_hwmod = {
860 }, 850 },
861 }, 851 },
862 .class = &omap3xxx_gpio_hwmod_class, 852 .class = &omap3xxx_gpio_hwmod_class,
863 .dev_attr = &gpio_dev_attr,
864}; 853};
865 854
866/* gpio5 */ 855/* gpio5 */
@@ -883,7 +872,6 @@ static struct omap_hwmod omap3xxx_gpio5_hwmod = {
883 }, 872 },
884 }, 873 },
885 .class = &omap3xxx_gpio_hwmod_class, 874 .class = &omap3xxx_gpio_hwmod_class,
886 .dev_attr = &gpio_dev_attr,
887}; 875};
888 876
889/* gpio6 */ 877/* gpio6 */
@@ -906,7 +894,6 @@ static struct omap_hwmod omap3xxx_gpio6_hwmod = {
906 }, 894 },
907 }, 895 },
908 .class = &omap3xxx_gpio_hwmod_class, 896 .class = &omap3xxx_gpio_hwmod_class,
909 .dev_attr = &gpio_dev_attr,
910}; 897};
911 898
912/* dma attributes */ 899/* dma attributes */
diff --git a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
index afbce1f6f641..4f31ce899869 100644
--- a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
@@ -14,7 +14,6 @@
14 * GNU General Public License for more details. 14 * GNU General Public License for more details.
15 */ 15 */
16 16
17#include <linux/platform_data/gpio-omap.h>
18#include <linux/platform_data/spi-omap2-mcspi.h> 17#include <linux/platform_data/spi-omap2-mcspi.h>
19#include "omap_hwmod.h" 18#include "omap_hwmod.h"
20#include "omap_hwmod_33xx_43xx_common_data.h" 19#include "omap_hwmod_33xx_43xx_common_data.h"
@@ -107,7 +106,6 @@ static struct omap_hwmod am43xx_gpio0_hwmod = {
107 }, 106 },
108 .opt_clks = gpio0_opt_clks, 107 .opt_clks = gpio0_opt_clks,
109 .opt_clks_cnt = ARRAY_SIZE(gpio0_opt_clks), 108 .opt_clks_cnt = ARRAY_SIZE(gpio0_opt_clks),
110 .dev_attr = &gpio_dev_attr,
111}; 109};
112 110
113static struct omap_hwmod_class_sysconfig am43xx_synctimer_sysc = { 111static struct omap_hwmod_class_sysconfig am43xx_synctimer_sysc = {
@@ -288,7 +286,6 @@ static struct omap_hwmod am43xx_gpio4_hwmod = {
288 }, 286 },
289 .opt_clks = gpio4_opt_clks, 287 .opt_clks = gpio4_opt_clks,
290 .opt_clks_cnt = ARRAY_SIZE(gpio4_opt_clks), 288 .opt_clks_cnt = ARRAY_SIZE(gpio4_opt_clks),
291 .dev_attr = &gpio_dev_attr,
292}; 289};
293 290
294static struct omap_hwmod_opt_clk gpio5_opt_clks[] = { 291static struct omap_hwmod_opt_clk gpio5_opt_clks[] = {
@@ -309,7 +306,6 @@ static struct omap_hwmod am43xx_gpio5_hwmod = {
309 }, 306 },
310 .opt_clks = gpio5_opt_clks, 307 .opt_clks = gpio5_opt_clks,
311 .opt_clks_cnt = ARRAY_SIZE(gpio5_opt_clks), 308 .opt_clks_cnt = ARRAY_SIZE(gpio5_opt_clks),
312 .dev_attr = &gpio_dev_attr,
313}; 309};
314 310
315static struct omap_hwmod_class am43xx_ocp2scp_hwmod_class = { 311static struct omap_hwmod_class am43xx_ocp2scp_hwmod_class = {
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
index a1901c22a0f0..3afb7333b800 100644
--- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
@@ -21,7 +21,6 @@
21 */ 21 */
22 22
23#include <linux/io.h> 23#include <linux/io.h>
24#include <linux/platform_data/gpio-omap.h>
25#include <linux/platform_data/hsmmc-omap.h> 24#include <linux/platform_data/hsmmc-omap.h>
26#include <linux/power/smartreflex.h> 25#include <linux/power/smartreflex.h>
27#include <linux/i2c-omap.h> 26#include <linux/i2c-omap.h>
@@ -1083,12 +1082,6 @@ static struct omap_hwmod_class omap44xx_gpio_hwmod_class = {
1083 .rev = 2, 1082 .rev = 2,
1084}; 1083};
1085 1084
1086/* gpio dev_attr */
1087static struct omap_gpio_dev_attr gpio_dev_attr = {
1088 .bank_width = 32,
1089 .dbck_flag = true,
1090};
1091
1092/* gpio1 */ 1085/* gpio1 */
1093static struct omap_hwmod_opt_clk gpio1_opt_clks[] = { 1086static struct omap_hwmod_opt_clk gpio1_opt_clks[] = {
1094 { .role = "dbclk", .clk = "gpio1_dbclk" }, 1087 { .role = "dbclk", .clk = "gpio1_dbclk" },
@@ -1108,7 +1101,6 @@ static struct omap_hwmod omap44xx_gpio1_hwmod = {
1108 }, 1101 },
1109 .opt_clks = gpio1_opt_clks, 1102 .opt_clks = gpio1_opt_clks,
1110 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks), 1103 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks),
1111 .dev_attr = &gpio_dev_attr,
1112}; 1104};
1113 1105
1114/* gpio2 */ 1106/* gpio2 */
@@ -1131,7 +1123,6 @@ static struct omap_hwmod omap44xx_gpio2_hwmod = {
1131 }, 1123 },
1132 .opt_clks = gpio2_opt_clks, 1124 .opt_clks = gpio2_opt_clks,
1133 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks), 1125 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks),
1134 .dev_attr = &gpio_dev_attr,
1135}; 1126};
1136 1127
1137/* gpio3 */ 1128/* gpio3 */
@@ -1154,7 +1145,6 @@ static struct omap_hwmod omap44xx_gpio3_hwmod = {
1154 }, 1145 },
1155 .opt_clks = gpio3_opt_clks, 1146 .opt_clks = gpio3_opt_clks,
1156 .opt_clks_cnt = ARRAY_SIZE(gpio3_opt_clks), 1147 .opt_clks_cnt = ARRAY_SIZE(gpio3_opt_clks),
1157 .dev_attr = &gpio_dev_attr,
1158}; 1148};
1159 1149
1160/* gpio4 */ 1150/* gpio4 */
@@ -1177,7 +1167,6 @@ static struct omap_hwmod omap44xx_gpio4_hwmod = {
1177 }, 1167 },
1178 .opt_clks = gpio4_opt_clks, 1168 .opt_clks = gpio4_opt_clks,
1179 .opt_clks_cnt = ARRAY_SIZE(gpio4_opt_clks), 1169 .opt_clks_cnt = ARRAY_SIZE(gpio4_opt_clks),
1180 .dev_attr = &gpio_dev_attr,
1181}; 1170};
1182 1171
1183/* gpio5 */ 1172/* gpio5 */
@@ -1200,7 +1189,6 @@ static struct omap_hwmod omap44xx_gpio5_hwmod = {
1200 }, 1189 },
1201 .opt_clks = gpio5_opt_clks, 1190 .opt_clks = gpio5_opt_clks,
1202 .opt_clks_cnt = ARRAY_SIZE(gpio5_opt_clks), 1191 .opt_clks_cnt = ARRAY_SIZE(gpio5_opt_clks),
1203 .dev_attr = &gpio_dev_attr,
1204}; 1192};
1205 1193
1206/* gpio6 */ 1194/* gpio6 */
@@ -1223,7 +1211,6 @@ static struct omap_hwmod omap44xx_gpio6_hwmod = {
1223 }, 1211 },
1224 .opt_clks = gpio6_opt_clks, 1212 .opt_clks = gpio6_opt_clks,
1225 .opt_clks_cnt = ARRAY_SIZE(gpio6_opt_clks), 1213 .opt_clks_cnt = ARRAY_SIZE(gpio6_opt_clks),
1226 .dev_attr = &gpio_dev_attr,
1227}; 1214};
1228 1215
1229/* 1216/*
diff --git a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
index 988e7eaa1330..593b4bc92d99 100644
--- a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
@@ -18,7 +18,6 @@
18 */ 18 */
19 19
20#include <linux/io.h> 20#include <linux/io.h>
21#include <linux/platform_data/gpio-omap.h>
22#include <linux/platform_data/hsmmc-omap.h> 21#include <linux/platform_data/hsmmc-omap.h>
23#include <linux/power/smartreflex.h> 22#include <linux/power/smartreflex.h>
24#include <linux/i2c-omap.h> 23#include <linux/i2c-omap.h>
@@ -627,12 +626,6 @@ static struct omap_hwmod_class omap54xx_gpio_hwmod_class = {
627 .rev = 2, 626 .rev = 2,
628}; 627};
629 628
630/* gpio dev_attr */
631static struct omap_gpio_dev_attr gpio_dev_attr = {
632 .bank_width = 32,
633 .dbck_flag = true,
634};
635
636/* gpio1 */ 629/* gpio1 */
637static struct omap_hwmod_opt_clk gpio1_opt_clks[] = { 630static struct omap_hwmod_opt_clk gpio1_opt_clks[] = {
638 { .role = "dbclk", .clk = "gpio1_dbclk" }, 631 { .role = "dbclk", .clk = "gpio1_dbclk" },
@@ -652,7 +645,6 @@ static struct omap_hwmod omap54xx_gpio1_hwmod = {
652 }, 645 },
653 .opt_clks = gpio1_opt_clks, 646 .opt_clks = gpio1_opt_clks,
654 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks), 647 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks),
655 .dev_attr = &gpio_dev_attr,
656}; 648};
657 649
658/* gpio2 */ 650/* gpio2 */
@@ -675,7 +667,6 @@ static struct omap_hwmod omap54xx_gpio2_hwmod = {
675 }, 667 },
676 .opt_clks = gpio2_opt_clks, 668 .opt_clks = gpio2_opt_clks,
677 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks), 669 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks),
678 .dev_attr = &gpio_dev_attr,
679}; 670};
680 671
681/* gpio3 */ 672/* gpio3 */
@@ -698,7 +689,6 @@ static struct omap_hwmod omap54xx_gpio3_hwmod = {
698 }, 689 },
699 .opt_clks = gpio3_opt_clks, 690 .opt_clks = gpio3_opt_clks,
700 .opt_clks_cnt = ARRAY_SIZE(gpio3_opt_clks), 691 .opt_clks_cnt = ARRAY_SIZE(gpio3_opt_clks),
701 .dev_attr = &gpio_dev_attr,
702}; 692};
703 693
704/* gpio4 */ 694/* gpio4 */
@@ -721,7 +711,6 @@ static struct omap_hwmod omap54xx_gpio4_hwmod = {
721 }, 711 },
722 .opt_clks = gpio4_opt_clks, 712 .opt_clks = gpio4_opt_clks,
723 .opt_clks_cnt = ARRAY_SIZE(gpio4_opt_clks), 713 .opt_clks_cnt = ARRAY_SIZE(gpio4_opt_clks),
724 .dev_attr = &gpio_dev_attr,
725}; 714};
726 715
727/* gpio5 */ 716/* gpio5 */
@@ -744,7 +733,6 @@ static struct omap_hwmod omap54xx_gpio5_hwmod = {
744 }, 733 },
745 .opt_clks = gpio5_opt_clks, 734 .opt_clks = gpio5_opt_clks,
746 .opt_clks_cnt = ARRAY_SIZE(gpio5_opt_clks), 735 .opt_clks_cnt = ARRAY_SIZE(gpio5_opt_clks),
747 .dev_attr = &gpio_dev_attr,
748}; 736};
749 737
750/* gpio6 */ 738/* gpio6 */
@@ -767,7 +755,6 @@ static struct omap_hwmod omap54xx_gpio6_hwmod = {
767 }, 755 },
768 .opt_clks = gpio6_opt_clks, 756 .opt_clks = gpio6_opt_clks,
769 .opt_clks_cnt = ARRAY_SIZE(gpio6_opt_clks), 757 .opt_clks_cnt = ARRAY_SIZE(gpio6_opt_clks),
770 .dev_attr = &gpio_dev_attr,
771}; 758};
772 759
773/* gpio7 */ 760/* gpio7 */
@@ -790,7 +777,6 @@ static struct omap_hwmod omap54xx_gpio7_hwmod = {
790 }, 777 },
791 .opt_clks = gpio7_opt_clks, 778 .opt_clks = gpio7_opt_clks,
792 .opt_clks_cnt = ARRAY_SIZE(gpio7_opt_clks), 779 .opt_clks_cnt = ARRAY_SIZE(gpio7_opt_clks),
793 .dev_attr = &gpio_dev_attr,
794}; 780};
795 781
796/* gpio8 */ 782/* gpio8 */
@@ -813,7 +799,6 @@ static struct omap_hwmod omap54xx_gpio8_hwmod = {
813 }, 799 },
814 .opt_clks = gpio8_opt_clks, 800 .opt_clks = gpio8_opt_clks,
815 .opt_clks_cnt = ARRAY_SIZE(gpio8_opt_clks), 801 .opt_clks_cnt = ARRAY_SIZE(gpio8_opt_clks),
816 .dev_attr = &gpio_dev_attr,
817}; 802};
818 803
819/* 804/*
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
index 4c2a05b1bd19..523e89498fd3 100644
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -18,7 +18,6 @@
18 */ 18 */
19 19
20#include <linux/io.h> 20#include <linux/io.h>
21#include <linux/platform_data/gpio-omap.h>
22#include <linux/platform_data/hsmmc-omap.h> 21#include <linux/platform_data/hsmmc-omap.h>
23#include <linux/power/smartreflex.h> 22#include <linux/power/smartreflex.h>
24#include <linux/i2c-omap.h> 23#include <linux/i2c-omap.h>
@@ -818,12 +817,6 @@ static struct omap_hwmod_class dra7xx_gpio_hwmod_class = {
818 .rev = 2, 817 .rev = 2,
819}; 818};
820 819
821/* gpio dev_attr */
822static struct omap_gpio_dev_attr gpio_dev_attr = {
823 .bank_width = 32,
824 .dbck_flag = true,
825};
826
827/* gpio1 */ 820/* gpio1 */
828static struct omap_hwmod_opt_clk gpio1_opt_clks[] = { 821static struct omap_hwmod_opt_clk gpio1_opt_clks[] = {
829 { .role = "dbclk", .clk = "gpio1_dbclk" }, 822 { .role = "dbclk", .clk = "gpio1_dbclk" },
@@ -844,7 +837,6 @@ static struct omap_hwmod dra7xx_gpio1_hwmod = {
844 }, 837 },
845 .opt_clks = gpio1_opt_clks, 838 .opt_clks = gpio1_opt_clks,
846 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks), 839 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks),
847 .dev_attr = &gpio_dev_attr,
848}; 840};
849 841
850/* gpio2 */ 842/* gpio2 */
@@ -867,7 +859,6 @@ static struct omap_hwmod dra7xx_gpio2_hwmod = {
867 }, 859 },
868 .opt_clks = gpio2_opt_clks, 860 .opt_clks = gpio2_opt_clks,
869 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks), 861 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks),
870 .dev_attr = &gpio_dev_attr,
871}; 862};
872 863
873/* gpio3 */ 864/* gpio3 */
@@ -890,7 +881,6 @@ static struct omap_hwmod dra7xx_gpio3_hwmod = {
890 }, 881 },
891 .opt_clks = gpio3_opt_clks, 882 .opt_clks = gpio3_opt_clks,
892 .opt_clks_cnt = ARRAY_SIZE(gpio3_opt_clks), 883 .opt_clks_cnt = ARRAY_SIZE(gpio3_opt_clks),
893 .dev_attr = &gpio_dev_attr,
894}; 884};
895 885
896/* gpio4 */ 886/* gpio4 */
@@ -913,7 +903,6 @@ static struct omap_hwmod dra7xx_gpio4_hwmod = {
913 }, 903 },
914 .opt_clks = gpio4_opt_clks, 904 .opt_clks = gpio4_opt_clks,
915 .opt_clks_cnt = ARRAY_SIZE(gpio4_opt_clks), 905 .opt_clks_cnt = ARRAY_SIZE(gpio4_opt_clks),
916 .dev_attr = &gpio_dev_attr,
917}; 906};
918 907
919/* gpio5 */ 908/* gpio5 */
@@ -936,7 +925,6 @@ static struct omap_hwmod dra7xx_gpio5_hwmod = {
936 }, 925 },
937 .opt_clks = gpio5_opt_clks, 926 .opt_clks = gpio5_opt_clks,
938 .opt_clks_cnt = ARRAY_SIZE(gpio5_opt_clks), 927 .opt_clks_cnt = ARRAY_SIZE(gpio5_opt_clks),
939 .dev_attr = &gpio_dev_attr,
940}; 928};
941 929
942/* gpio6 */ 930/* gpio6 */
@@ -959,7 +947,6 @@ static struct omap_hwmod dra7xx_gpio6_hwmod = {
959 }, 947 },
960 .opt_clks = gpio6_opt_clks, 948 .opt_clks = gpio6_opt_clks,
961 .opt_clks_cnt = ARRAY_SIZE(gpio6_opt_clks), 949 .opt_clks_cnt = ARRAY_SIZE(gpio6_opt_clks),
962 .dev_attr = &gpio_dev_attr,
963}; 950};
964 951
965/* gpio7 */ 952/* gpio7 */
@@ -982,7 +969,6 @@ static struct omap_hwmod dra7xx_gpio7_hwmod = {
982 }, 969 },
983 .opt_clks = gpio7_opt_clks, 970 .opt_clks = gpio7_opt_clks,
984 .opt_clks_cnt = ARRAY_SIZE(gpio7_opt_clks), 971 .opt_clks_cnt = ARRAY_SIZE(gpio7_opt_clks),
985 .dev_attr = &gpio_dev_attr,
986}; 972};
987 973
988/* gpio8 */ 974/* gpio8 */
@@ -1005,7 +991,6 @@ static struct omap_hwmod dra7xx_gpio8_hwmod = {
1005 }, 991 },
1006 .opt_clks = gpio8_opt_clks, 992 .opt_clks = gpio8_opt_clks,
1007 .opt_clks_cnt = ARRAY_SIZE(gpio8_opt_clks), 993 .opt_clks_cnt = ARRAY_SIZE(gpio8_opt_clks),
1008 .dev_attr = &gpio_dev_attr,
1009}; 994};
1010 995
1011/* 996/*
diff --git a/arch/arm/mach-omap2/omap_hwmod_81xx_data.c b/arch/arm/mach-omap2/omap_hwmod_81xx_data.c
index 64c5a1299003..d1f4dc47a3ae 100644
--- a/arch/arm/mach-omap2/omap_hwmod_81xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_81xx_data.c
@@ -17,7 +17,6 @@
17 17
18#include <linux/types.h> 18#include <linux/types.h>
19 19
20#include <linux/platform_data/gpio-omap.h>
21#include <linux/platform_data/hsmmc-omap.h> 20#include <linux/platform_data/hsmmc-omap.h>
22#include <linux/platform_data/spi-omap2-mcspi.h> 21#include <linux/platform_data/spi-omap2-mcspi.h>
23#include <plat/dmtimer.h> 22#include <plat/dmtimer.h>
@@ -490,11 +489,6 @@ static struct omap_hwmod_class dm81xx_gpio_hwmod_class = {
490 .rev = 2, 489 .rev = 2,
491}; 490};
492 491
493static struct omap_gpio_dev_attr gpio_dev_attr = {
494 .bank_width = 32,
495 .dbck_flag = true,
496};
497
498static struct omap_hwmod_opt_clk gpio1_opt_clks[] = { 492static struct omap_hwmod_opt_clk gpio1_opt_clks[] = {
499 { .role = "dbclk", .clk = "sysclk18_ck" }, 493 { .role = "dbclk", .clk = "sysclk18_ck" },
500}; 494};
@@ -512,7 +506,6 @@ static struct omap_hwmod dm81xx_gpio1_hwmod = {
512 }, 506 },
513 .opt_clks = gpio1_opt_clks, 507 .opt_clks = gpio1_opt_clks,
514 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks), 508 .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks),
515 .dev_attr = &gpio_dev_attr,
516}; 509};
517 510
518static struct omap_hwmod_ocp_if dm81xx_l4_ls__gpio1 = { 511static struct omap_hwmod_ocp_if dm81xx_l4_ls__gpio1 = {
@@ -539,7 +532,6 @@ static struct omap_hwmod dm81xx_gpio2_hwmod = {
539 }, 532 },
540 .opt_clks = gpio2_opt_clks, 533 .opt_clks = gpio2_opt_clks,
541 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks), 534 .opt_clks_cnt = ARRAY_SIZE(gpio2_opt_clks),
542 .dev_attr = &gpio_dev_attr,
543}; 535};
544 536
545static struct omap_hwmod_ocp_if dm81xx_l4_ls__gpio2 = { 537static struct omap_hwmod_ocp_if dm81xx_l4_ls__gpio2 = {
diff --git a/arch/arm/mach-omap2/omap_hwmod_common_data.h b/arch/arm/mach-omap2/omap_hwmod_common_data.h
index 29a52df2de26..56dbaca9a728 100644
--- a/arch/arm/mach-omap2/omap_hwmod_common_data.h
+++ b/arch/arm/mach-omap2/omap_hwmod_common_data.h
@@ -19,7 +19,6 @@
19#include "display.h" 19#include "display.h"
20 20
21/* Common IP block data across OMAP2xxx */ 21/* Common IP block data across OMAP2xxx */
22extern struct omap_gpio_dev_attr omap2xxx_gpio_dev_attr;
23extern struct omap_hwmod omap2xxx_l3_main_hwmod; 22extern struct omap_hwmod omap2xxx_l3_main_hwmod;
24extern struct omap_hwmod omap2xxx_l4_core_hwmod; 23extern struct omap_hwmod omap2xxx_l4_core_hwmod;
25extern struct omap_hwmod omap2xxx_l4_wkup_hwmod; 24extern struct omap_hwmod omap2xxx_l4_wkup_hwmod;
diff --git a/include/linux/platform_data/gpio-omap.h b/include/linux/platform_data/gpio-omap.h
index cb2618147c34..8612855691b2 100644
--- a/include/linux/platform_data/gpio-omap.h
+++ b/include/linux/platform_data/gpio-omap.h
@@ -157,11 +157,6 @@
157#define OMAP_MPUIO(nr) (OMAP_MAX_GPIO_LINES + (nr)) 157#define OMAP_MPUIO(nr) (OMAP_MAX_GPIO_LINES + (nr))
158#define OMAP_GPIO_IS_MPUIO(nr) ((nr) >= OMAP_MAX_GPIO_LINES) 158#define OMAP_GPIO_IS_MPUIO(nr) ((nr) >= OMAP_MAX_GPIO_LINES)
159 159
160struct omap_gpio_dev_attr {
161 int bank_width; /* GPIO bank width */
162 bool dbck_flag; /* dbck required or not - True for OMAP3&4 */
163};
164
165struct omap_gpio_reg_offs { 160struct omap_gpio_reg_offs {
166 u16 revision; 161 u16 revision;
167 u16 direction; 162 u16 direction;