1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
4 $id: http://devicetree.org/schemas/mfd/cirrus,lochnagar.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Cirrus Logic Lochnagar Audio Development Board
10 - patches@opensource.cirrus.com
13 Lochnagar is an evaluation and development board for Cirrus Logic
14 Smart CODEC and Amp devices. It allows the connection of most Cirrus
15 Logic devices on mini-cards, as well as allowing connection of
16 various application processor systems to provide a full evaluation
17 platform. Audio system topology, clocking and power can all be
18 controlled through the Lochnagar, allowing the device under test
19 to be used in a variety of possible use cases.
21 Also see these documents for generic binding information:
22 [1] GPIO : ../gpio/gpio.txt
24 And these for relevant defines:
25 [2] include/dt-bindings/pinctrl/lochnagar.h
26 [3] include/dt-bindings/clock/lochnagar.h
28 And these documents for the required sub-node binding details:
29 [4] Clock: ../clock/cirrus,lochnagar.yaml
30 [5] Pinctrl: ../pinctrl/cirrus,lochnagar.yaml
31 [6] Sound: ../sound/cirrus,lochnagar.yaml
32 [7] Hardware Monitor: ../hwmon/cirrus,lochnagar.yaml
44 $ref: /schemas/hwmon/cirrus,lochnagar.yaml#
48 $ref: /schemas/sound/cirrus,lochnagar.yaml#
64 Host present line, indicating the presence of a
65 host system, see [1]. This can be omitted if the present line is
71 $ref: /schemas/clock/cirrus,lochnagar.yaml#
75 $ref: /schemas/clock/fixed-clock.yaml#
82 $ref: /schemas/clock/fixed-clock.yaml#
89 $ref: /schemas/clock/fixed-clock.yaml#
96 $ref: /schemas/clock/fixed-clock.yaml#
103 $ref: /schemas/clock/fixed-clock.yaml#
110 $ref: /schemas/clock/fixed-clock.yaml#
117 $ref: /schemas/clock/fixed-clock.yaml#
124 $ref: /schemas/clock/fixed-clock.yaml#
131 $ref: /schemas/pinctrl/cirrus,lochnagar.yaml#
135 Initialisation data for the VDDCORE regulator, which supplies the
136 CODECs digital core if not being provided by an internal regulator.
138 $ref: /schemas/regulator/regulator.yaml#
142 - cirrus,lochnagar2-vddcore
146 Primary power supply for the Lochnagar.
152 Initialisation data for the MICVDD regulator, which supplies the
155 $ref: /schemas/regulator/regulator.yaml#
159 - cirrus,lochnagar2-micvdd
163 Primary power supply for the Lochnagar.
169 Initialisation data for the MIC1VDD supplies.
171 $ref: /schemas/regulator/regulator.yaml#
175 - cirrus,lochnagar2-mic1vdd
177 cirrus,micbias-input:
179 A property selecting which of the CODEC minicard micbias outputs
181 $ref: /schemas/types.yaml#/definitions/uint32
187 Regulator supplies for the MIC1VDD outputs, supplying the digital
188 microphones, normally supplied from the attached CODEC.
194 Initialisation data for the MIC2VDD supplies.
196 $ref: /schemas/regulator/regulator.yaml#
200 - cirrus,lochnagar2-mic2vdd
202 cirrus,micbias-input:
204 A property selecting which of the CODEC minicard micbias outputs
206 $ref: /schemas/types.yaml#/definitions/uint32
212 Regulator supplies for the MIC2VDD outputs, supplying the digital
213 microphones, normally supplied from the attached CODEC.
219 Recommended fixed regulator for the VDD1V8 regulator, which supplies
220 the CODECs analog and 1.8V digital supplies.
222 $ref: /schemas/regulator/regulator.yaml#
228 regulator-min-microvolt:
231 regulator-max-microvolt:
236 Should be set to same supply as SYSVDD
239 - regulator-min-microvolt
240 - regulator-max-microvolt
242 - regulator-always-on
252 unevaluatedProperties: false
256 #include <dt-bindings/clk/lochnagar.h>
257 #include <dt-bindings/pinctrl/lochnagar.h>
259 #address-cells = <1>;
261 reg = <0xe0004000 0x1000>;
263 lochnagar: lochnagar@22 {
264 compatible = "cirrus,lochnagar2";
267 reset-gpios = <&gpio0 55 0>;
268 present-gpios = <&gpio0 60 0>;
270 lochnagarclk: lochnagar-clk {
271 compatible = "cirrus,lochnagar2-clk";
274 clocks = <&clkaudio>, <&clkpmic>;
275 clock-names = "ln-gf-mclk2", "ln-pmic-32k";
277 assigned-clocks = <&lochnagarclk LOCHNAGAR_CDC_MCLK1>,
278 <&lochnagarclk LOCHNAGAR_CDC_MCLK2>;
279 assigned-clock-parents = <&clkaudio>, <&clkpmic>;
282 clkpmic: lochnagar-pmic32k {
283 compatible = "fixed-clock";
285 clock-frequency = <32768>;
289 compatible = "cirrus,lochnagar-pinctrl";
293 gpio-ranges = <&lochnagar 0 0 LOCHNAGAR2_PIN_NUM_GPIOS>;
295 pinctrl-names = "default";
296 pinctrl-0 = <&pinsettings>;
298 pinsettings: pin-settings {
302 function = "codec-aif3";
306 groups = "codec-aif3";
307 function = "gf-aif1";
313 compatible = "cirrus,lochnagar2-soundcard";
315 #sound-dai-cells = <1>;
317 clocks = <&lochnagarclk LOCHNAGAR_SOUNDCARD_MCLK>;
318 clock-names = "mclk";
322 compatible = "cirrus,lochnagar2-hwmon";
326 compatible = "cirrus,lochnagar2-mic1vdd";
328 cirrus,micbias-input = <3>;
332 compatible = "cirrus,lochnagar2-micvdd";
334 SYSVDD-supply = <&wallvdd>;
336 regulator-min-microvolt = <3300000>;
337 regulator-max-microvolt = <3300000>;
341 compatible = "regulator-fixed";
343 regulator-name = "VDD1V8";
344 regulator-min-microvolt = <1800000>;
345 regulator-max-microvolt = <1800000>;
349 vin-supply = <&wallvdd>;