cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

stih407-pinctrl.dtsi (31468B)


      1// SPDX-License-Identifier: GPL-2.0-only
      2/*
      3 * Copyright (C) 2014 STMicroelectronics Limited.
      4 * Author: Giuseppe Cavallaro <peppe.cavallaro@st.com>
      5 */
      6#include "st-pincfg.h"
      7#include <dt-bindings/interrupt-controller/arm-gic.h>
      8/ {
      9
     10	aliases {
     11		/* 0-5: PIO_SBC */
     12		gpio0 = &pio0;
     13		gpio1 = &pio1;
     14		gpio2 = &pio2;
     15		gpio3 = &pio3;
     16		gpio4 = &pio4;
     17		gpio5 = &pio5;
     18		/* 10-19: PIO_FRONT0 */
     19		gpio6 = &pio10;
     20		gpio7 = &pio11;
     21		gpio8 = &pio12;
     22		gpio9 = &pio13;
     23		gpio10 = &pio14;
     24		gpio11 = &pio15;
     25		gpio12 = &pio16;
     26		gpio13 = &pio17;
     27		gpio14 = &pio18;
     28		gpio15 = &pio19;
     29		/* 20: PIO_FRONT1 */
     30		gpio16 = &pio20;
     31		/* 30-35: PIO_REAR */
     32		gpio17 = &pio30;
     33		gpio18 = &pio31;
     34		gpio19 = &pio32;
     35		gpio20 = &pio33;
     36		gpio21 = &pio34;
     37		gpio22 = &pio35;
     38		/* 40-42: PIO_FLASH */
     39		gpio23 = &pio40;
     40		gpio24 = &pio41;
     41		gpio25 = &pio42;
     42	};
     43
     44	soc {
     45		pin-controller-sbc@961f080 {
     46			#address-cells = <1>;
     47			#size-cells = <1>;
     48			compatible = "st,stih407-sbc-pinctrl";
     49			st,syscfg = <&syscfg_sbc>;
     50			reg = <0x0961f080 0x4>;
     51			reg-names = "irqmux";
     52			interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
     53			interrupt-names = "irqmux";
     54			ranges = <0 0x09610000 0x6000>;
     55
     56			pio0: gpio@9610000 {
     57				gpio-controller;
     58				#gpio-cells = <2>;
     59				interrupt-controller;
     60				#interrupt-cells = <2>;
     61				reg = <0x0 0x100>;
     62				st,bank-name = "PIO0";
     63			};
     64			pio1: gpio@9611000 {
     65				gpio-controller;
     66				#gpio-cells = <2>;
     67				interrupt-controller;
     68				#interrupt-cells = <2>;
     69				reg = <0x1000 0x100>;
     70				st,bank-name = "PIO1";
     71			};
     72			pio2: gpio@9612000 {
     73				gpio-controller;
     74				#gpio-cells = <2>;
     75				interrupt-controller;
     76				#interrupt-cells = <2>;
     77				reg = <0x2000 0x100>;
     78				st,bank-name = "PIO2";
     79			};
     80			pio3: gpio@9613000 {
     81				gpio-controller;
     82				#gpio-cells = <2>;
     83				interrupt-controller;
     84				#interrupt-cells = <2>;
     85				reg = <0x3000 0x100>;
     86				st,bank-name = "PIO3";
     87			};
     88			pio4: gpio@9614000 {
     89				gpio-controller;
     90				#gpio-cells = <2>;
     91				interrupt-controller;
     92				#interrupt-cells = <2>;
     93				reg = <0x4000 0x100>;
     94				st,bank-name = "PIO4";
     95			};
     96
     97			pio5: gpio@9615000 {
     98				gpio-controller;
     99				#gpio-cells = <2>;
    100				interrupt-controller;
    101				#interrupt-cells = <2>;
    102				reg = <0x5000 0x100>;
    103				st,bank-name = "PIO5";
    104				st,retime-pin-mask = <0x3f>;
    105			};
    106
    107			cec0 {
    108				pinctrl_cec0_default: cec0-default {
    109					st,pins {
    110						hdmi_cec = <&pio2 4 ALT1 BIDIR>;
    111					};
    112				};
    113			};
    114
    115			rc {
    116				pinctrl_ir: ir0 {
    117					st,pins {
    118						ir = <&pio4 0 ALT2 IN>;
    119					};
    120				};
    121
    122				pinctrl_uhf: uhf0 {
    123					st,pins {
    124						ir = <&pio4 1 ALT2 IN>;
    125					};
    126				};
    127
    128				pinctrl_tx: tx0 {
    129					st,pins {
    130						tx = <&pio4 2 ALT2 OUT>;
    131					};
    132				};
    133
    134				pinctrl_tx_od: tx_od0 {
    135					st,pins {
    136						tx_od = <&pio4 3 ALT2 OUT>;
    137					};
    138				};
    139			};
    140
    141			/* SBC_ASC0 - UART10 */
    142			sbc_serial0 {
    143				pinctrl_sbc_serial0: sbc_serial0-0 {
    144					st,pins {
    145						tx = <&pio3 4 ALT1 OUT>;
    146						rx = <&pio3 5 ALT1 IN>;
    147					};
    148				};
    149			};
    150			/* SBC_ASC1 - UART11 */
    151			sbc_serial1 {
    152				pinctrl_sbc_serial1: sbc_serial1-0 {
    153					st,pins {
    154						tx = <&pio2 6 ALT3 OUT>;
    155						rx = <&pio2 7 ALT3 IN>;
    156					};
    157				};
    158			};
    159
    160			i2c10 {
    161				pinctrl_i2c10_default: i2c10-default {
    162					st,pins {
    163						sda = <&pio4 6 ALT1 BIDIR>;
    164						scl = <&pio4 5 ALT1 BIDIR>;
    165					};
    166				};
    167			};
    168
    169			i2c11 {
    170				pinctrl_i2c11_default: i2c11-default {
    171					st,pins {
    172						sda = <&pio5 1 ALT1 BIDIR>;
    173						scl = <&pio5 0 ALT1 BIDIR>;
    174					};
    175				};
    176			};
    177
    178			keyscan {
    179				pinctrl_keyscan: keyscan {
    180					st,pins {
    181						keyin0 = <&pio4 0 ALT6 IN>;
    182						keyin1 = <&pio4 5 ALT4 IN>;
    183						keyin2 = <&pio0 4 ALT2 IN>;
    184						keyin3 = <&pio2 6 ALT2 IN>;
    185
    186						keyout0 = <&pio4 6 ALT4 OUT>;
    187						keyout1 = <&pio1 7 ALT2 OUT>;
    188						keyout2 = <&pio0 6 ALT2 OUT>;
    189						keyout3 = <&pio2 7 ALT2 OUT>;
    190					};
    191				};
    192			};
    193
    194			gmac1 {
    195				/*
    196				 * Almost all the boards based on STiH407 SoC have an embedded
    197				 * switch where the mdio/mdc have been used for managing the SMI
    198				 * iface via I2C. For this reason these lines can be allocated
    199				 * by using dedicated configuration (in case of there will be a
    200				 * standard PHY transceiver on-board).
    201				 */
    202				pinctrl_rgmii1: rgmii1-0 {
    203					st,pins {
    204
    205						txd0 = <&pio0 0 ALT1 OUT DE_IO 0 CLK_A>;
    206						txd1 = <&pio0 1 ALT1 OUT DE_IO 0 CLK_A>;
    207						txd2 = <&pio0 2 ALT1 OUT DE_IO 0 CLK_A>;
    208						txd3 = <&pio0 3 ALT1 OUT DE_IO 0 CLK_A>;
    209						txen = <&pio0 5 ALT1 OUT DE_IO 0 CLK_A>;
    210						txclk = <&pio0 6 ALT1 IN NICLK 0 CLK_A>;
    211						rxd0 = <&pio1 4 ALT1 IN DE_IO 0 CLK_A>;
    212						rxd1 = <&pio1 5 ALT1 IN DE_IO 0 CLK_A>;
    213						rxd2 = <&pio1 6 ALT1 IN DE_IO 0 CLK_A>;
    214						rxd3 = <&pio1 7 ALT1 IN DE_IO 0 CLK_A>;
    215						rxdv = <&pio2 0 ALT1 IN DE_IO 0 CLK_A>;
    216						rxclk = <&pio2 2 ALT1 IN NICLK 0 CLK_A>;
    217						clk125 = <&pio3 7 ALT4 IN NICLK 0 CLK_A>;
    218						phyclk = <&pio2 3 ALT4 OUT NICLK 1250 CLK_B>;
    219					};
    220				};
    221
    222				pinctrl_rgmii1_mdio: rgmii1-mdio {
    223					st,pins {
    224						mdio = <&pio1 0 ALT1 OUT BYPASS 0>;
    225						mdc = <&pio1 1 ALT1 OUT NICLK 0 CLK_A>;
    226						mdint = <&pio1 3 ALT1 IN BYPASS 0>;
    227					};
    228				};
    229
    230				pinctrl_rgmii1_mdio_1: rgmii1-mdio-1 {
    231					st,pins {
    232						mdio = <&pio1 0 ALT1 OUT BYPASS 0>;
    233						mdc = <&pio1 1 ALT1 OUT NICLK 0 CLK_A>;
    234					};
    235				};
    236
    237				pinctrl_mii1: mii1 {
    238					st,pins {
    239						txd0 = <&pio0 0 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    240						txd1 = <&pio0 1 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    241						txd2 = <&pio0 2 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    242						txd3 = <&pio0 3 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    243						txer = <&pio0 4 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    244						txen = <&pio0 5 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    245						txclk = <&pio0 6 ALT1 IN NICLK 0 CLK_A>;
    246						col = <&pio0 7 ALT1 IN BYPASS 1000>;
    247
    248						mdio = <&pio1 0 ALT1 OUT BYPASS 1500>;
    249						mdc = <&pio1 1 ALT1 OUT NICLK 0 CLK_A>;
    250						crs = <&pio1 2 ALT1 IN BYPASS 1000>;
    251						mdint = <&pio1 3 ALT1 IN BYPASS 0>;
    252						rxd0 = <&pio1 4 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    253						rxd1 = <&pio1 5 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    254						rxd2 = <&pio1 6 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    255						rxd3 = <&pio1 7 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    256
    257						rxdv = <&pio2 0 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    258						rx_er = <&pio2 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    259						rxclk = <&pio2 2 ALT1 IN NICLK 0 CLK_A>;
    260						phyclk = <&pio2 3 ALT1 OUT NICLK 0 CLK_A>;
    261					};
    262				};
    263
    264				pinctrl_rmii1: rmii1-0 {
    265					st,pins {
    266						txd0 = <&pio0 0 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    267						txd1 = <&pio0 1 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    268						txen = <&pio0 5 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    269						mdio = <&pio1 0 ALT1 OUT BYPASS 0>;
    270						mdc = <&pio1 1 ALT1 OUT NICLK 0 CLK_A>;
    271						mdint = <&pio1 3 ALT1 IN BYPASS 0>;
    272						rxd0 = <&pio1 4 ALT1 IN SE_NICLK_IO 0 CLK_B>;
    273						rxd1 = <&pio1 5 ALT1 IN SE_NICLK_IO 0 CLK_B>;
    274						rxdv = <&pio2 0 ALT1 IN SE_NICLK_IO 0 CLK_B>;
    275						rx_er = <&pio2 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    276					};
    277				};
    278
    279				pinctrl_rmii1_phyclk: rmii1_phyclk {
    280					st,pins {
    281						phyclk = <&pio2 3 ALT1 OUT NICLK 0 CLK_A>;
    282					};
    283				};
    284
    285				pinctrl_rmii1_phyclk_ext: rmii1_phyclk_ext {
    286					st,pins {
    287						phyclk = <&pio2 3 ALT2 IN NICLK 0 CLK_A>;
    288					};
    289				};
    290			};
    291
    292			pwm1 {
    293				pinctrl_pwm1_chan0_default: pwm1-0-default {
    294					st,pins {
    295						pwm-out = <&pio3 0 ALT1 OUT>;
    296						pwm-capturein = <&pio3 2 ALT1 IN>;
    297					};
    298				};
    299				pinctrl_pwm1_chan1_default: pwm1-1-default {
    300					st,pins {
    301						pwm-capturein = <&pio4 3 ALT1 IN>;
    302						pwm-out = <&pio4 4 ALT1 OUT>;
    303					};
    304				};
    305				pinctrl_pwm1_chan2_default: pwm1-2-default {
    306					st,pins {
    307						pwm-out = <&pio4 6 ALT3 OUT>;
    308					};
    309				};
    310				pinctrl_pwm1_chan3_default: pwm1-3-default {
    311					st,pins {
    312						pwm-out = <&pio4 7 ALT3 OUT>;
    313					};
    314				};
    315			};
    316
    317			spi10 {
    318				pinctrl_spi10_default: spi10-4w-alt1-0 {
    319					st,pins {
    320						mtsr = <&pio4 6 ALT1 OUT>;
    321						mrst = <&pio4 7 ALT1 IN>;
    322						scl = <&pio4 5 ALT1 OUT>;
    323					};
    324				};
    325
    326				pinctrl_spi10_3w_alt1_0: spi10-3w-alt1-0 {
    327					st,pins {
    328						mtsr = <&pio4 6 ALT1 BIDIR_PU>;
    329						scl = <&pio4 5 ALT1 OUT>;
    330					};
    331				};
    332			};
    333
    334			spi11 {
    335				pinctrl_spi11_default: spi11-4w-alt2-0 {
    336					st,pins {
    337						mtsr = <&pio3 1 ALT2 OUT>;
    338						mrst = <&pio3 0 ALT2 IN>;
    339						scl = <&pio3 2 ALT2 OUT>;
    340					};
    341				};
    342
    343				pinctrl_spi11_3w_alt2_0: spi11-3w-alt2-0 {
    344					st,pins {
    345						mtsr = <&pio3 1 ALT2 BIDIR_PU>;
    346						scl = <&pio3 2 ALT2 OUT>;
    347					};
    348				};
    349			};
    350
    351			spi12 {
    352				pinctrl_spi12_default: spi12-4w-alt2-0 {
    353					st,pins {
    354						mtsr = <&pio3 6 ALT2 OUT>;
    355						mrst = <&pio3 4 ALT2 IN>;
    356						scl = <&pio3 7 ALT2 OUT>;
    357					};
    358				};
    359
    360				pinctrl_spi12_3w_alt2_0: spi12-3w-alt2-0 {
    361					st,pins {
    362						mtsr = <&pio3 6 ALT2 BIDIR_PU>;
    363						scl = <&pio3 7 ALT2 OUT>;
    364					};
    365				};
    366			};
    367		};
    368
    369		pin-controller-front0@920f080 {
    370			#address-cells = <1>;
    371			#size-cells = <1>;
    372			compatible = "st,stih407-front-pinctrl";
    373			st,syscfg = <&syscfg_front>;
    374			reg = <0x0920f080 0x4>;
    375			reg-names = "irqmux";
    376			interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
    377			interrupt-names = "irqmux";
    378			ranges = <0 0x09200000 0x10000>;
    379
    380			pio10: pio@9200000 {
    381				gpio-controller;
    382				#gpio-cells = <2>;
    383				interrupt-controller;
    384				#interrupt-cells = <2>;
    385				reg = <0x0 0x100>;
    386				st,bank-name = "PIO10";
    387			};
    388			pio11: pio@9201000 {
    389				gpio-controller;
    390				#gpio-cells = <2>;
    391				interrupt-controller;
    392				#interrupt-cells = <2>;
    393				reg = <0x1000 0x100>;
    394				st,bank-name = "PIO11";
    395			};
    396			pio12: pio@9202000 {
    397				gpio-controller;
    398				#gpio-cells = <2>;
    399				interrupt-controller;
    400				#interrupt-cells = <2>;
    401				reg = <0x2000 0x100>;
    402				st,bank-name = "PIO12";
    403			};
    404			pio13: pio@9203000 {
    405				gpio-controller;
    406				#gpio-cells = <2>;
    407				interrupt-controller;
    408				#interrupt-cells = <2>;
    409				reg = <0x3000 0x100>;
    410				st,bank-name = "PIO13";
    411			};
    412			pio14: pio@9204000 {
    413				gpio-controller;
    414				#gpio-cells = <2>;
    415				interrupt-controller;
    416				#interrupt-cells = <2>;
    417				reg = <0x4000 0x100>;
    418				st,bank-name = "PIO14";
    419			};
    420			pio15: pio@9205000 {
    421				gpio-controller;
    422				#gpio-cells = <2>;
    423				interrupt-controller;
    424				#interrupt-cells = <2>;
    425				reg = <0x5000 0x100>;
    426				st,bank-name = "PIO15";
    427			};
    428			pio16: pio@9206000 {
    429				gpio-controller;
    430				#gpio-cells = <2>;
    431				interrupt-controller;
    432				#interrupt-cells = <2>;
    433				reg = <0x6000 0x100>;
    434				st,bank-name = "PIO16";
    435			};
    436			pio17: pio@9207000 {
    437				gpio-controller;
    438				#gpio-cells = <2>;
    439				interrupt-controller;
    440				#interrupt-cells = <2>;
    441				reg = <0x7000 0x100>;
    442				st,bank-name = "PIO17";
    443			};
    444			pio18: pio@9208000 {
    445				gpio-controller;
    446				#gpio-cells = <2>;
    447				interrupt-controller;
    448				#interrupt-cells = <2>;
    449				reg = <0x8000 0x100>;
    450				st,bank-name = "PIO18";
    451			};
    452			pio19: pio@9209000 {
    453				gpio-controller;
    454				#gpio-cells = <2>;
    455				interrupt-controller;
    456				#interrupt-cells = <2>;
    457				reg = <0x9000 0x100>;
    458				st,bank-name = "PIO19";
    459			};
    460
    461			/* Comms */
    462			serial0 {
    463				pinctrl_serial0: serial0-0 {
    464					st,pins {
    465						tx =  <&pio17 0 ALT1 OUT>;
    466						rx =  <&pio17 1 ALT1 IN>;
    467					};
    468				};
    469				pinctrl_serial0_hw_flowctrl: serial0-0_hw_flowctrl {
    470					st,pins {
    471						tx =  <&pio17 0 ALT1 OUT>;
    472						rx =  <&pio17 1 ALT1 IN>;
    473						cts = <&pio17 2 ALT1 IN>;
    474						rts = <&pio17 3 ALT1 OUT>;
    475					};
    476				};
    477			};
    478
    479			serial1 {
    480				pinctrl_serial1: serial1-0 {
    481					st,pins {
    482						tx = <&pio16 0 ALT1 OUT>;
    483						rx = <&pio16 1 ALT1 IN>;
    484					};
    485				};
    486			};
    487
    488			serial2 {
    489				pinctrl_serial2: serial2-0 {
    490					st,pins {
    491						tx = <&pio15 0 ALT1 OUT>;
    492						rx = <&pio15 1 ALT1 IN>;
    493					};
    494				};
    495			};
    496
    497			mmc1 {
    498				pinctrl_sd1: sd1-0 {
    499					st,pins {
    500						sd_clk = <&pio19 3 ALT5 BIDIR NICLK 0 CLK_B>;
    501						sd_cmd = <&pio19 2 ALT5 BIDIR_PU BYPASS 0>;
    502						sd_dat0 = <&pio19 4 ALT5 BIDIR_PU BYPASS 0>;
    503						sd_dat1 = <&pio19 5 ALT5 BIDIR_PU BYPASS 0>;
    504						sd_dat2 = <&pio19 6 ALT5 BIDIR_PU BYPASS 0>;
    505						sd_dat3 = <&pio19 7 ALT5 BIDIR_PU BYPASS 0>;
    506						sd_led = <&pio16 6 ALT6 OUT>;
    507						sd_pwren = <&pio16 7 ALT6 OUT>;
    508						sd_cd = <&pio19 0 ALT6 IN>;
    509						sd_wp = <&pio19 1 ALT6 IN>;
    510					};
    511				};
    512			};
    513
    514
    515			i2c0 {
    516				pinctrl_i2c0_default: i2c0-default {
    517					st,pins {
    518						sda = <&pio10 6 ALT2 BIDIR>;
    519						scl = <&pio10 5 ALT2 BIDIR>;
    520					};
    521				};
    522			};
    523
    524			i2c1 {
    525				pinctrl_i2c1_default: i2c1-default {
    526					st,pins {
    527						sda = <&pio11 1 ALT2 BIDIR>;
    528						scl = <&pio11 0 ALT2 BIDIR>;
    529					};
    530				};
    531			};
    532
    533			i2c2 {
    534				pinctrl_i2c2_default: i2c2-default {
    535					st,pins {
    536						sda = <&pio15 6 ALT2 BIDIR>;
    537						scl = <&pio15 5 ALT2 BIDIR>;
    538					};
    539				};
    540
    541				pinctrl_i2c2_alt2_1: i2c2-alt2-1 {
    542					st,pins {
    543						sda = <&pio12 6 ALT2 BIDIR>;
    544						scl = <&pio12 5 ALT2 BIDIR>;
    545					};
    546				};
    547			};
    548
    549			i2c3 {
    550				pinctrl_i2c3_default: i2c3-alt1-0 {
    551					st,pins {
    552						sda = <&pio18 6 ALT1 BIDIR>;
    553						scl = <&pio18 5 ALT1 BIDIR>;
    554					};
    555				};
    556				pinctrl_i2c3_alt1_1: i2c3-alt1-1 {
    557					st,pins {
    558						sda = <&pio17 7 ALT1 BIDIR>;
    559						scl = <&pio17 6 ALT1 BIDIR>;
    560					};
    561				};
    562				pinctrl_i2c3_alt3_0: i2c3-alt3-0 {
    563					st,pins {
    564						sda = <&pio13 6 ALT3 BIDIR>;
    565						scl = <&pio13 5 ALT3 BIDIR>;
    566					};
    567				};
    568			};
    569
    570			spi0 {
    571				pinctrl_spi0_default: spi0-4w-alt2-0 {
    572					st,pins {
    573						mtsr = <&pio10 6 ALT2 OUT>;
    574						mrst = <&pio10 7 ALT2 IN>;
    575						scl = <&pio10 5 ALT2 OUT>;
    576					};
    577				};
    578
    579				pinctrl_spi0_3w_alt2_0: spi0-3w-alt2-0 {
    580					st,pins {
    581						mtsr = <&pio10 6 ALT2 BIDIR_PU>;
    582						scl = <&pio10 5 ALT2 OUT>;
    583					};
    584				};
    585
    586				pinctrl_spi0_4w_alt1_0: spi0-4w-alt1-0 {
    587					st,pins {
    588						mtsr = <&pio19 7 ALT1 OUT>;
    589						mrst = <&pio19 5 ALT1 IN>;
    590						scl = <&pio19 6 ALT1 OUT>;
    591					};
    592				};
    593
    594				pinctrl_spi0_3w_alt1_0: spi0-3w-alt1-0 {
    595					st,pins {
    596						mtsr = <&pio19 7 ALT1 BIDIR_PU>;
    597						scl = <&pio19 6 ALT1 OUT>;
    598					};
    599				};
    600			};
    601
    602			spi1 {
    603				pinctrl_spi1_default: spi1-4w-alt2-0 {
    604					st,pins {
    605						mtsr = <&pio11 1 ALT2 OUT>;
    606						mrst = <&pio11 2 ALT2 IN>;
    607						scl = <&pio11 0 ALT2 OUT>;
    608					};
    609				};
    610
    611				pinctrl_spi1_3w_alt2_0: spi1-3w-alt2-0 {
    612					st,pins {
    613						mtsr = <&pio11 1 ALT2 BIDIR_PU>;
    614						scl = <&pio11 0 ALT2 OUT>;
    615					};
    616				};
    617
    618				pinctrl_spi1_4w_alt1_0: spi1-4w-alt1-0 {
    619					st,pins {
    620						mtsr = <&pio14 3 ALT1 OUT>;
    621						mrst = <&pio14 4 ALT1 IN>;
    622						scl = <&pio14 2 ALT1 OUT>;
    623					};
    624				};
    625
    626				pinctrl_spi1_3w_alt1_0: spi1-3w-alt1-0 {
    627					st,pins {
    628						mtsr = <&pio14 3 ALT1 BIDIR_PU>;
    629						scl = <&pio14 2 ALT1 OUT>;
    630					};
    631				};
    632			};
    633
    634			spi2 {
    635				pinctrl_spi2_default: spi2-4w-alt2-0 {
    636					st,pins {
    637						mtsr = <&pio12 6 ALT2 OUT>;
    638						mrst = <&pio12 7 ALT2 IN>;
    639						scl = <&pio12 5 ALT2 OUT>;
    640					};
    641				};
    642
    643				pinctrl_spi2_3w_alt2_0: spi2-3w-alt2-0 {
    644					st,pins {
    645						mtsr = <&pio12 6 ALT2 BIDIR_PU>;
    646						scl = <&pio12 5 ALT2 OUT>;
    647					};
    648				};
    649
    650				pinctrl_spi2_4w_alt1_0: spi2-4w-alt1-0 {
    651					st,pins {
    652						mtsr = <&pio14 6 ALT1 OUT>;
    653						mrst = <&pio14 7 ALT1 IN>;
    654						scl = <&pio14 5 ALT1 OUT>;
    655					};
    656				};
    657
    658				pinctrl_spi2_3w_alt1_0: spi2-3w-alt1-0 {
    659					st,pins {
    660						mtsr = <&pio14 6 ALT1 BIDIR_PU>;
    661						scl = <&pio14 5 ALT1 OUT>;
    662					};
    663				};
    664
    665				pinctrl_spi2_4w_alt2_1: spi2-4w-alt2-1 {
    666					st,pins {
    667						mtsr = <&pio15 6 ALT2 OUT>;
    668						mrst = <&pio15 7 ALT2 IN>;
    669						scl = <&pio15 5 ALT2 OUT>;
    670					};
    671				};
    672
    673				pinctrl_spi2_3w_alt2_1: spi2-3w-alt2-1 {
    674					st,pins {
    675						mtsr = <&pio15 6 ALT2 BIDIR_PU>;
    676						scl = <&pio15 5 ALT2 OUT>;
    677					};
    678				};
    679			};
    680
    681			spi3 {
    682				pinctrl_spi3_default: spi3-4w-alt3-0 {
    683					st,pins {
    684						mtsr = <&pio13 6 ALT3 OUT>;
    685						mrst = <&pio13 7 ALT3 IN>;
    686						scl = <&pio13 5 ALT3 OUT>;
    687					};
    688				};
    689
    690				pinctrl_spi3_3w_alt3_0: spi3-3w-alt3-0 {
    691					st,pins {
    692						mtsr = <&pio13 6 ALT3 BIDIR_PU>;
    693						scl = <&pio13 5 ALT3 OUT>;
    694					};
    695				};
    696
    697				pinctrl_spi3_4w_alt1_0: spi3-4w-alt1-0 {
    698					st,pins {
    699						mtsr = <&pio17 7 ALT1 OUT>;
    700						mrst = <&pio17 5 ALT1 IN>;
    701						scl = <&pio17 6 ALT1 OUT>;
    702					};
    703				};
    704
    705				pinctrl_spi3_3w_alt1_0: spi3-3w-alt1-0 {
    706					st,pins {
    707						mtsr = <&pio17 7 ALT1 BIDIR_PU>;
    708						scl = <&pio17 6 ALT1 OUT>;
    709					};
    710				};
    711
    712				pinctrl_spi3_4w_alt1_1: spi3-4w-alt1-1 {
    713					st,pins {
    714						mtsr = <&pio18 6 ALT1 OUT>;
    715						mrst = <&pio18 7 ALT1 IN>;
    716						scl = <&pio18 5 ALT1 OUT>;
    717					};
    718				};
    719
    720				pinctrl_spi3_3w_alt1_1: spi3-3w-alt1-1 {
    721					st,pins {
    722						mtsr = <&pio18 6 ALT1 BIDIR_PU>;
    723						scl = <&pio18 5 ALT1 OUT>;
    724					};
    725				};
    726			};
    727
    728			tsin0 {
    729				pinctrl_tsin0_parallel: tsin0_parallel {
    730					st,pins {
    731						DATA7 = <&pio10 4 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    732						DATA6 = <&pio10 5 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    733						DATA5 = <&pio10 6 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    734						DATA4 = <&pio10 7 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    735						DATA3 = <&pio11 0 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    736						DATA2 = <&pio11 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    737						DATA1 = <&pio11 2 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    738						DATA0 = <&pio11 3 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    739						CLKIN = <&pio10 3 ALT1 IN CLKNOTDATA 0 CLK_A>;
    740						VALID = <&pio10 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    741						ERROR = <&pio10 0 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    742						PKCLK = <&pio10 2 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    743					};
    744				};
    745				pinctrl_tsin0_serial: tsin0_serial {
    746					st,pins {
    747						DATA7 = <&pio10 4 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    748						CLKIN = <&pio10 3 ALT1 IN CLKNOTDATA 0 CLK_A>;
    749						VALID = <&pio10 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    750						ERROR = <&pio10 0 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    751						PKCLK = <&pio10 2 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    752					};
    753				};
    754			};
    755
    756			tsin1 {
    757				pinctrl_tsin1_parallel: tsin1_parallel {
    758					st,pins {
    759						DATA7 = <&pio12 0 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    760						DATA6 = <&pio12 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    761						DATA5 = <&pio12 2 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    762						DATA4 = <&pio12 3 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    763						DATA3 = <&pio12 4 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    764						DATA2 = <&pio12 5 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    765						DATA1 = <&pio12 6 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    766						DATA0 = <&pio12 7 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    767						CLKIN = <&pio11 7 ALT1 IN CLKNOTDATA 0 CLK_A>;
    768						VALID = <&pio11 5 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    769						ERROR = <&pio11 4 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    770						PKCLK = <&pio11 6 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    771					};
    772				};
    773				pinctrl_tsin1_serial: tsin1_serial {
    774					st,pins {
    775						DATA7 = <&pio12 0 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    776						CLKIN = <&pio11 7 ALT1 IN CLKNOTDATA 0 CLK_A>;
    777						VALID = <&pio11 5 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    778						ERROR = <&pio11 4 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    779						PKCLK = <&pio11 6 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    780					};
    781				};
    782			};
    783
    784			tsin2 {
    785				pinctrl_tsin2_parallel: tsin2_parallel {
    786					st,pins {
    787						DATA7 = <&pio13 4 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    788						DATA6 = <&pio13 5 ALT2 IN SE_NICLK_IO 0 CLK_B>;
    789						DATA5 = <&pio13 6 ALT2 IN SE_NICLK_IO 0 CLK_B>;
    790						DATA4 = <&pio13 7 ALT2 IN SE_NICLK_IO 0 CLK_B>;
    791						DATA3 = <&pio14 0 ALT2 IN SE_NICLK_IO 0 CLK_A>;
    792						DATA2 = <&pio14 1 ALT2 IN SE_NICLK_IO 0 CLK_B>;
    793						DATA1 = <&pio14 2 ALT2 IN SE_NICLK_IO 0 CLK_A>;
    794						DATA0 = <&pio14 3 ALT2 IN SE_NICLK_IO 0 CLK_A>;
    795						CLKIN = <&pio13 3 ALT1 IN CLKNOTDATA 0 CLK_A>;
    796						VALID = <&pio13 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    797						ERROR = <&pio13 0 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    798						PKCLK = <&pio13 2 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    799					};
    800				};
    801				pinctrl_tsin2_serial: tsin2_serial {
    802					st,pins {
    803						DATA7 = <&pio13 4 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    804						CLKIN = <&pio13 3 ALT1 IN CLKNOTDATA 0 CLK_A>;
    805						VALID = <&pio13 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    806						ERROR = <&pio13 0 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    807						PKCLK = <&pio13 2 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    808					};
    809				};
    810			};
    811
    812			tsin3 {
    813				pinctrl_tsin3_serial: tsin3_serial {
    814					st,pins {
    815						DATA7 = <&pio14 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    816						CLKIN = <&pio14 0 ALT1 IN CLKNOTDATA 0 CLK_A>;
    817						VALID = <&pio13 6 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    818						ERROR = <&pio13 5 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    819						PKCLK = <&pio13 7 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    820					};
    821				};
    822			};
    823
    824			tsin4 {
    825				pinctrl_tsin4_serial_alt3: tsin4_serial_alt3 {
    826					st,pins {
    827						DATA7 = <&pio14 6 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    828						CLKIN = <&pio14 5 ALT3 IN CLKNOTDATA 0 CLK_A>;
    829						VALID = <&pio14 3 ALT3 IN SE_NICLK_IO 0 CLK_B>;
    830						ERROR = <&pio14 2 ALT3 IN SE_NICLK_IO 0 CLK_B>;
    831						PKCLK = <&pio14 4 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    832					};
    833				};
    834			};
    835
    836			tsin5 {
    837				pinctrl_tsin5_serial_alt1: tsin5_serial_alt1 {
    838					st,pins {
    839						DATA7 = <&pio18 4 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    840						CLKIN = <&pio18 3 ALT1 IN CLKNOTDATA 0 CLK_A>;
    841						VALID = <&pio18 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    842						ERROR = <&pio18 0 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    843						PKCLK = <&pio18 2 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    844					};
    845				};
    846				pinctrl_tsin5_serial_alt2: tsin5_serial_alt2 {
    847					st,pins {
    848						DATA7 = <&pio19 4 ALT2 IN SE_NICLK_IO 0 CLK_A>;
    849						CLKIN = <&pio19 3 ALT2 IN CLKNOTDATA 0 CLK_A>;
    850						VALID = <&pio19 1 ALT2 IN SE_NICLK_IO 0 CLK_A>;
    851						ERROR = <&pio19 0 ALT2 IN SE_NICLK_IO 0 CLK_A>;
    852						PKCLK = <&pio19 2 ALT2 IN SE_NICLK_IO 0 CLK_A>;
    853					};
    854				};
    855			};
    856
    857			tsout0 {
    858				pinctrl_tsout0_parallel: tsout0_parallel {
    859					st,pins {
    860						DATA7 = <&pio12 0 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    861						DATA6 = <&pio12 1 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    862						DATA5 = <&pio12 2 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    863						DATA4 = <&pio12 3 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    864						DATA3 = <&pio12 4 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    865						DATA2 = <&pio12 5 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    866						DATA1 = <&pio12 6 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    867						DATA0 = <&pio12 7 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    868						CLKIN = <&pio11 7 ALT3 OUT NICLK 0 CLK_A>;
    869						VALID = <&pio11 5 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    870						ERROR = <&pio11 4 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    871						PKCLK = <&pio11 6 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    872					};
    873				};
    874				pinctrl_tsout0_serial: tsout0_serial {
    875					st,pins {
    876						DATA7 = <&pio12 0 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    877						CLKIN = <&pio11 7 ALT3 OUT NICLK 0 CLK_A>;
    878						VALID = <&pio11 5 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    879						ERROR = <&pio11 4 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    880						PKCLK = <&pio11 6 ALT3 OUT SE_NICLK_IO 0 CLK_A>;
    881					};
    882				};
    883			};
    884
    885			tsout1 {
    886				pinctrl_tsout1_serial: tsout1_serial {
    887					st,pins {
    888						DATA7 = <&pio19 4 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    889						CLKIN = <&pio19 3 ALT1 OUT NICLK 0 CLK_A>;
    890						VALID = <&pio19 1 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    891						ERROR = <&pio19 0 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    892						PKCLK = <&pio19 2 ALT1 OUT SE_NICLK_IO 0 CLK_A>;
    893					};
    894				};
    895			};
    896
    897			mtsin0 {
    898				pinctrl_mtsin0_parallel: mtsin0_parallel {
    899					st,pins {
    900						DATA7 = <&pio10 4 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    901						DATA6 = <&pio10 5 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    902						DATA5 = <&pio10 6 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    903						DATA4 = <&pio10 7 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    904						DATA3 = <&pio11 0 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    905						DATA2 = <&pio11 1 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    906						DATA1 = <&pio11 2 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    907						DATA0 = <&pio11 3 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    908						CLKIN = <&pio10 3 ALT3 IN CLKNOTDATA 0 CLK_A>;
    909						VALID = <&pio10 1 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    910						ERROR = <&pio10 0 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    911						PKCLK = <&pio10 2 ALT3 IN SE_NICLK_IO 0 CLK_A>;
    912					};
    913				};
    914			};
    915
    916			systrace {
    917				pinctrl_systrace_default: systrace-default {
    918					st,pins {
    919						trc_data0 = <&pio11 3 ALT5 OUT>;
    920						trc_data1 = <&pio11 4 ALT5 OUT>;
    921						trc_data2 = <&pio11 5 ALT5 OUT>;
    922						trc_data3 = <&pio11 6 ALT5 OUT>;
    923						trc_clk   = <&pio11 7 ALT5 OUT>;
    924					};
    925				};
    926			};
    927		};
    928
    929		pin-controller-front1@921f080 {
    930			#address-cells = <1>;
    931			#size-cells = <1>;
    932			compatible = "st,stih407-front-pinctrl";
    933			st,syscfg = <&syscfg_front>;
    934			reg = <0x0921f080 0x4>;
    935			reg-names = "irqmux";
    936			interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
    937			interrupt-names = "irqmux";
    938			ranges = <0 0x09210000 0x10000>;
    939
    940			pio20: pio@9210000 {
    941				gpio-controller;
    942				#gpio-cells = <2>;
    943				interrupt-controller;
    944				#interrupt-cells = <2>;
    945				reg = <0x0 0x100>;
    946				st,bank-name = "PIO20";
    947			};
    948
    949			tsin4 {
    950				pinctrl_tsin4_serial_alt1: tsin4_serial_alt1 {
    951					st,pins {
    952						DATA7 = <&pio20 4 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    953						CLKIN = <&pio20 3 ALT1 IN CLKNOTDATA 0 CLK_A>;
    954						VALID = <&pio20 1 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    955						ERROR = <&pio20 0 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    956						PKCLK = <&pio20 2 ALT1 IN SE_NICLK_IO 0 CLK_A>;
    957					};
    958				};
    959			};
    960		};
    961
    962		pin-controller-rear@922f080 {
    963			#address-cells = <1>;
    964			#size-cells = <1>;
    965			compatible = "st,stih407-rear-pinctrl";
    966			st,syscfg = <&syscfg_rear>;
    967			reg = <0x0922f080 0x4>;
    968			reg-names = "irqmux";
    969			interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
    970			interrupt-names = "irqmux";
    971			ranges = <0 0x09220000 0x6000>;
    972
    973			pio30: gpio@9220000 {
    974				gpio-controller;
    975				#gpio-cells = <2>;
    976				interrupt-controller;
    977				#interrupt-cells = <2>;
    978				reg = <0x0 0x100>;
    979				st,bank-name = "PIO30";
    980			};
    981			pio31: gpio@9221000 {
    982				gpio-controller;
    983				#gpio-cells = <2>;
    984				interrupt-controller;
    985				#interrupt-cells = <2>;
    986				reg = <0x1000 0x100>;
    987				st,bank-name = "PIO31";
    988			};
    989			pio32: gpio@9222000 {
    990				gpio-controller;
    991				#gpio-cells = <2>;
    992				interrupt-controller;
    993				#interrupt-cells = <2>;
    994				reg = <0x2000 0x100>;
    995				st,bank-name = "PIO32";
    996			};
    997			pio33: gpio@9223000 {
    998				gpio-controller;
    999				#gpio-cells = <2>;
   1000				interrupt-controller;
   1001				#interrupt-cells = <2>;
   1002				reg = <0x3000 0x100>;
   1003				st,bank-name = "PIO33";
   1004			};
   1005			pio34: gpio@9224000 {
   1006				gpio-controller;
   1007				#gpio-cells = <2>;
   1008				interrupt-controller;
   1009				#interrupt-cells = <2>;
   1010				reg = <0x4000 0x100>;
   1011				st,bank-name = "PIO34";
   1012			};
   1013			pio35: gpio@9225000 {
   1014				gpio-controller;
   1015				#gpio-cells = <2>;
   1016				interrupt-controller;
   1017				#interrupt-cells = <2>;
   1018				reg = <0x5000 0x100>;
   1019				st,bank-name = "PIO35";
   1020				st,retime-pin-mask = <0x7f>;
   1021			};
   1022
   1023			i2c4 {
   1024				pinctrl_i2c4_default: i2c4-default {
   1025					st,pins {
   1026						sda = <&pio30 1 ALT1 BIDIR>;
   1027						scl = <&pio30 0 ALT1 BIDIR>;
   1028					};
   1029				};
   1030			};
   1031
   1032			i2c5 {
   1033				pinctrl_i2c5_default: i2c5-default {
   1034					st,pins {
   1035						sda = <&pio34 4 ALT1 BIDIR>;
   1036						scl = <&pio34 3 ALT1 BIDIR>;
   1037					};
   1038				};
   1039			};
   1040
   1041			usb3 {
   1042				pinctrl_usb3: usb3-2 {
   1043					st,pins {
   1044						usb-oc-detect = <&pio35 4 ALT1 IN>;
   1045						usb-pwr-enable = <&pio35 5 ALT1 OUT>;
   1046						usb-vbus-valid = <&pio35 6 ALT1 IN>;
   1047					};
   1048				};
   1049			};
   1050
   1051			pwm0 {
   1052				pinctrl_pwm0_chan0_default: pwm0-0-default {
   1053					st,pins {
   1054						pwm-capturein = <&pio31 0 ALT1 IN>;
   1055						pwm-out = <&pio31 1 ALT1 OUT>;
   1056					};
   1057				};
   1058			};
   1059
   1060			spi4 {
   1061				pinctrl_spi4_default: spi4-4w-alt1-0 {
   1062					st,pins {
   1063						mtsr = <&pio30 1 ALT1 OUT>;
   1064						mrst = <&pio30 2 ALT1 IN>;
   1065						scl = <&pio30 0 ALT1 OUT>;
   1066					};
   1067				};
   1068
   1069				pinctrl_spi4_3w_alt1_0: spi4-3w-alt1-0 {
   1070					st,pins {
   1071						mtsr = <&pio30 1 ALT1 BIDIR_PU>;
   1072						scl = <&pio30 0 ALT1 OUT>;
   1073					};
   1074				};
   1075
   1076				pinctrl_spi4_4w_alt3_0: spi4-4w-alt3-0 {
   1077					st,pins {
   1078						mtsr = <&pio34 1 ALT3 OUT>;
   1079						mrst = <&pio34 2 ALT3 IN>;
   1080						scl = <&pio34 0 ALT3 OUT>;
   1081					};
   1082				};
   1083
   1084				pinctrl_spi4_3w_alt3_0: spi4-3w-alt3-0 {
   1085					st,pins {
   1086						mtsr = <&pio34 1 ALT3 BIDIR_PU>;
   1087						scl = <&pio34 0 ALT3 OUT>;
   1088					};
   1089				};
   1090			};
   1091
   1092			i2s_out {
   1093				pinctrl_i2s_8ch_out: i2s_8ch_out{
   1094					st,pins {
   1095						mclk = <&pio33 5 ALT1 OUT>;
   1096						lrclk = <&pio33 7 ALT1 OUT>;
   1097						sclk = <&pio33 6 ALT1 OUT>;
   1098						data0 = <&pio33 4 ALT1 OUT>;
   1099						data1 = <&pio34 0 ALT1 OUT>;
   1100						data2 = <&pio34 1 ALT1 OUT>;
   1101						data3 = <&pio34 2 ALT1 OUT>;
   1102					};
   1103				};
   1104
   1105				pinctrl_i2s_2ch_out: i2s_2ch_out{
   1106					st,pins {
   1107						mclk = <&pio33 5 ALT1 OUT>;
   1108						lrclk = <&pio33 7 ALT1 OUT>;
   1109						sclk = <&pio33 6 ALT1 OUT>;
   1110						data0 = <&pio33 4 ALT1 OUT>;
   1111					};
   1112				};
   1113			};
   1114
   1115			i2s_in {
   1116				pinctrl_i2s_8ch_in: i2s_8ch_in{
   1117					st,pins {
   1118						mclk = <&pio32 5 ALT1 IN>;
   1119						lrclk = <&pio32 7 ALT1 IN>;
   1120						sclk = <&pio32 6 ALT1 IN>;
   1121						data0 = <&pio32 4 ALT1 IN>;
   1122						data1 = <&pio33 0 ALT1 IN>;
   1123						data2 = <&pio33 1 ALT1 IN>;
   1124						data3 = <&pio33 2 ALT1 IN>;
   1125						data4 = <&pio33 3 ALT1 IN>;
   1126					};
   1127				};
   1128
   1129				pinctrl_i2s_2ch_in: i2s_2ch_in{
   1130					st,pins {
   1131						mclk = <&pio32 5 ALT1 IN>;
   1132						lrclk = <&pio32 7 ALT1 IN>;
   1133						sclk = <&pio32 6 ALT1 IN>;
   1134						data0 = <&pio32 4 ALT1 IN>;
   1135					};
   1136				};
   1137			};
   1138
   1139			spdif_out {
   1140				pinctrl_spdif_out: spdif_out{
   1141					st,pins {
   1142						spdif_out = <&pio34 7 ALT1 OUT>;
   1143					};
   1144				};
   1145			};
   1146
   1147			serial3 {
   1148				pinctrl_serial3: serial3-0 {
   1149					st,pins {
   1150						tx = <&pio31 3 ALT1 OUT>;
   1151						rx = <&pio31 4 ALT1 IN>;
   1152					};
   1153				};
   1154			};
   1155		};
   1156
   1157		pin-controller-flash@923f080 {
   1158			#address-cells = <1>;
   1159			#size-cells = <1>;
   1160			compatible = "st,stih407-flash-pinctrl";
   1161			st,syscfg = <&syscfg_flash>;
   1162			reg = <0x0923f080 0x4>;
   1163			reg-names = "irqmux";
   1164			interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
   1165			interrupt-names = "irqmux";
   1166			ranges = <0 0x09230000 0x3000>;
   1167
   1168			pio40: gpio@9230000 {
   1169				gpio-controller;
   1170				#gpio-cells = <2>;
   1171				interrupt-controller;
   1172				#interrupt-cells = <2>;
   1173				reg = <0 0x100>;
   1174				st,bank-name = "PIO40";
   1175			};
   1176			pio41: gpio@9231000 {
   1177				gpio-controller;
   1178				#gpio-cells = <2>;
   1179				interrupt-controller;
   1180				#interrupt-cells = <2>;
   1181				reg = <0x1000 0x100>;
   1182				st,bank-name = "PIO41";
   1183			};
   1184			pio42: gpio@9232000 {
   1185				gpio-controller;
   1186				#gpio-cells = <2>;
   1187				interrupt-controller;
   1188				#interrupt-cells = <2>;
   1189				reg = <0x2000 0x100>;
   1190				st,bank-name = "PIO42";
   1191			};
   1192
   1193			mmc0 {
   1194				pinctrl_mmc0: mmc0-0 {
   1195					st,pins {
   1196						emmc_clk = <&pio40 6 ALT1 BIDIR>;
   1197						emmc_cmd = <&pio40 7 ALT1 BIDIR_PU>;
   1198						emmc_d0 = <&pio41 0 ALT1 BIDIR_PU>;
   1199						emmc_d1 = <&pio41 1 ALT1 BIDIR_PU>;
   1200						emmc_d2 = <&pio41 2 ALT1 BIDIR_PU>;
   1201						emmc_d3 = <&pio41 3 ALT1 BIDIR_PU>;
   1202						emmc_d4 = <&pio41 4 ALT1 BIDIR_PU>;
   1203						emmc_d5 = <&pio41 5 ALT1 BIDIR_PU>;
   1204						emmc_d6 = <&pio41 6 ALT1 BIDIR_PU>;
   1205						emmc_d7 = <&pio41 7 ALT1 BIDIR_PU>;
   1206					};
   1207				};
   1208				pinctrl_sd0: sd0-0 {
   1209					st,pins {
   1210						sd_clk = <&pio40 6 ALT1 BIDIR>;
   1211						sd_cmd = <&pio40 7 ALT1 BIDIR_PU>;
   1212						sd_dat0 = <&pio41 0 ALT1 BIDIR_PU>;
   1213						sd_dat1 = <&pio41 1 ALT1 BIDIR_PU>;
   1214						sd_dat2 = <&pio41 2 ALT1 BIDIR_PU>;
   1215						sd_dat3 = <&pio41 3 ALT1 BIDIR_PU>;
   1216						sd_led = <&pio42 0 ALT2 OUT>;
   1217						sd_pwren = <&pio42 2 ALT2 OUT>;
   1218						sd_vsel = <&pio42 3 ALT2 OUT>;
   1219						sd_cd = <&pio42 4 ALT2 IN>;
   1220						sd_wp = <&pio42 5 ALT2 IN>;
   1221					};
   1222				};
   1223			};
   1224
   1225			fsm {
   1226				pinctrl_fsm: fsm {
   1227					st,pins {
   1228						spi-fsm-clk = <&pio40 1 ALT1 OUT>;
   1229						spi-fsm-cs = <&pio40 0 ALT1 OUT>;
   1230						spi-fsm-mosi = <&pio40 2 ALT1 OUT>;
   1231						spi-fsm-miso = <&pio40 3 ALT1 IN>;
   1232						spi-fsm-hol = <&pio40 5 ALT1 OUT>;
   1233						spi-fsm-wp = <&pio40 4 ALT1 OUT>;
   1234					};
   1235				};
   1236			};
   1237
   1238			nand {
   1239				pinctrl_nand: nand {
   1240					st,pins {
   1241						nand_cs1 = <&pio40 6 ALT3 OUT>;
   1242						nand_cs0 = <&pio40 7 ALT3 OUT>;
   1243						nand_d0 = <&pio41 0 ALT3 BIDIR>;
   1244						nand_d1 = <&pio41 1 ALT3 BIDIR>;
   1245						nand_d2 = <&pio41 2 ALT3 BIDIR>;
   1246						nand_d3 = <&pio41 3 ALT3 BIDIR>;
   1247						nand_d4 = <&pio41 4 ALT3 BIDIR>;
   1248						nand_d5 = <&pio41 5 ALT3 BIDIR>;
   1249						nand_d6 = <&pio41 6 ALT3 BIDIR>;
   1250						nand_d7 = <&pio41 7 ALT3 BIDIR>;
   1251						nand_we = <&pio42 0 ALT3 OUT>;
   1252						nand_dqs = <&pio42 1 ALT3 OUT>;
   1253						nand_ale = <&pio42 2 ALT3 OUT>;
   1254						nand_cle = <&pio42 3 ALT3 OUT>;
   1255						nand_rnb = <&pio42 4 ALT3 IN>;
   1256						nand_oe = <&pio42 5 ALT3 OUT>;
   1257					};
   1258				};
   1259			};
   1260		};
   1261	};
   1262};