1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Common omap4 mcpdm configuration
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot * Only include this file if your board has pdmclk wired from the
6*f126890aSEmmanuel Vadot * pmic to ABE as mcpdm uses an external clock for the module.
7*f126890aSEmmanuel Vadot */
8*f126890aSEmmanuel Vadot
9*f126890aSEmmanuel Vadot&omap4_pmx_core {
10*f126890aSEmmanuel Vadot	mcpdm_pins: mcpdm-pins {
11*f126890aSEmmanuel Vadot		pinctrl-single,pins = <
12*f126890aSEmmanuel Vadot		/* 0x4a100106 abe_pdm_ul_data.abe_pdm_ul_data ag25 */
13*f126890aSEmmanuel Vadot		OMAP4_IOPAD(0x106, PIN_INPUT_PULLDOWN | MUX_MODE0)
14*f126890aSEmmanuel Vadot
15*f126890aSEmmanuel Vadot		/* 0x4a100108 abe_pdm_dl_data.abe_pdm_dl_data af25 */
16*f126890aSEmmanuel Vadot		OMAP4_IOPAD(0x108, PIN_INPUT_PULLDOWN | MUX_MODE0)
17*f126890aSEmmanuel Vadot
18*f126890aSEmmanuel Vadot		/* 0x4a10010a abe_pdm_frame.abe_pdm_frame ae25 */
19*f126890aSEmmanuel Vadot		OMAP4_IOPAD(0x10a, PIN_INPUT_PULLUP   | MUX_MODE0)
20*f126890aSEmmanuel Vadot
21*f126890aSEmmanuel Vadot		/* 0x4a10010c abe_pdm_lb_clk.abe_pdm_lb_clk af26 */
22*f126890aSEmmanuel Vadot		OMAP4_IOPAD(0x10c, PIN_INPUT_PULLDOWN | MUX_MODE0)
23*f126890aSEmmanuel Vadot
24*f126890aSEmmanuel Vadot		/* 0x4a10010e abe_clks.abe_clks ah26 */
25*f126890aSEmmanuel Vadot		OMAP4_IOPAD(0x10e, PIN_INPUT_PULLDOWN | MUX_MODE0)
26*f126890aSEmmanuel Vadot		>;
27*f126890aSEmmanuel Vadot	};
28*f126890aSEmmanuel Vadot};
29*f126890aSEmmanuel Vadot
30*f126890aSEmmanuel Vadot&mcpdm_module {
31*f126890aSEmmanuel Vadot	/*
32*f126890aSEmmanuel Vadot	 * McPDM pads must be muxed at the interconnect target module
33*f126890aSEmmanuel Vadot	 * level as the module on the SoC needs external clock from
34*f126890aSEmmanuel Vadot	 * the PMIC
35*f126890aSEmmanuel Vadot	 */
36*f126890aSEmmanuel Vadot	pinctrl-names = "default";
37*f126890aSEmmanuel Vadot	pinctrl-0 = <&mcpdm_pins>;
38*f126890aSEmmanuel Vadot	status = "okay";
39*f126890aSEmmanuel Vadot};
40*f126890aSEmmanuel Vadot
41*f126890aSEmmanuel Vadot&mcpdm {
42*f126890aSEmmanuel Vadot	clocks = <&twl6040>;
43*f126890aSEmmanuel Vadot	clock-names = "pdmclk";
44*f126890aSEmmanuel Vadot};
45