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