Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

// SPDX-License-Identifier: GPL-2.0

#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
&pm8994_gpios {

	pinctrl-names = "default";
	pinctrl-0 = <&ls_exp_gpio_f &bt_en_gpios>;

	ls_exp_gpio_f: pm8994_gpio5 {
		pinconf {
			pins = "gpio5";
			output-low;
			power-source = <2>; // PM8994_GPIO_S4, 1.8V
		};
	};

	bt_en_gpios: bt_en_gpios {
		pinconf {
			pins = "gpio19";
			function = PMIC_GPIO_FUNC_NORMAL;
			output-low;
			power-source = <PM8994_GPIO_S4>; // 1.8V
			qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
			bias-pull-down;
		};
	};

	wlan_en_gpios: wlan_en_gpios {
		pinconf {
			pins = "gpio8";
			function = PMIC_GPIO_FUNC_NORMAL;
			output-low;
			power-source = <PM8994_GPIO_S4>; // 1.8V
			qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
			bias-pull-down;
		};
	};

	audio_mclk: clk_div1 {
		pinconf {
			pins = "gpio15";
			function = "func1";
			power-source = <PM8994_GPIO_S4>; // 1.8V
		};
	};

	volume_up_gpio: pm8996_gpio2 {
		pinconf {
			pins = "gpio2";
			function = "normal";
			input-enable;
			drive-push-pull;
			bias-pull-up;
			qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
			power-source = <PM8994_GPIO_S4>; // 1.8V
		};
	};

	divclk4_pin_a: divclk4 {
		pinconf {
			pins = "gpio18";
			function = PMIC_GPIO_FUNC_FUNC2;

			bias-disable;
			power-source = <PM8994_GPIO_S4>;
		};
	};

	usb3_vbus_det_gpio: pm8996_gpio22 {
		pinconf {
			pins = "gpio22";
			function = PMIC_GPIO_FUNC_NORMAL;
			input-enable;
			bias-pull-down;
			qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
			power-source = <PM8994_GPIO_S4>; // 1.8V
		};
	};
};

&pmi8994_gpios {
	usb2_vbus_det_gpio: pmi8996_gpio6 {
		pinconf {
			pins = "gpio6";
			function = PMIC_GPIO_FUNC_NORMAL;
			input-enable;
			bias-pull-down;
			qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
			power-source = <PM8994_GPIO_S4>; // 1.8V
		};
	};
};