1*c66ec88fSEmmanuel VadotNXP LPC18xx/43xx SCU pin controller Device Tree Bindings 2*c66ec88fSEmmanuel Vadot-------------------------------------------------------- 3*c66ec88fSEmmanuel Vadot 4*c66ec88fSEmmanuel VadotRequired properties: 5*c66ec88fSEmmanuel Vadot- compatible : Should be "nxp,lpc1850-scu" 6*c66ec88fSEmmanuel Vadot- reg : Address and length of the register set for the device 7*c66ec88fSEmmanuel Vadot- clocks : Clock specifier (see clock bindings for details) 8*c66ec88fSEmmanuel Vadot 9*c66ec88fSEmmanuel VadotThe lpc1850-scu driver uses the generic pin multiplexing and generic pin 10*c66ec88fSEmmanuel Vadotconfiguration documented in pinctrl-bindings.txt. 11*c66ec88fSEmmanuel Vadot 12*c66ec88fSEmmanuel VadotThe following generic nodes are supported: 13*c66ec88fSEmmanuel Vadot - function 14*c66ec88fSEmmanuel Vadot - pins 15*c66ec88fSEmmanuel Vadot - bias-disable 16*c66ec88fSEmmanuel Vadot - bias-pull-up 17*c66ec88fSEmmanuel Vadot - bias-pull-down 18*c66ec88fSEmmanuel Vadot - drive-strength 19*c66ec88fSEmmanuel Vadot - input-enable 20*c66ec88fSEmmanuel Vadot - input-disable 21*c66ec88fSEmmanuel Vadot - input-schmitt-enable 22*c66ec88fSEmmanuel Vadot - input-schmitt-disable 23*c66ec88fSEmmanuel Vadot - slew-rate 24*c66ec88fSEmmanuel Vadot 25*c66ec88fSEmmanuel VadotNXP specific properties: 26*c66ec88fSEmmanuel Vadot - nxp,gpio-pin-interrupt : Assign pin to gpio pin interrupt controller 27*c66ec88fSEmmanuel Vadot irq number 0 to 7. See example below. 28*c66ec88fSEmmanuel Vadot 29*c66ec88fSEmmanuel VadotNot all pins support all properties so either refer to the NXP 1850/4350 30*c66ec88fSEmmanuel Vadotuser manual or the pin table in the pinctrl-lpc18xx driver for supported 31*c66ec88fSEmmanuel Vadotpin properties. 32*c66ec88fSEmmanuel Vadot 33*c66ec88fSEmmanuel VadotExample: 34*c66ec88fSEmmanuel Vadotpinctrl: pinctrl@40086000 { 35*c66ec88fSEmmanuel Vadot compatible = "nxp,lpc1850-scu"; 36*c66ec88fSEmmanuel Vadot reg = <0x40086000 0x1000>; 37*c66ec88fSEmmanuel Vadot clocks = <&ccu1 CLK_CPU_SCU>; 38*c66ec88fSEmmanuel Vadot 39*c66ec88fSEmmanuel Vadot i2c0_pins: i2c0-pins { 40*c66ec88fSEmmanuel Vadot i2c0_pins_cfg { 41*c66ec88fSEmmanuel Vadot pins = "i2c0_scl", "i2c0_sda"; 42*c66ec88fSEmmanuel Vadot function = "i2c0"; 43*c66ec88fSEmmanuel Vadot input-enable; 44*c66ec88fSEmmanuel Vadot }; 45*c66ec88fSEmmanuel Vadot }; 46*c66ec88fSEmmanuel Vadot 47*c66ec88fSEmmanuel Vadot uart0_pins: uart0-pins { 48*c66ec88fSEmmanuel Vadot uart0_rx_cfg { 49*c66ec88fSEmmanuel Vadot pins = "pf_11"; 50*c66ec88fSEmmanuel Vadot function = "uart0"; 51*c66ec88fSEmmanuel Vadot bias-disable; 52*c66ec88fSEmmanuel Vadot input-enable; 53*c66ec88fSEmmanuel Vadot }; 54*c66ec88fSEmmanuel Vadot 55*c66ec88fSEmmanuel Vadot uart0_tx_cfg { 56*c66ec88fSEmmanuel Vadot pins = "pf_10"; 57*c66ec88fSEmmanuel Vadot function = "uart0"; 58*c66ec88fSEmmanuel Vadot bias-disable; 59*c66ec88fSEmmanuel Vadot }; 60*c66ec88fSEmmanuel Vadot }; 61*c66ec88fSEmmanuel Vadot 62*c66ec88fSEmmanuel Vadot gpio_joystick_pins: gpio-joystick-pins { 63*c66ec88fSEmmanuel Vadot gpio_joystick_1_cfg { 64*c66ec88fSEmmanuel Vadot pins = "p9_0"; 65*c66ec88fSEmmanuel Vadot function = "gpio"; 66*c66ec88fSEmmanuel Vadot nxp,gpio-pin-interrupt = <0>; 67*c66ec88fSEmmanuel Vadot input-enable; 68*c66ec88fSEmmanuel Vadot bias-disable; 69*c66ec88fSEmmanuel Vadot }; 70*c66ec88fSEmmanuel Vadot }; 71*c66ec88fSEmmanuel Vadot}; 72