Browse Source
In order for pinctrl support to be complete, RT series GPIO driver must support pinmuxing within the driver level. RT series pinmux settings do not correspond directly to gpio port/pin numbers, so use DTS mappings to pinctrl nodes to select and apply pinmux settings in the gpio driver. Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>pull/44233/head
17 changed files with 2824 additions and 11 deletions
@ -0,0 +1,164 @@
@@ -0,0 +1,164 @@
|
||||
/* |
||||
* Copyright (c) 2022, NXP |
||||
* |
||||
* SPDX-License-Identifier: Apache-2.0 |
||||
*/ |
||||
#include <nxp/nxp_rt.dtsi> |
||||
|
||||
/ { |
||||
soc { |
||||
/* GPIOS 6-9 are not preset on RT1050 */ |
||||
/delete-node/ gpio@42000000; |
||||
/delete-node/ gpio@42004000; |
||||
/delete-node/ gpio@42008000; |
||||
/delete-node/ gpio@4200c000; |
||||
}; |
||||
}; |
||||
|
||||
/* |
||||
* GPIO pinmux options. These options define the pinmux settings |
||||
* for GPIO ports on the package, so that the GPIO driver can |
||||
* select GPIO mux options during GPIO configuration. |
||||
*/ |
||||
|
||||
&gpio1{ |
||||
pinmux = <&iomuxc_gpio_ad_b0_00_gpio1_io00>, |
||||
<&iomuxc_gpio_ad_b0_01_gpio1_io01>, |
||||
<&iomuxc_gpio_ad_b0_02_gpio1_io02>, |
||||
<&iomuxc_gpio_ad_b0_03_gpio1_io03>, |
||||
<&iomuxc_gpio_ad_b0_04_gpio1_io04>, |
||||
<&iomuxc_gpio_ad_b0_05_gpio1_io05>, |
||||
<&iomuxc_gpio_ad_b0_06_gpio1_io06>, |
||||
<&iomuxc_gpio_ad_b0_07_gpio1_io07>, |
||||
<&iomuxc_gpio_ad_b0_08_gpio1_io08>, |
||||
<&iomuxc_gpio_ad_b0_09_gpio1_io09>, |
||||
<&iomuxc_gpio_ad_b0_10_gpio1_io10>, |
||||
<&iomuxc_gpio_ad_b0_11_gpio1_io11>, |
||||
<&iomuxc_gpio_ad_b0_12_gpio1_io12>, |
||||
<&iomuxc_gpio_ad_b0_13_gpio1_io13>, |
||||
<&iomuxc_gpio_ad_b0_14_gpio1_io14>, |
||||
<&iomuxc_gpio_ad_b0_15_gpio1_io15>, |
||||
<&iomuxc_gpio_ad_b1_00_gpio1_io16>, |
||||
<&iomuxc_gpio_ad_b1_01_gpio1_io17>, |
||||
<&iomuxc_gpio_ad_b1_02_gpio1_io18>, |
||||
<&iomuxc_gpio_ad_b1_03_gpio1_io19>, |
||||
<&iomuxc_gpio_ad_b1_04_gpio1_io20>, |
||||
<&iomuxc_gpio_ad_b1_05_gpio1_io21>, |
||||
<&iomuxc_gpio_ad_b1_06_gpio1_io22>, |
||||
<&iomuxc_gpio_ad_b1_07_gpio1_io23>, |
||||
<&iomuxc_gpio_ad_b1_08_gpio1_io24>, |
||||
<&iomuxc_gpio_ad_b1_09_gpio1_io25>, |
||||
<&iomuxc_gpio_ad_b1_10_gpio1_io26>, |
||||
<&iomuxc_gpio_ad_b1_11_gpio1_io27>, |
||||
<&iomuxc_gpio_ad_b1_12_gpio1_io28>, |
||||
<&iomuxc_gpio_ad_b1_13_gpio1_io29>, |
||||
<&iomuxc_gpio_ad_b1_14_gpio1_io30>, |
||||
<&iomuxc_gpio_ad_b1_15_gpio1_io31>; |
||||
}; |
||||
|
||||
&gpio2{ |
||||
pinmux = <&iomuxc_gpio_b0_00_gpio2_io00>, |
||||
<&iomuxc_gpio_b0_01_gpio2_io01>, |
||||
<&iomuxc_gpio_b0_02_gpio2_io02>, |
||||
<&iomuxc_gpio_b0_03_gpio2_io03>, |
||||
<&iomuxc_gpio_b0_04_gpio2_io04>, |
||||
<&iomuxc_gpio_b0_05_gpio2_io05>, |
||||
<&iomuxc_gpio_b0_06_gpio2_io06>, |
||||
<&iomuxc_gpio_b0_07_gpio2_io07>, |
||||
<&iomuxc_gpio_b0_08_gpio2_io08>, |
||||
<&iomuxc_gpio_b0_09_gpio2_io09>, |
||||
<&iomuxc_gpio_b0_10_gpio2_io10>, |
||||
<&iomuxc_gpio_b0_11_gpio2_io11>, |
||||
<&iomuxc_gpio_b0_12_gpio2_io12>, |
||||
<&iomuxc_gpio_b0_13_gpio2_io13>, |
||||
<&iomuxc_gpio_b0_14_gpio2_io14>, |
||||
<&iomuxc_gpio_b0_15_gpio2_io15>, |
||||
<&iomuxc_gpio_b1_00_gpio2_io16>, |
||||
<&iomuxc_gpio_b1_01_gpio2_io17>, |
||||
<&iomuxc_gpio_b1_02_gpio2_io18>, |
||||
<&iomuxc_gpio_b1_03_gpio2_io19>, |
||||
<&iomuxc_gpio_b1_04_gpio2_io20>, |
||||
<&iomuxc_gpio_b1_05_gpio2_io21>, |
||||
<&iomuxc_gpio_b1_06_gpio2_io22>, |
||||
<&iomuxc_gpio_b1_07_gpio2_io23>, |
||||
<&iomuxc_gpio_b1_08_gpio2_io24>, |
||||
<&iomuxc_gpio_b1_09_gpio2_io25>, |
||||
<&iomuxc_gpio_b1_10_gpio2_io26>, |
||||
<&iomuxc_gpio_b1_11_gpio2_io27>, |
||||
<&iomuxc_gpio_b1_12_gpio2_io28>, |
||||
<&iomuxc_gpio_b1_13_gpio2_io29>, |
||||
<&iomuxc_gpio_b1_14_gpio2_io30>, |
||||
<&iomuxc_gpio_b1_15_gpio2_io31>; |
||||
}; |
||||
|
||||
&gpio3{ |
||||
pinmux = <&iomuxc_gpio_sd_b1_00_gpio3_io00>, |
||||
<&iomuxc_gpio_sd_b1_01_gpio3_io01>, |
||||
<&iomuxc_gpio_sd_b1_02_gpio3_io02>, |
||||
<&iomuxc_gpio_sd_b1_03_gpio3_io03>, |
||||
<&iomuxc_gpio_sd_b1_04_gpio3_io04>, |
||||
<&iomuxc_gpio_sd_b1_05_gpio3_io05>, |
||||
<&iomuxc_gpio_sd_b1_06_gpio3_io06>, |
||||
<&iomuxc_gpio_sd_b1_07_gpio3_io07>, |
||||
<&iomuxc_gpio_sd_b1_08_gpio3_io08>, |
||||
<&iomuxc_gpio_sd_b1_09_gpio3_io09>, |
||||
<&iomuxc_gpio_sd_b1_10_gpio3_io10>, |
||||
<&iomuxc_gpio_sd_b1_11_gpio3_io11>, |
||||
<&iomuxc_gpio_sd_b0_00_gpio3_io12>, |
||||
<&iomuxc_gpio_sd_b0_01_gpio3_io13>, |
||||
<&iomuxc_gpio_sd_b0_02_gpio3_io14>, |
||||
<&iomuxc_gpio_sd_b0_03_gpio3_io15>, |
||||
<&iomuxc_gpio_sd_b0_04_gpio3_io16>, |
||||
<&iomuxc_gpio_sd_b0_05_gpio3_io17>, |
||||
<&iomuxc_gpio_emc_32_gpio3_io18>, |
||||
<&iomuxc_gpio_emc_33_gpio3_io19>, |
||||
<&iomuxc_gpio_emc_34_gpio3_io20>, |
||||
<&iomuxc_gpio_emc_35_gpio3_io21>, |
||||
<&iomuxc_gpio_emc_36_gpio3_io22>, |
||||
<&iomuxc_gpio_emc_37_gpio3_io23>, |
||||
<&iomuxc_gpio_emc_38_gpio3_io24>, |
||||
<&iomuxc_gpio_emc_39_gpio3_io25>, |
||||
<&iomuxc_gpio_emc_40_gpio3_io26>, |
||||
<&iomuxc_gpio_emc_41_gpio3_io27>; |
||||
}; |
||||
|
||||
&gpio4{ |
||||
pinmux = <&iomuxc_gpio_emc_00_gpio4_io00>, |
||||
<&iomuxc_gpio_emc_01_gpio4_io01>, |
||||
<&iomuxc_gpio_emc_02_gpio4_io02>, |
||||
<&iomuxc_gpio_emc_03_gpio4_io03>, |
||||
<&iomuxc_gpio_emc_04_gpio4_io04>, |
||||
<&iomuxc_gpio_emc_05_gpio4_io05>, |
||||
<&iomuxc_gpio_emc_06_gpio4_io06>, |
||||
<&iomuxc_gpio_emc_07_gpio4_io07>, |
||||
<&iomuxc_gpio_emc_08_gpio4_io08>, |
||||
<&iomuxc_gpio_emc_09_gpio4_io09>, |
||||
<&iomuxc_gpio_emc_10_gpio4_io10>, |
||||
<&iomuxc_gpio_emc_11_gpio4_io11>, |
||||
<&iomuxc_gpio_emc_12_gpio4_io12>, |
||||
<&iomuxc_gpio_emc_13_gpio4_io13>, |
||||
<&iomuxc_gpio_emc_14_gpio4_io14>, |
||||
<&iomuxc_gpio_emc_15_gpio4_io15>, |
||||
<&iomuxc_gpio_emc_16_gpio4_io16>, |
||||
<&iomuxc_gpio_emc_17_gpio4_io17>, |
||||
<&iomuxc_gpio_emc_18_gpio4_io18>, |
||||
<&iomuxc_gpio_emc_19_gpio4_io19>, |
||||
<&iomuxc_gpio_emc_20_gpio4_io20>, |
||||
<&iomuxc_gpio_emc_21_gpio4_io21>, |
||||
<&iomuxc_gpio_emc_22_gpio4_io22>, |
||||
<&iomuxc_gpio_emc_23_gpio4_io23>, |
||||
<&iomuxc_gpio_emc_24_gpio4_io24>, |
||||
<&iomuxc_gpio_emc_25_gpio4_io25>, |
||||
<&iomuxc_gpio_emc_26_gpio4_io26>, |
||||
<&iomuxc_gpio_emc_27_gpio4_io27>, |
||||
<&iomuxc_gpio_emc_28_gpio4_io28>, |
||||
<&iomuxc_gpio_emc_29_gpio4_io29>, |
||||
<&iomuxc_gpio_emc_30_gpio4_io30>, |
||||
<&iomuxc_gpio_emc_31_gpio4_io31>; |
||||
}; |
||||
|
||||
&gpio5{ |
||||
pinmux = <&iomuxc_snvs_wakeup_gpio5_io00>, |
||||
<&iomuxc_snvs_pmic_on_req_gpio5_io01>, |
||||
<&iomuxc_snvs_pmic_stby_req_gpio5_io02>; |
||||
}; |
Loading…
Reference in new issue