summaryrefslogtreecommitdiff
path: root/dts/gs101-bluejay-audio.dtsi
blob: 212c61371424fc97353b474a8a20b42481032ca2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// SPDX-License-Identifier: GPL-2.0-only
/*
 * Google GS101 Bluejay audio device tree source
 *
 * Copyright (c) 2021 Google, LLC
 *		https://www.google.com
 *
*/

#include "google-base/gs101-raviole-audio.dtsi"

&aoc {
	aoc-board-cfg = "b3";
	aoc-board-id = <0x20501>;
	aoc-board-rev = <0x10000>;
};

/* cs40l26 is different way, fix this later */
/delete-node/ &cs40l2x_codec;
/delete-node/ &cs40l2x_codec_clk;
/delete-node/ &cs40l25a_haptics;

&dai_be_haptic_rx_codec {
	sound-dai = <&cs40l26_codec 0>;
};

&aoc_snd_card {
	clks {
		sys {
			sys@cs40l26_codec {
				comp = <&cs40l26_codec>;
				src = "BCLK";
				/* clk id */
				id = <0>;
				/* clk source */
				srcid = <0>;
				/* in clk multiple */
				in_mul = <1>;
				/* out clk multiple */
				out_mul = <1>;
			};
		};
	};
};

&hsi2c_8 {
	#address-cells = <1>;
	#size-cells = <0>;
	status = "okay";

	pinctrl-names = "default";
	pinctrl-0 = <&hsi2c8_bus>;

	clock-frequency = <400000>;

	cs40l26a_haptics: cs40l26a@43 {
		compatible = "cirrus,cs40l26a";
		reg = <0x43>;

		dev-name = "cs40l26a";	/* sysfs folder name */
		input-device-name = "cs40l26_input";	/* input device name */
		pinctrl-names = "default";
		pinctrl-0 = <&hapt_amp_irq &hapt_amp_rst &hapt_amp_trig>;

		interrupt-parent = <&gpa6>;
		interrupts = <5 0 0>;

		reset-gpios = <&gpp24 0 0>;

		cirrus,bst-dcm-en = <0>;
		cirrus,pwle-zero-cross-en;
		cirrus,bst-expl-mode-disable;
		cirrus,vpbr-enable;
		cirrus,vpbr-thld-mv = <2800>;		/* 2.8V */
		cirrus,bst-ipk-microamp = <4000000>;	/* 4A */
		cirrus,boost-ctl-microvolt = <10000000>;/* 10V */
		cirrus,f0-default = <0x2A8000>;		/* 170 Hz */
		cirrus,redc-default = <0x68000>;	/* 13 Ohm */

		status = "okay";
		cs40l26_codec: cs40l26_codec@snd {
			#sound-dai-cells = <1>;
			compatible = "cs40l26-codec";
			status = "okay";
		};
	};
};