162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Common omap4 mcpdm configuration
462306a36Sopenharmony_ci *
562306a36Sopenharmony_ci * Only include this file if your board has pdmclk wired from the
662306a36Sopenharmony_ci * pmic to ABE as mcpdm uses an external clock for the module.
762306a36Sopenharmony_ci */
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci&omap4_pmx_core {
1062306a36Sopenharmony_ci	mcpdm_pins: mcpdm-pins {
1162306a36Sopenharmony_ci		pinctrl-single,pins = <
1262306a36Sopenharmony_ci		/* 0x4a100106 abe_pdm_ul_data.abe_pdm_ul_data ag25 */
1362306a36Sopenharmony_ci		OMAP4_IOPAD(0x106, PIN_INPUT_PULLDOWN | MUX_MODE0)
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ci		/* 0x4a100108 abe_pdm_dl_data.abe_pdm_dl_data af25 */
1662306a36Sopenharmony_ci		OMAP4_IOPAD(0x108, PIN_INPUT_PULLDOWN | MUX_MODE0)
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci		/* 0x4a10010a abe_pdm_frame.abe_pdm_frame ae25 */
1962306a36Sopenharmony_ci		OMAP4_IOPAD(0x10a, PIN_INPUT_PULLUP   | MUX_MODE0)
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci		/* 0x4a10010c abe_pdm_lb_clk.abe_pdm_lb_clk af26 */
2262306a36Sopenharmony_ci		OMAP4_IOPAD(0x10c, PIN_INPUT_PULLDOWN | MUX_MODE0)
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci		/* 0x4a10010e abe_clks.abe_clks ah26 */
2562306a36Sopenharmony_ci		OMAP4_IOPAD(0x10e, PIN_INPUT_PULLDOWN | MUX_MODE0)
2662306a36Sopenharmony_ci		>;
2762306a36Sopenharmony_ci	};
2862306a36Sopenharmony_ci};
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci&mcpdm_module {
3162306a36Sopenharmony_ci	/*
3262306a36Sopenharmony_ci	 * McPDM pads must be muxed at the interconnect target module
3362306a36Sopenharmony_ci	 * level as the module on the SoC needs external clock from
3462306a36Sopenharmony_ci	 * the PMIC
3562306a36Sopenharmony_ci	 */
3662306a36Sopenharmony_ci	pinctrl-names = "default";
3762306a36Sopenharmony_ci	pinctrl-0 = <&mcpdm_pins>;
3862306a36Sopenharmony_ci	status = "okay";
3962306a36Sopenharmony_ci};
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci&mcpdm {
4262306a36Sopenharmony_ci	clocks = <&twl6040>;
4362306a36Sopenharmony_ci	clock-names = "pdmclk";
4462306a36Sopenharmony_ci};
45