summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/freescale/imx8mn-evk-8mic-revE.dts
blob: 93e4090dc7c5e0db33c21386a397dddefdfe1158 (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
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
113
114
115
116
117
118
119
120
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
 * Copyright 2020 NXP
 */

#include "imx8mn-evk.dts"

/ {
	mic_leds {
		compatible = "gpio-leds";
		mic0 {
			label = "mic0";
			gpios = <&pca9555 5 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};
		mic1 {
			label = "mic1";
			gpios = <&pca9555 7 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};
		mic2 {
			label = "mic2";
			gpios = <&pca9555 6 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};
		mic3 {
			label = "mic3";
			gpios = <&pca9555 2 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};
		mic4 {
			label = "mic4";
			gpios = <&pca9555 1 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};
		mic5 {
			label = "mic5";
			gpios = <&pca9555 0 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};
		mic6 {
			label = "mic6";
			gpios = <&pca9555 4 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};
		mic7 {
			label = "mic7";
			gpios = <&pca9555 3 GPIO_ACTIVE_LOW>;
			default-state = "off";
		};
	};

	sw_keys {
		compatible = "gpio-keys";

		sw4: volume_down {
			label = "Volume Down";
			gpios = <&pca9555 14 GPIO_ACTIVE_LOW>;
			linux,code = <KEY_VOLUMEDOWN>;
		};

		sw3: volume_up {
			label = "Volume Up";
			gpios = <&pca9555 15 GPIO_ACTIVE_LOW>;
			linux,code = <KEY_VOLUMEUP>;
		};

		sw2: volume_mute {
			label = "Volume Mute";
			gpios = <&pca9555 16 GPIO_ACTIVE_LOW>;
			linux,code = <KEY_MUTE>;
		};

		sw1: key_act {
			label = "Key Act";
			gpios = <&pca9555 17 GPIO_ACTIVE_LOW>;
			linux,code = <KEY_F9>;
		};
	};

	reg_vddext_3v3: regulator-vddext {
		compatible = "regulator-fixed";
		regulator-name = "VDDEXT_3V3";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
	};
};

&iomuxc {
	pinctrl_swpdm_mute_irq: swpdm_mute_grp {
		fsl,pins = <
			MX8MN_IOMUXC_ECSPI1_MISO_GPIO5_IO8	0x19
		>;
	};

	pinctrl_pushbutton_irq: pushbutton_grp {
		fsl,pins = <
			MX8MN_IOMUXC_ECSPI1_SS0_GPIO5_IO9	0x19
		>;
	};
};

&i2c3 {
	pca9555: gpio@21 {
		compatible = "nxp,pca9555";
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_pushbutton_irq>;
		reg = <0x21>;
		gpio-controller;
		#gpio-cells = <2>;
		interrupt-parent = <&gpio5>;
		interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
		vcc-supply = <&reg_vddext_3v3>;
		status = "okay";
	};
};

&uart3 {
	status = "disabled";
};