Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/arch/arm/boot/dts/broadcom/bcm2166x-pinctrl.dtsi
29271 views
// SPDX-License-Identifier: BSD-3-Clause
/*
 * Common pinmux configrations for BCM2166x (BCM21664/BCM23550).
 *
 * Copyright (C) 2025 Artur Weber <[email protected]>
 */

&pinctrl {
	/* BSC1 */
	bsc1_pins: bsc1-pins {
		bsc1clk-grp0 {
			pins = "bsc1clk";
			function = "alt1"; /* BSC1CLK */
		};

		bsc1dat-grp0 {
			pins = "bsc1dat";
			function = "alt1"; /* BSC1DAT */
		};
	};

	/* BSC2 */
	bsc2_pins: bsc2-pins {
		bsc2clk-grp0 {
			pins = "gpio16";
			function = "alt2"; /* BSC2CLK */
		};

		bsc2dat-grp0 {
			pins = "gpio17";
			function = "alt2"; /* BSC2DAT */
		};
	};

	/* BSC3 */
	bsc3_pins: bsc3-pins {
		bsc3clk-grp0 {
			pins = "lcdscl";
			function = "alt1"; /* BSC3_CLK */
		};

		bsc3dat-grp0 {
			pins = "lcdsda";
			function = "alt1"; /* BSC3_SDA */
		};
	};

	/* BSC4 */
	bsc4_pins: bsc4-pins {
		bsc4clk-grp0 {
			pins = "lcdres";
			function = "alt1"; /* BSC4_CLK */
		};

		bsc4dat-grp0 {
			pins = "lcdte";
			function = "alt1"; /* BSC4_SDA */
		};
	};

	/* PMBSC */
	pmbsc_pins: pmbsc-pins {
		pmbscclk-grp0 {
			pins = "pmbscclk";
			function = "alt1"; /* PMBSCCLK */
		};

		pmbscdat-grp0 {
			pins = "pmbscdat";
			function = "alt1"; /* PMBSCDAT */
		};
	};

	/* SD */
	sd_width1_pins: sd-width1-pins {
		sdck-grp0 {
			pins = "sdck";
			function = "alt1"; /* SDCK */
			bias-disable;
		};

		sdcmd-grp0 {
			pins = "sdcmd";
			function = "alt1"; /* SDCMD */
			bias-pull-up;
		};

		sddat-grp0 {
			pins = "sddat0";
			function = "alt1"; /* SDDATx */
			bias-pull-up;
		};
	};

	sd_width4_pins: sd-width4-pins {
		sdck-grp0 {
			pins = "sdck";
			function = "alt1"; /* SDCK */
			bias-disable;
		};

		sdcmd-grp0 {
			pins = "sdcmd";
			function = "alt1"; /* SDCMD */
			bias-pull-up;
		};

		sddat-grp0 {
			pins = "sddat0", "sddat1", "sddat2", "sddat3";
			function = "alt1"; /* SDDATx */
			bias-pull-up;
		};
	};

	/* SD1 */
	sd1_width1_pins: sd1-width1-pins {
		sd1ck-grp0 {
			pins = "mmc1dat7";
			function = "alt6"; /* SD1CK */
			bias-disable;
		};

		sd1cmd-grp0 {
			pins = "spi0txd";
			function = "alt2"; /* SD1CMD */
			bias-pull-up;
		};

		sd1dat0-grp0 {
			pins = "mmc1dat5";
			function = "alt6"; /* SD1DAT0 */
			bias-pull-up;
		};
	};

	sd1_width4_pins: sd1-width4-pins {
		sd1ck-grp0 {
			pins = "mmc1dat7";
			function = "alt6"; /* SD1CK */
			bias-disable;
		};

		sd1cmd-grp0 {
			pins = "spi0txd";
			function = "alt2"; /* SD1CMD */
			bias-pull-up;
		};

		sd1dat0-grp0 {
			pins = "mmc1dat5";
			function = "alt6"; /* SD1DAT0 */
			bias-pull-up;
		};

		sd1dat1-grp0 {
			pins = "gpio93";
			function = "alt1"; /* SD1DAT1 */
			bias-pull-up;
		};

		sd1dat2-grp0 {
			pins = "gpio94";
			function = "alt1"; /* SD1DAT2 */
			bias-pull-up;
		};

		sd1dat3-grp0 {
			pins = "mmc1dat3";
			function = "alt6"; /* SD1DAT3 */
			bias-pull-up;
		};
	};

	/* MMC0 */
	mmc0_width1_pins: mmc0-width1-pins {
		mmc0ck-grp0 {
			pins = "mmc0ck";
			function = "alt1"; /* MMC0CK */
			bias-disable;
		};

		mmc0cmd-grp0 {
			pins = "mmc0cmd";
			function = "alt1"; /* MMC0CMD */
			bias-pull-up;
		};

		mmc0dat-grp0 {
			pins = "mmc0dat0";
			function = "alt1"; /* MMC0DATx */
			bias-pull-up;
		};
	};

	mmc0_width4_pins: mmc0-width4-pins {
		mmc0ck-grp0 {
			pins = "mmc0ck";
			function = "alt1"; /* MMC0CK */
			bias-disable;
		};

		mmc0cmd-grp0 {
			pins = "mmc0cmd";
			function = "alt1"; /* MMC0CMD */
			bias-pull-up;
		};

		mmc0dat-grp0 {
			pins = "mmc0dat0", "mmc0dat1", "mmc0dat2", "mmc0dat3";
			function = "alt1"; /* MMC0DATx */
			bias-pull-up;
		};
	};

	mmc0_width8_pins: mmc0-width8-pins {
		mmc0ck-grp0 {
			pins = "mmc0ck";
			function = "alt1"; /* MMC0CK */
			bias-disable;
		};

		mmc0cmd-grp0 {
			pins = "mmc0cmd";
			function = "alt1"; /* MMC0CMD */
			bias-pull-up;
		};

		mmc0dat-grp0 {
			pins = "mmc0dat0", "mmc0dat1", "mmc0dat2", "mmc0dat3",
			       "mmc0dat4", "mmc0dat5", "mmc0dat6", "mmc0dat7";
			function = "alt1"; /* MMC0DATx */
			bias-pull-up;
		};
	};

	/* MMC1 */
	mmc1_width1_pins: mmc1-width1-pins {
		mmc1ck-grp0 {
			pins = "mmc1ck";
			function = "alt1"; /* MMC1CK */
			bias-disable;
		};

		mmc1cmd-grp0 {
			pins = "mmc1cmd";
			function = "alt1"; /* MMC1CMD */
			bias-pull-up;
		};

		mmc1dat-grp0 {
			pins = "mmc1dat0";
			function = "alt1"; /* MMC1DATx */
			bias-pull-up;
		};
	};

	mmc1_width4_pins: mmc1-width4-pins {
		mmc1ck-grp0 {
			pins = "mmc1ck";
			function = "alt1"; /* MMC1CK */
			bias-disable;
		};

		mmc1cmd-grp0 {
			pins = "mmc1cmd";
			function = "alt1"; /* MMC1CMD */
			bias-pull-up;
		};

		mmc1dat-grp0 {
			pins = "mmc1dat0", "mmc1dat1", "mmc1dat2", "mmc1dat3";
			function = "alt1"; /* MMC1DATx */
			bias-pull-up;
		};
	};

	mmc1_width8_pins: mmc1-width8-pins {
		mmc1ck-grp0 {
			pins = "mmc1ck";
			function = "alt1"; /* MMC1CK */
			bias-disable;
		};

		mmc1cmd-grp0 {
			pins = "mmc1cmd";
			function = "alt1"; /* MMC1CMD */
			bias-pull-up;
		};

		mmc1dat-grp0 {
			pins = "mmc1dat0", "mmc1dat1", "mmc1dat2", "mmc1dat3",
			       "mmc1dat4", "mmc1dat5", "mmc1dat6", "mmc1dat7";
			function = "alt1"; /* MMC1DATx */
			bias-pull-up;
		};
	};
};