Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

CSR SiRFatlas7 GPIO controller bindings

Required properties:
- compatible	: "sirf,atlas7-gpio"
- reg		: Address range of the pinctrl registers
- interrupts	: Interrupts used by every GPIO group
- gpio-banks	: How many gpio banks on this controller
- gpio-controller : Indicates this device is a GPIO controller
- interrupt-controller  : Marks the device node as an interrupt controller

The GPIO controller also acts as an interrupt controller. It uses the default
two cells specifier as described in Documentation/devicetree/bindings/
interrupt-controller/interrupts.txt.

Example:

	gpio_0: gpio_mediam@17040000 {
		compatible = "sirf,atlas7-gpio";
		reg = <0x17040000 0x1000>;
		interrupts = <0 13 0>, <0 14 0>;

		#gpio-cells = <2>;
		#interrupt-cells = <2>;

		gpio-controller;
		interrupt-controller;

		gpio-banks = <2>;
		gpio-ranges = <&pinctrl 0 0 0>,
				<&pinctrl 32 0 0>;
		gpio-ranges-group-names = "lvds_gpio_grp",
					"uart_nand_gpio_grp";
	};

	leds {
		compatible = "gpio-leds";

		led1 {
			gpios = <&gpio_1 15 0>;
			...
		};

		led2 {
			gpios = <&gpio_2 34 0>;
			...
		};
	};

Please refer to gpio.txt in this directory for details of the common
gpio properties used by devices.