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

Netlogic XLP Family GPIO
========================

This GPIO driver is used for following Netlogic XLP SoCs:
	XLP832, XLP316, XLP208, XLP980, XLP532
This GPIO driver is also compatible with GPIO controller found on
Broadcom Vulcan ARM64.

Required properties:
-------------------

- compatible: Should be one of the following:
  - "netlogic,xlp832-gpio": For Netlogic XLP832
  - "netlogic,xlp316-gpio": For Netlogic XLP316
  - "netlogic,xlp208-gpio": For Netlogic XLP208
  - "netlogic,xlp980-gpio": For Netlogic XLP980
  - "netlogic,xlp532-gpio": For Netlogic XLP532
  - "brcm,vulcan-gpio": For Broadcom Vulcan ARM64
- reg: Physical base address and length of the controller's registers.
- #gpio-cells: Should be two. The first cell is the pin number and the second
  cell is used to specify optional parameters (currently unused).
- gpio-controller: Marks the device node as a GPIO controller.
- nr-gpios: Number of GPIO pins supported by the controller.
- interrupt-cells: Should be two. The first cell is the GPIO Number. The
  second cell is used to specify flags. The following subset of flags is
  supported:
  - trigger type:
	1 = low to high edge triggered.
	2 = high to low edge triggered.
	4 = active high level-sensitive.
	8 = active low level-sensitive.
- interrupts: Interrupt number for this device.
- interrupt-parent: phandle of the parent interrupt controller.
- interrupt-controller: Identifies the node as an interrupt controller.

Example:

	gpio: xlp_gpio@34000 {
		compatible = "netlogic,xlp316-gpio";
		reg = <0 0x34100 0x1000
		       0 0x35100 0x1000>;
		#gpio-cells = <2>;
		gpio-controller;
		nr-gpios = <57>;

		#interrupt-cells = <2>;
		interrupt-parent = <&pic>;
		interrupts = <39>;
		interrupt-controller;
	};