brintos

brintos / linux-shallow public Read only

0
0
Text · 2.2 KiB · c591b9c Raw
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