81 lines · plain
1Abilis Systems TB10x pin controller2===================================3 4Required properties5-------------------6 7- compatible: should be "abilis,tb10x-iomux";8- reg: should contain the physical address and size of the pin controller's9 register range.10 11 12Function definitions13--------------------14 15Functions are defined (and referenced) by sub-nodes of the pin controller.16Every sub-node defines exactly one function (implying a set of pins).17Every function is associated to one named pin group inside the pin controller18driver and these names are used to associate pin group predefinitions to pin19controller sub-nodes.20 21Required function definition subnode properties:22 - abilis,function: should be set to the name of the function's pin group.23 24The following pin groups are available:25 - GPIO ports: gpioa, gpiob, gpioc, gpiod, gpioe, gpiof, gpiog,26 gpioh, gpioi, gpioj, gpiok, gpiol, gpiom, gpion27 - Serial TS input ports: mis0, mis1, mis2, mis3, mis4, mis5, mis6, mis728 - Parallel TS input ports: mip1, mip3, mip5, mip729 - Serial TS output ports: mos0, mos1, mos2, mos330 - Parallel TS output port: mop31 - CI+ port: ciplus32 - CableCard (Mcard) port: mcard33 - Smart card ports: stc0, stc134 - UART ports: uart0, uart135 - SPI ports: spi1, spi336 - JTAG: jtag37 38All other ports of the chip are not multiplexed and thus not managed by this39driver.40 41 42GPIO ranges definition43----------------------44 45The named pin groups of GPIO ports can be used to define GPIO ranges as46explained in Documentation/devicetree/bindings/gpio/gpio.txt.47 48 49Example50-------51 52iomux: iomux@ff10601c {53 compatible = "abilis,tb10x-iomux";54 reg = <0xFF10601c 0x4>;55 pctl_gpio_a: pctl-gpio-a {56 abilis,function = "gpioa";57 };58 pctl_uart0: pctl-uart0 {59 abilis,function = "uart0";60 };61};62uart@ff100000 {63 compatible = "snps,dw-apb-uart";64 reg = <0xFF100000 0x100>;65 clock-frequency = <166666666>;66 interrupts = <25 1>;67 reg-shift = <2>;68 reg-io-width = <4>;69 pinctrl-names = "default";70 pinctrl-0 = <&pctl_uart0>;71};72gpioa: gpio@ff140000 {73 compatible = "abilis,tb10x-gpio";74 reg = <0xFF140000 0x1000>;75 gpio-controller;76 #gpio-cells = <2>;77 ngpio = <3>;78 gpio-ranges = <&iomux 0 0>;79 gpio-ranges-group-names = "gpioa";80};81