// SPDX-License-Identifier: GPL-2.0+
/*
 * U-Boot addition to handle Dragonboard 410c pins
 *
 * (C) Copyright 2015 Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
 */

/ {

	smem {
		u-boot,dm-pre-reloc;
	};

	soc {
		u-boot,dm-pre-reloc;

		qcom,tlmm@1000000 {
			u-boot,dm-pre-reloc;

			uart {
				u-boot,dm-pre-reloc;
			};
		};

		qcom,gcc@1800000 {
			u-boot,dm-pre-reloc;
		};

		serial@78b0000 {
			u-boot,dm-pre-reloc;
			};
		};
};


&pm8916_gpios {
	usb_hub_reset_pm {
		gpios = <&pm8916_gpios 2 0>;
	};

	usb_sw_sel_pm {
		gpios = <&pm8916_gpios 3 0>;
	};
};


&pm8916_pon {
	key_vol_down {
		gpios = <&pm8916_pon 1 0>;
	};

	key_power {
		gpios = <&pm8916_pon 0 0>;
	};
};
