Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

Cirrus Logic Lochnagar Audio Development Board

Lochnagar is an evaluation and development board for Cirrus Logic
Smart CODEC and Amp devices. It allows the connection of most Cirrus
Logic devices on mini-cards, as well as allowing connection of
various application processor systems to provide a full evaluation
platform.  Audio system topology, clocking and power can all be
controlled through the Lochnagar, allowing the device under test
to be used in a variety of possible use cases.

Also see these documents for generic binding information:
  [1] GPIO : ../gpio/gpio.txt

And these for relevant defines:
  [2] include/dt-bindings/pinctrl/lochnagar.h
  [3] include/dt-bindings/clock/lochnagar.h

And these documents for the required sub-node binding details:
  [4] Clock: ../clock/cirrus,lochnagar.txt
  [5] Pinctrl: ../pinctrl/cirrus,lochnagar.txt
  [6] Regulator: ../regulator/cirrus,lochnagar.txt
  [7] Sound: ../sound/cirrus,lochnagar.txt
  [8] Hardware Monitor: ../hwmon/cirrus,lochnagar.txt

Required properties:

  - compatible : One of the following strings:
                 "cirrus,lochnagar1"
                 "cirrus,lochnagar2"

  - reg : I2C slave address

  - reset-gpios : Reset line to the Lochnagar, see [1].

Required sub-nodes:

  - lochnagar-clk : Binding for the clocking components, see [4].

  - lochnagar-pinctrl : Binding for the pin control components, see [5].

Optional sub-nodes:

  - Bindings for the regulator components, see [6]. Only available on
    Lochnagar 2.

  - lochnagar-sc : Binding for the sound card components, see [7].
                   Only available on Lochnagar 2.
  - lochnagar-hwmon : Binding for the hardware monitor components, see [8].
                      Only available on Lochnagar 2.

Optional properties:

  - present-gpios : Host present line, indicating the presence of a
    host system, see [1]. This can be omitted if the present line is
    tied in hardware.

Example:

lochnagar: lochnagar@22 {
	compatible = "cirrus,lochnagar2";
	reg = <0x22>;

	reset-gpios = <&gpio0 55 0>;
	present-gpios = <&gpio0 60 0>;

	lochnagar-clk {
		compatible = "cirrus,lochnagar2-clk";
		...
	};

	lochnagar-pinctrl {
		compatible = "cirrus,lochnagar-pinctrl";
		...
	};

	lochnagar-sc {
		compatible = "cirrus,lochnagar2-soundcard";
		...
	};

	lochnagar-hwmon {
		compatible = "cirrus,lochnagar2-hwmon";
		...
	};
};