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/pinctrl/cnxt,cx92755-pinctrl.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 Conexant Digicolor CX92755 General Purpose Pin Mapping
    2 
    3 This document describes the device tree binding of the pin mapping hardware
    4 modules in the Conexant Digicolor CX92755 SoCs. The CX92755 in one of the
    5 Digicolor series of SoCs.
    6 
    7 === Pin Controller Node ===
    8 
    9 Required Properties:
   10 
   11 - compatible: Must be "cnxt,cx92755-pinctrl"
   12 - reg: Base address of the General Purpose Pin Mapping register block and the
   13   size of the block.
   14 - gpio-controller: Marks the device node as a GPIO controller.
   15 - #gpio-cells: Must be <2>. The first cell is the pin number and the
   16   second cell is used to specify flags. See include/dt-bindings/gpio/gpio.h
   17   for possible values.
   18 
   19 For example, the following is the bare minimum node:
   20 
   21         pinctrl: pinctrl@f0000e20 {
   22                 compatible = "cnxt,cx92755-pinctrl";
   23                 reg = <0xf0000e20 0x100>;
   24                 gpio-controller;
   25                 #gpio-cells = <2>;
   26         };
   27 
   28 As a pin controller device, in addition to the required properties, this node
   29 should also contain the pin configuration nodes that client devices reference,
   30 if any.
   31 
   32 For a general description of GPIO bindings, please refer to ../gpio/gpio.txt.
   33 
   34 === Pin Configuration Node ===
   35 
   36 Each pin configuration node is a sub-node of the pin controller node and is a
   37 container of an arbitrary number of subnodes, called pin group nodes in this
   38 document.
   39 
   40 Please refer to the pinctrl-bindings.txt in this directory for details of the
   41 common pinctrl bindings used by client devices, including the definition of a
   42 "pin configuration node".
   43 
   44 === Pin Group Node ===
   45 
   46 A pin group node specifies the desired pin mux for an arbitrary number of
   47 pins. The name of the pin group node is optional and not used.
   48 
   49 A pin group node only affects the properties specified in the node, and has no
   50 effect on any properties that are omitted.
   51 
   52 The pin group node accepts a subset of the generic pin config properties. For
   53 details generic pin config properties, please refer to pinctrl-bindings.txt
   54 and <include/linux/pinctrl/pinconfig-generic.h>.
   55 
   56 Required Pin Group Node Properties:
   57 
   58 - pins: Multiple strings. Specifies the name(s) of one or more pins to be
   59   configured by this node. The format of a pin name string is "GP_xy", where x
   60   is an uppercase character from 'A' to 'R', and y is a digit from 0 to 7.
   61 - function: String. Specifies the pin mux selection. Values must be one of:
   62   "gpio", "client_a", "client_b", "client_c"
   63 
   64 Example:
   65         pinctrl: pinctrl@f0000e20 {
   66                 compatible = "cnxt,cx92755-pinctrl";
   67                 reg = <0xf0000e20 0x100>;
   68 
   69                 uart0_default: uart0_active {
   70                         data_signals {
   71                                 pins = "GP_O0", "GP_O1";
   72                                 function = "client_b";
   73                         };
   74                 };
   75         };
   76 
   77         uart0: uart@f0000740 {
   78                 compatible = "cnxt,cx92755-usart";
   79                 ...
   80                 pinctrl-0 = <&uart0_default>;
   81                 pinctrl-names = "default";
   82         };
   83 
   84 In the example above, a single pin group configuration node defines the
   85 "client select" for the Rx and Tx signals of uart0. The uart0 node references
   86 that pin configuration node using the &uart0_default phandle.

Cache object: b6fe75078acbdd570807d9e8ca1ace94


[ 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.