The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/gpio/microchip,pic32-gpio.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 * Microchip PIC32 GPIO devices (PIO).
    2 
    3 Required properties:
    4  - compatible: "microchip,pic32mzda-gpio"
    5  - reg: Base address and length for the device.
    6  - interrupts: The port interrupt shared by all pins.
    7  - gpio-controller: Marks the port as GPIO controller.
    8  - #gpio-cells: Two. The first cell is the pin number and
    9    the second cell is used to specify the gpio polarity as defined in
   10    defined in <dt-bindings/gpio/gpio.h>:
   11       0 = GPIO_ACTIVE_HIGH
   12       1 = GPIO_ACTIVE_LOW
   13       2 = GPIO_OPEN_DRAIN
   14  - interrupt-controller: Marks the device node as an interrupt controller.
   15  - #interrupt-cells: Two. The first cell is the GPIO number and second cell
   16    is used to specify the trigger type as defined in
   17    <dt-bindings/interrupt-controller/irq.h>:
   18       IRQ_TYPE_EDGE_RISING
   19       IRQ_TYPE_EDGE_FALLING
   20       IRQ_TYPE_EDGE_BOTH
   21  - clocks: Clock specifier (see clock bindings for details).
   22  - microchip,gpio-bank: Specifies which bank a controller owns.
   23  - gpio-ranges: Interaction with the PINCTRL subsystem.
   24 
   25 Example:
   26 
   27 /* PORTA */
   28 gpio0: gpio0@1f860000 {
   29         compatible = "microchip,pic32mzda-gpio";
   30         reg = <0x1f860000 0x100>;
   31         interrupts = <118 IRQ_TYPE_LEVEL_HIGH>;
   32         #gpio-cells = <2>;
   33         gpio-controller;
   34         interrupt-controller;
   35         #interrupt-cells = <2>;
   36         clocks = <&rootclk PB4CLK>;
   37         microchip,gpio-bank = <0>;
   38         gpio-ranges = <&pic32_pinctrl 0 0 16>;
   39 };
   40 
   41 keys {
   42         ...
   43 
   44         button@sw1 {
   45                 label = "ESC";
   46                 linux,code = <1>;
   47                 gpios = <&gpio0 12 0>;
   48         };
   49 };

Cache object: d5ae2991a174bb939c4a5af282245b4c


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.