-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathugreen-dab-board-overlay.dts
112 lines (105 loc) · 2.66 KB
/
ugreen-dab-board-overlay.dts
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
/*
* Definitions for uGreen DAB Board
*/
/dts-v1/;
/plugin/;
/ {
compatible = "brcm,bcm2708", "brcm,bcm2709", "brcm,bcm2835";
fragment@0 {
target = <&spidev0>;
__overlay__ {
status = "disabled";
};
};
fragment@1 {
target = <&i2s>;
__overlay__ {
status = "okay"; /* device is enabled */
};
};
fragment@2 {
target = <&gpio>;
__overlay__ {
status = "okay"; /* device is enabled */
si468x_pins: si468x_pins {
brcm,pins = <23>; /* gpio no. */
brcm,function = <1>; /* 0:in, 1:out */
brcm,pull = <0>; /* 2:up 1:down 0:none */
};
};
};
fragment@3 {
target = <&spi0>;
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;
status = "okay"; /* device is enabled */
si4684: si4684@0 {
#sound-dai-cells = <0>;
compatible = "si,si4684";
reg = <0>;
spi-max-frequency = <2000000>;
pinctrl-names = "default";
pinctrl-0 = <&si468x_pins>;
reset-gpios = <&gpio 23 1>; /* GPIO_ACTIVE_LOW for si468x*/
interrupt-parent = <&gpio>;
interrupts = <25 2>; /* falling edge */
vcore-supply = <&vdd_3v3_reg>;
vmem-supply = <&vdd_3v3_reg>;
va-supply = <&vdd_3v3_reg>;
vio-supply = <&vdd_3v3_reg>;
clock-mode = <1>; /* SI468X_XMODE_CRYSTAL */
clocks = <&si4688_osc>;
clock-ibias = <70>; /* for 5*70Ohm -> 700uA */
clock-ctun = <31>;
fm_tune_fe_varm = /bits/ 16 <0x8600>;
fm_tune_fe_varb = /bits/ 16 <0x00c9>;
fm_tune_fe_cfg = /bits/ 16 <1>;
dab_tune_fe_varm = /bits/ 16 <0xfe3e>;
dab_tune_fe_varb = /bits/ 16 <0x005e>;
dab_tune_fe_cfg = /bits/ 16 <0>;
firmware-am = "si468x/amhd_radio_3_0_6.bif";
firmware-fm = "si468x/fmhd_radio_5_1_0.bin";
firmware-dab = "si468x/dab_radio_5_0_8.bin";
firmware-mini = "si468x/rom00_patch_mini.bin";
firmware-patch = "si468x/rom00_patch.016.bin";
flash-am = <0x0011E000>;
flash-fm = <0x00006000>;
flash-dab = <0x00092000>;
flash-mini = <0x00002000>;
flash-patch = <0x00004000>;
status = "okay"; /* device is enabled */
};
};
};
fragment@4 {
target = <&sound>;
__overlay__ {
compatible = "simple-audio-card";
simple-audio-card,name = "DAB-Board";
simple-audio-card,widgets = "Line", "In Tuner";
simple-audio-card,routing = "In Tuner", "ROUT",
"In Tuner", "LOUT";
status = "okay"; /* device is enabled */
simple-audio-card,dai-link@0 { /* I2S -> si4684 */
format = "i2s";
cpu {
sound-dai = <&i2s 0>;
};
codec {
sound-dai = <&si4684 0>;
};
};
};
};
fragment@5 {
target-path = "/";
__overlay__ {
si4688_osc: si4688_osc {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <19200000>;
};
};
};
};