File Index
Files and directories
Sign in
FILE

nxp,lpc1850-creg.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/mfd/nxp,lpc1850-creg.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/mfd/nxp,lpc1850-creg.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: The NXP LPC18xx/43xx CREG (Configuration Registers) block
  8
  9maintainers:
 10  - Frank Li <Frank.Li@nxp.com>
 11
 12properties:
 13  compatible:
 14    items:
 15      - enum:
 16          - nxp,lpc1850-creg
 17      - const: syscon
 18      - const: simple-mfd
 19
 20  reg:
 21    maxItems: 1
 22
 23  clocks:
 24    maxItems: 1
 25
 26  resets:
 27    maxItems: 1
 28
 29  clock-controller:
 30    type: object
 31    description:
 32      The NXP LPC18xx/43xx CREG (Configuration Registers) block contains
 33      control registers for two low speed clocks. One of the clocks is a
 34      32 kHz oscillator driver with power up/down and clock gating. Next
 35      is a fixed divider that creates a 1 kHz clock from the 32 kHz osc.
 36
 37      These clocks are used by the RTC and the Event Router peripherals.
 38      The 32 kHz can also be routed to other peripherals to enable low
 39      power modes.
 40
 41    properties:
 42      compatible:
 43        const: nxp,lpc1850-creg-clk
 44
 45      clocks:
 46        maxItems: 1
 47
 48      '#clock-cells':
 49        const: 1
 50        description: |
 51          0            1 kHz clock
 52          1           32 kHz Oscillator
 53
 54    required:
 55      - compatible
 56      - clocks
 57      - '#clock-cells'
 58
 59    additionalProperties: false
 60
 61  phy:
 62    type: object
 63    description: the internal USB OTG PHY in NXP LPC18xx and LPC43xx SoCs
 64    properties:
 65      compatible:
 66        const: nxp,lpc1850-usb-otg-phy
 67
 68      clocks:
 69        maxItems: 1
 70
 71      '#phy-cells':
 72        const: 0
 73
 74    required:
 75      - compatible
 76      - clocks
 77      - '#phy-cells'
 78
 79    additionalProperties: false
 80
 81  dma-mux:
 82    type: object
 83    description: NXP LPC18xx/43xx DMA MUX (DMA request router)
 84    properties:
 85      compatible:
 86        const: nxp,lpc1850-dmamux
 87
 88      '#dma-cells':
 89        const: 3
 90        description: |
 91          Should be set to <3>.
 92          * 1st cell contain the master dma request signal
 93          * 2nd cell contain the mux value (0-3) for the peripheral
 94          * 3rd cell contain either 1 or 2 depending on the AHB  master used.
 95
 96      dma-requests:
 97        $ref: /schemas/types.yaml#/definitions/uint32
 98        maximum: 64
 99        description: Number of DMA requests the controller can handle
100
101      dma-masters:
102        $ref: /schemas/types.yaml#/definitions/phandle
103        description: phandle pointing to the DMA controller
104
105    required:
106      - compatible
107      - '#dma-cells'
108      - dma-masters
109
110    additionalProperties: false
111
112required:
113  - compatible
114  - reg
115  - clocks
116  - resets
117
118additionalProperties: false
119
120examples:
121  - |
122    #include <dt-bindings/clock/lpc18xx-ccu.h>
123
124    syscon@40043000 {
125        compatible = "nxp,lpc1850-creg", "syscon", "simple-mfd";
126        reg = <0x40043000 0x1000>;
127        clocks = <&ccu1 CLK_CPU_CREG>;
128        resets = <&rgu 5>;
129
130        clock-controller {
131            compatible = "nxp,lpc1850-creg-clk";
132            clocks = <&xtal32>;
133            #clock-cells = <1>;
134        };
135
136        phy {
137            compatible = "nxp,lpc1850-usb-otg-phy";
138            clocks = <&ccu1 CLK_USB0>;
139            #phy-cells = <0>;
140        };
141
142        dma-mux {
143            compatible = "nxp,lpc1850-dmamux";
144            #dma-cells = <3>;
145            dma-requests = <64>;
146            dma-masters = <&dmac>;
147        };
148    };
~/ Read-only file preview.