@@ -767,6 +767,160 @@ const struct samsung_pinctrl_of_match_data exynos990_of_data __initconst = {
767767 .num_ctrl = ARRAY_SIZE (exynos990_pin_ctrl ),
768768};
769769
770+ /* pin banks of exynos9810 pin-controller 0 (ALIVE) */
771+ static const struct samsung_pin_bank_data exynos9810_pin_banks0 [] __initconst = {
772+ EXYNOS850_PIN_BANK_EINTN (6 , 0x000 , "etc1" ),
773+ EXYNOS850_PIN_BANK_EINTW (8 , 0x020 , "gpa0" , 0x00 ),
774+ EXYNOS850_PIN_BANK_EINTW (8 , 0x040 , "gpa1" , 0x04 ),
775+ EXYNOS850_PIN_BANK_EINTW (8 , 0x060 , "gpa2" , 0x08 ),
776+ EXYNOS850_PIN_BANK_EINTW (8 , 0x080 , "gpa3" , 0x0c ),
777+ EXYNOS850_PIN_BANK_EINTN (6 , 0x0A0 , "gpq0" ),
778+ EXYNOS850_PIN_BANK_EINTW (2 , 0x0C0 , "gpa4" , 0x10 ),
779+ };
780+
781+ /* pin banks of exynos9810 pin-controller 1 (AUD) */
782+ static const struct samsung_pin_bank_data exynos9810_pin_banks1 [] __initconst = {
783+ EXYNOS850_PIN_BANK_EINTG (5 , 0x000 , "gpb0" , 0x00 ),
784+ EXYNOS850_PIN_BANK_EINTG (8 , 0x020 , "gpb1" , 0x04 ),
785+ EXYNOS850_PIN_BANK_EINTG (4 , 0x040 , "gpb2" , 0x08 ),
786+ };
787+
788+ /* pin banks of exynos9810 pin-controller 2 (CHUB) */
789+ static const struct samsung_pin_bank_data exynos9810_pin_banks2 [] __initconst = {
790+ EXYNOS850_PIN_BANK_EINTG (8 , 0x000 , "gph0" , 0x00 ),
791+ EXYNOS850_PIN_BANK_EINTG (5 , 0x020 , "gph1" , 0x04 ),
792+ };
793+
794+ /* pin banks of exynos9810 pin-controller 3 (CMGP) */
795+ static const struct samsung_pin_bank_data exynos9810_pin_banks3 [] __initconst = {
796+ EXYNOS850_PIN_BANK_EINTW (1 , 0x000 , "gpm0" , 0x00 ),
797+ EXYNOS850_PIN_BANK_EINTW (1 , 0x020 , "gpm1" , 0x04 ),
798+ EXYNOS850_PIN_BANK_EINTW (1 , 0x040 , "gpm2" , 0x08 ),
799+ EXYNOS850_PIN_BANK_EINTW (1 , 0x060 , "gpm3" , 0x0C ),
800+ EXYNOS850_PIN_BANK_EINTW (1 , 0x080 , "gpm4" , 0x10 ),
801+ EXYNOS850_PIN_BANK_EINTW (1 , 0x0A0 , "gpm5" , 0x14 ),
802+ EXYNOS850_PIN_BANK_EINTW (1 , 0x0C0 , "gpm6" , 0x18 ),
803+ EXYNOS850_PIN_BANK_EINTW (1 , 0x0E0 , "gpm7" , 0x1C ),
804+ EXYNOS850_PIN_BANK_EINTW (1 , 0x100 , "gpm10" , 0x20 ),
805+ EXYNOS850_PIN_BANK_EINTW (1 , 0x120 , "gpm11" , 0x24 ),
806+ EXYNOS850_PIN_BANK_EINTW (1 , 0x140 , "gpm12" , 0x28 ),
807+ EXYNOS850_PIN_BANK_EINTW (1 , 0x160 , "gpm13" , 0x2C ),
808+ EXYNOS850_PIN_BANK_EINTW (1 , 0x180 , "gpm14" , 0x30 ),
809+ EXYNOS850_PIN_BANK_EINTW (1 , 0x1A0 , "gpm15" , 0x34 ),
810+ EXYNOS850_PIN_BANK_EINTW (1 , 0x1C0 , "gpm16" , 0x38 ),
811+ EXYNOS850_PIN_BANK_EINTW (1 , 0x1E0 , "gpm17" , 0x3C ),
812+ EXYNOS850_PIN_BANK_EINTW (1 , 0x200 , "gpm40" , 0x40 ),
813+ EXYNOS850_PIN_BANK_EINTW (1 , 0x220 , "gpm41" , 0x44 ),
814+ EXYNOS850_PIN_BANK_EINTW (1 , 0x240 , "gpm42" , 0x48 ),
815+ EXYNOS850_PIN_BANK_EINTW (1 , 0x260 , "gpm43" , 0x4C ),
816+ };
817+
818+ /* pin banks of exynos9810 pin-controller 4 (FSYS0) */
819+ static const struct samsung_pin_bank_data exynos9810_pin_banks4 [] __initconst = {
820+ EXYNOS850_PIN_BANK_EINTG (2 , 0x000 , "gpf0" , 0x00 ),
821+ };
822+
823+ /* pin banks of exynos9810 pin-controller 5 (FSYS1) */
824+ static const struct samsung_pin_bank_data exynos9810_pin_banks5 [] __initconst = {
825+ EXYNOS850_PIN_BANK_EINTG (7 , 0x000 , "gpf1" , 0x00 ),
826+ EXYNOS850_PIN_BANK_EINTG (6 , 0x020 , "gpf2" , 0x04 ),
827+ };
828+
829+ /* pin banks of exynos9810 pin-controller 6 (PERIC0) */
830+ static const struct samsung_pin_bank_data exynos9810_pin_banks6 [] __initconst = {
831+ EXYNOS850_PIN_BANK_EINTG (8 , 0x000 , "gpp0" , 0x00 ),
832+ EXYNOS850_PIN_BANK_EINTG (8 , 0x020 , "gpp1" , 0x04 ),
833+ EXYNOS850_PIN_BANK_EINTG (8 , 0x040 , "gpp2" , 0x08 ),
834+ EXYNOS850_PIN_BANK_EINTG (4 , 0x060 , "gpp3" , 0x0C ),
835+ EXYNOS850_PIN_BANK_EINTG (8 , 0x080 , "gpg0" , 0x10 ),
836+ EXYNOS850_PIN_BANK_EINTG (8 , 0x0A0 , "gpg1" , 0x14 ),
837+ EXYNOS850_PIN_BANK_EINTG (8 , 0x0C0 , "gpg2" , 0x18 ),
838+ };
839+
840+ /* pin banks of exynos9810 pin-controller 7 (PERIC1) */
841+ static const struct samsung_pin_bank_data exynos9810_pin_banks7 [] __initconst = {
842+ EXYNOS850_PIN_BANK_EINTG (8 , 0x000 , "gpp4" , 0x00 ),
843+ EXYNOS850_PIN_BANK_EINTG (8 , 0x020 , "gpp5" , 0x04 ),
844+ EXYNOS850_PIN_BANK_EINTG (4 , 0x040 , "gpp6" , 0x08 ),
845+ EXYNOS850_PIN_BANK_EINTG (8 , 0x060 , "gpc0" , 0x0C ),
846+ EXYNOS850_PIN_BANK_EINTG (8 , 0x080 , "gpc1" , 0x10 ),
847+ EXYNOS850_PIN_BANK_EINTG (4 , 0x0A0 , "gpd0" , 0x14 ),
848+ EXYNOS850_PIN_BANK_EINTG (7 , 0x0C0 , "gpg3" , 0x18 ),
849+ };
850+
851+ /* pin banks of exynos9810 pin-controller 8 (VTS) */
852+ static const struct samsung_pin_bank_data exynos9810_pin_banks8 [] __initconst = {
853+ EXYNOS850_PIN_BANK_EINTG (3 , 0x000 , "gpt0" , 0x00 ),
854+ };
855+
856+ static const struct samsung_pin_ctrl exynos9810_pin_ctrl [] __initconst = {
857+ {
858+ /* pin-controller instance 0 ALIVE data */
859+ .pin_banks = exynos9810_pin_banks0 ,
860+ .nr_banks = ARRAY_SIZE (exynos9810_pin_banks0 ),
861+ .eint_wkup_init = exynos_eint_wkup_init ,
862+ .eint_gpio_init = exynos_eint_gpio_init ,
863+ .suspend = exynos_pinctrl_suspend ,
864+ .resume = exynos_pinctrl_resume ,
865+ }, {
866+ /* pin-controller instance 1 AUD data */
867+ .pin_banks = exynos9810_pin_banks1 ,
868+ .nr_banks = ARRAY_SIZE (exynos9810_pin_banks1 ),
869+ }, {
870+ /* pin-controller instance 2 CHUB data */
871+ .pin_banks = exynos9810_pin_banks2 ,
872+ .nr_banks = ARRAY_SIZE (exynos9810_pin_banks2 ),
873+ .eint_gpio_init = exynos_eint_gpio_init ,
874+ .suspend = exynos_pinctrl_suspend ,
875+ .resume = exynos_pinctrl_resume ,
876+ }, {
877+ /* pin-controller instance 3 CMGP data */
878+ .pin_banks = exynos9810_pin_banks3 ,
879+ .nr_banks = ARRAY_SIZE (exynos9810_pin_banks3 ),
880+ .eint_wkup_init = exynos_eint_wkup_init ,
881+ .eint_gpio_init = exynos_eint_gpio_init ,
882+ .suspend = exynos_pinctrl_suspend ,
883+ .resume = exynos_pinctrl_resume ,
884+ }, {
885+ /* pin-controller instance 4 FSYS0 data */
886+ .pin_banks = exynos9810_pin_banks4 ,
887+ .nr_banks = ARRAY_SIZE (exynos9810_pin_banks4 ),
888+ .eint_gpio_init = exynos_eint_gpio_init ,
889+ .suspend = exynos_pinctrl_suspend ,
890+ .resume = exynos_pinctrl_resume ,
891+ }, {
892+ /* pin-controller instance 5 FSYS1 data */
893+ .pin_banks = exynos9810_pin_banks5 ,
894+ .nr_banks = ARRAY_SIZE (exynos9810_pin_banks5 ),
895+ .eint_gpio_init = exynos_eint_gpio_init ,
896+ .suspend = exynos_pinctrl_suspend ,
897+ .resume = exynos_pinctrl_resume ,
898+ }, {
899+ /* pin-controller instance 6 PERIC0 data */
900+ .pin_banks = exynos9810_pin_banks6 ,
901+ .nr_banks = ARRAY_SIZE (exynos9810_pin_banks6 ),
902+ .eint_gpio_init = exynos_eint_gpio_init ,
903+ .suspend = exynos_pinctrl_suspend ,
904+ .resume = exynos_pinctrl_resume ,
905+ }, {
906+ /* pin-controller instance 7 PERIC1 data */
907+ .pin_banks = exynos9810_pin_banks7 ,
908+ .nr_banks = ARRAY_SIZE (exynos9810_pin_banks7 ),
909+ .eint_gpio_init = exynos_eint_gpio_init ,
910+ .suspend = exynos_pinctrl_suspend ,
911+ .resume = exynos_pinctrl_resume ,
912+ }, {
913+ /* pin-controller instance 8 VTS data */
914+ .pin_banks = exynos9810_pin_banks8 ,
915+ .nr_banks = ARRAY_SIZE (exynos9810_pin_banks8 ),
916+ },
917+ };
918+
919+ const struct samsung_pinctrl_of_match_data exynos9810_of_data __initconst = {
920+ .ctrl = exynos9810_pin_ctrl ,
921+ .num_ctrl = ARRAY_SIZE (exynos9810_pin_ctrl ),
922+ };
923+
770924/* pin banks of exynosautov9 pin-controller 0 (ALIVE) */
771925static const struct samsung_pin_bank_data exynosautov9_pin_banks0 [] __initconst = {
772926 EXYNOS850_PIN_BANK_EINTW (8 , 0x000 , "gpa0" , 0x00 ),
0 commit comments