// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2024, The Linux Foundation. All rights reserved.
 */

#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>

#include "pinctrl-msm.h"

static const struct pinctrl_pin_desc msm8917_pins[] = {
	PINCTRL_PIN(0, "GPIO_0"),
	PINCTRL_PIN(1, "GPIO_1"),
	PINCTRL_PIN(2, "GPIO_2"),
	PINCTRL_PIN(3, "GPIO_3"),
	PINCTRL_PIN(4, "GPIO_4"),
	PINCTRL_PIN(5, "GPIO_5"),
	PINCTRL_PIN(6, "GPIO_6"),
	PINCTRL_PIN(7, "GPIO_7"),
	PINCTRL_PIN(8, "GPIO_8"),
	PINCTRL_PIN(9, "GPIO_9"),
	PINCTRL_PIN(10, "GPIO_10"),
	PINCTRL_PIN(11, "GPIO_11"),
	PINCTRL_PIN(12, "GPIO_12"),
	PINCTRL_PIN(13, "GPIO_13"),
	PINCTRL_PIN(14, "GPIO_14"),
	PINCTRL_PIN(15, "GPIO_15"),
	PINCTRL_PIN(16, "GPIO_16"),
	PINCTRL_PIN(17, "GPIO_17"),
	PINCTRL_PIN(18, "GPIO_18"),
	PINCTRL_PIN(19, "GPIO_19"),
	PINCTRL_PIN(20, "GPIO_20"),
	PINCTRL_PIN(21, "GPIO_21"),
	PINCTRL_PIN(22, "GPIO_22"),
	PINCTRL_PIN(23, "GPIO_23"),
	PINCTRL_PIN(24, "GPIO_24"),
	PINCTRL_PIN(25, "GPIO_25"),
	PINCTRL_PIN(26, "GPIO_26"),
	PINCTRL_PIN(27, "GPIO_27"),
	PINCTRL_PIN(28, "GPIO_28"),
	PINCTRL_PIN(29, "GPIO_29"),
	PINCTRL_PIN(30, "GPIO_30"),
	PINCTRL_PIN(31, "GPIO_31"),
	PINCTRL_PIN(32, "GPIO_32"),
	PINCTRL_PIN(33, "GPIO_33"),
	PINCTRL_PIN(34, "GPIO_34"),
	PINCTRL_PIN(35, "GPIO_35"),
	PINCTRL_PIN(36, "GPIO_36"),
	PINCTRL_PIN(37, "GPIO_37"),
	PINCTRL_PIN(38, "GPIO_38"),
	PINCTRL_PIN(39, "GPIO_39"),
	PINCTRL_PIN(40, "GPIO_40"),
	PINCTRL_PIN(41, "GPIO_41"),
	PINCTRL_PIN(42, "GPIO_42"),
	PINCTRL_PIN(43, "GPIO_43"),
	PINCTRL_PIN(44, "GPIO_44"),
	PINCTRL_PIN(45, "GPIO_45"),
	PINCTRL_PIN(46, "GPIO_46"),
	PINCTRL_PIN(47, "GPIO_47"),
	PINCTRL_PIN(48, "GPIO_48"),
	PINCTRL_PIN(49, "GPIO_49"),
	PINCTRL_PIN(50, "GPIO_50"),
	PINCTRL_PIN(51, "GPIO_51"),
	PINCTRL_PIN(52, "GPIO_52"),
	PINCTRL_PIN(53, "GPIO_53"),
	PINCTRL_PIN(54, "GPIO_54"),
	PINCTRL_PIN(55, "GPIO_55"),
	PINCTRL_PIN(56, "GPIO_56"),
	PINCTRL_PIN(57, "GPIO_57"),
	PINCTRL_PIN(58, "GPIO_58"),
	PINCTRL_PIN(59, "GPIO_59"),
	PINCTRL_PIN(60, "GPIO_60"),
	PINCTRL_PIN(61, "GPIO_61"),
	PINCTRL_PIN(62, "GPIO_62"),
	PINCTRL_PIN(63, "GPIO_63"),
	PINCTRL_PIN(64, "GPIO_64"),
	PINCTRL_PIN(65, "GPIO_65"),
	PINCTRL_PIN(66, "GPIO_66"),
	PINCTRL_PIN(67, "GPIO_67"),
	PINCTRL_PIN(68, "GPIO_68"),
	PINCTRL_PIN(69, "GPIO_69"),
	PINCTRL_PIN(70, "GPIO_70"),
	PINCTRL_PIN(71, "GPIO_71"),
	PINCTRL_PIN(72, "GPIO_72"),
	PINCTRL_PIN(73, "GPIO_73"),
	PINCTRL_PIN(74, "GPIO_74"),
	PINCTRL_PIN(75, "GPIO_75"),
	PINCTRL_PIN(76, "GPIO_76"),
	PINCTRL_PIN(77, "GPIO_77"),
	PINCTRL_PIN(78, "GPIO_78"),
	PINCTRL_PIN(79, "GPIO_79"),
	PINCTRL_PIN(80, "GPIO_80"),
	PINCTRL_PIN(81, "GPIO_81"),
	PINCTRL_PIN(82, "GPIO_82"),
	PINCTRL_PIN(83, "GPIO_83"),
	PINCTRL_PIN(84, "GPIO_84"),
	PINCTRL_PIN(85, "GPIO_85"),
	PINCTRL_PIN(86, "GPIO_86"),
	PINCTRL_PIN(87, "GPIO_87"),
	PINCTRL_PIN(88, "GPIO_88"),
	PINCTRL_PIN(89, "GPIO_89"),
	PINCTRL_PIN(90, "GPIO_90"),
	PINCTRL_PIN(91, "GPIO_91"),
	PINCTRL_PIN(92, "GPIO_92"),
	PINCTRL_PIN(93, "GPIO_93"),
	PINCTRL_PIN(94, "GPIO_94"),
	PINCTRL_PIN(95, "GPIO_95"),
	PINCTRL_PIN(96, "GPIO_96"),
	PINCTRL_PIN(97, "GPIO_97"),
	PINCTRL_PIN(98, "GPIO_98"),
	PINCTRL_PIN(99, "GPIO_99"),
	PINCTRL_PIN(100, "GPIO_100"),
	PINCTRL_PIN(101, "GPIO_101"),
	PINCTRL_PIN(102, "GPIO_102"),
	PINCTRL_PIN(103, "GPIO_103"),
	PINCTRL_PIN(104, "GPIO_104"),
	PINCTRL_PIN(105, "GPIO_105"),
	PINCTRL_PIN(106, "GPIO_106"),
	PINCTRL_PIN(107, "GPIO_107"),
	PINCTRL_PIN(108, "GPIO_108"),
	PINCTRL_PIN(109, "GPIO_109"),
	PINCTRL_PIN(110, "GPIO_110"),
	PINCTRL_PIN(111, "GPIO_111"),
	PINCTRL_PIN(112, "GPIO_112"),
	PINCTRL_PIN(113, "GPIO_113"),
	PINCTRL_PIN(114, "GPIO_114"),
	PINCTRL_PIN(115, "GPIO_115"),
	PINCTRL_PIN(116, "GPIO_116"),
	PINCTRL_PIN(117, "GPIO_117"),
	PINCTRL_PIN(118, "GPIO_118"),
	PINCTRL_PIN(119, "GPIO_119"),
	PINCTRL_PIN(120, "GPIO_120"),
	PINCTRL_PIN(121, "GPIO_121"),
	PINCTRL_PIN(122, "GPIO_122"),
	PINCTRL_PIN(123, "GPIO_123"),
	PINCTRL_PIN(124, "GPIO_124"),
	PINCTRL_PIN(125, "GPIO_125"),
	PINCTRL_PIN(126, "GPIO_126"),
	PINCTRL_PIN(127, "GPIO_127"),
	PINCTRL_PIN(128, "GPIO_128"),
	PINCTRL_PIN(129, "GPIO_129"),
	PINCTRL_PIN(130, "GPIO_130"),
	PINCTRL_PIN(131, "GPIO_131"),
	PINCTRL_PIN(132, "GPIO_132"),
	PINCTRL_PIN(133, "GPIO_133"),
	PINCTRL_PIN(134, "SDC1_CLK"),
	PINCTRL_PIN(135, "SDC1_CMD"),
	PINCTRL_PIN(136, "SDC1_DATA"),
	PINCTRL_PIN(137, "SDC1_RCLK"),
	PINCTRL_PIN(138, "SDC2_CLK"),
	PINCTRL_PIN(139, "SDC2_CMD"),
	PINCTRL_PIN(140, "SDC2_DATA"),
	PINCTRL_PIN(141, "QDSD_CLK"),
	PINCTRL_PIN(142, "QDSD_CMD"),
	PINCTRL_PIN(143, "QDSD_DATA0"),
	PINCTRL_PIN(144, "QDSD_DATA1"),
	PINCTRL_PIN(145, "QDSD_DATA2"),
	PINCTRL_PIN(146, "QDSD_DATA3"),
};

#define DECLARE_MSM_GPIO_PINS(pin)	\
	static const unsigned int gpio##pin##_pins[] = { pin }

DECLARE_MSM_GPIO_PINS(0);
DECLARE_MSM_GPIO_PINS(1);
DECLARE_MSM_GPIO_PINS(2);
DECLARE_MSM_GPIO_PINS(3);
DECLARE_MSM_GPIO_PINS(4);
DECLARE_MSM_GPIO_PINS(5);
DECLARE_MSM_GPIO_PINS(6);
DECLARE_MSM_GPIO_PINS(7);
DECLARE_MSM_GPIO_PINS(8);
DECLARE_MSM_GPIO_PINS(9);
DECLARE_MSM_GPIO_PINS(10);
DECLARE_MSM_GPIO_PINS(11);
DECLARE_MSM_GPIO_PINS(12);
DECLARE_MSM_GPIO_PINS(13);
DECLARE_MSM_GPIO_PINS(14);
DECLARE_MSM_GPIO_PINS(15);
DECLARE_MSM_GPIO_PINS(16);
DECLARE_MSM_GPIO_PINS(17);
DECLARE_MSM_GPIO_PINS(18);
DECLARE_MSM_GPIO_PINS(19);
DECLARE_MSM_GPIO_PINS(20);
DECLARE_MSM_GPIO_PINS(21);
DECLARE_MSM_GPIO_PINS(22);
DECLARE_MSM_GPIO_PINS(23);
DECLARE_MSM_GPIO_PINS(24);
DECLARE_MSM_GPIO_PINS(25);
DECLARE_MSM_GPIO_PINS(26);
DECLARE_MSM_GPIO_PINS(27);
DECLARE_MSM_GPIO_PINS(28);
DECLARE_MSM_GPIO_PINS(29);
DECLARE_MSM_GPIO_PINS(30);
DECLARE_MSM_GPIO_PINS(31);
DECLARE_MSM_GPIO_PINS(32);
DECLARE_MSM_GPIO_PINS(33);
DECLARE_MSM_GPIO_PINS(34);
DECLARE_MSM_GPIO_PINS(35);
DECLARE_MSM_GPIO_PINS(36);
DECLARE_MSM_GPIO_PINS(37);
DECLARE_MSM_GPIO_PINS(38);
DECLARE_MSM_GPIO_PINS(39);
DECLARE_MSM_GPIO_PINS(40);
DECLARE_MSM_GPIO_PINS(41);
DECLARE_MSM_GPIO_PINS(42);
DECLARE_MSM_GPIO_PINS(43);
DECLARE_MSM_GPIO_PINS(44);
DECLARE_MSM_GPIO_PINS(45);
DECLARE_MSM_GPIO_PINS(46);
DECLARE_MSM_GPIO_PINS(47);
DECLARE_MSM_GPIO_PINS(48);
DECLARE_MSM_GPIO_PINS(49);
DECLARE_MSM_GPIO_PINS(50);
DECLARE_MSM_GPIO_PINS(51);
DECLARE_MSM_GPIO_PINS(52);
DECLARE_MSM_GPIO_PINS(53);
DECLARE_MSM_GPIO_PINS(54);
DECLARE_MSM_GPIO_PINS(55);
DECLARE_MSM_GPIO_PINS(56);
DECLARE_MSM_GPIO_PINS(57);
DECLARE_MSM_GPIO_PINS(58);
DECLARE_MSM_GPIO_PINS(59);
DECLARE_MSM_GPIO_PINS(60);
DECLARE_MSM_GPIO_PINS(61);
DECLARE_MSM_GPIO_PINS(62);
DECLARE_MSM_GPIO_PINS(63);
DECLARE_MSM_GPIO_PINS(64);
DECLARE_MSM_GPIO_PINS(65);
DECLARE_MSM_GPIO_PINS(66);
DECLARE_MSM_GPIO_PINS(67);
DECLARE_MSM_GPIO_PINS(68);
DECLARE_MSM_GPIO_PINS(69);
DECLARE_MSM_GPIO_PINS(70);
DECLARE_MSM_GPIO_PINS(71);
DECLARE_MSM_GPIO_PINS(72);
DECLARE_MSM_GPIO_PINS(73);
DECLARE_MSM_GPIO_PINS(74);
DECLARE_MSM_GPIO_PINS(75);
DECLARE_MSM_GPIO_PINS(76);
DECLARE_MSM_GPIO_PINS(77);
DECLARE_MSM_GPIO_PINS(78);
DECLARE_MSM_GPIO_PINS(79);
DECLARE_MSM_GPIO_PINS(80);
DECLARE_MSM_GPIO_PINS(81);
DECLARE_MSM_GPIO_PINS(82);
DECLARE_MSM_GPIO_PINS(83);
DECLARE_MSM_GPIO_PINS(84);
DECLARE_MSM_GPIO_PINS(85);
DECLARE_MSM_GPIO_PINS(86);
DECLARE_MSM_GPIO_PINS(87);
DECLARE_MSM_GPIO_PINS(88);
DECLARE_MSM_GPIO_PINS(89);
DECLARE_MSM_GPIO_PINS(90);
DECLARE_MSM_GPIO_PINS(91);
DECLARE_MSM_GPIO_PINS(92);
DECLARE_MSM_GPIO_PINS(93);
DECLARE_MSM_GPIO_PINS(94);
DECLARE_MSM_GPIO_PINS(95);
DECLARE_MSM_GPIO_PINS(96);
DECLARE_MSM_GPIO_PINS(97);
DECLARE_MSM_GPIO_PINS(98);
DECLARE_MSM_GPIO_PINS(99);
DECLARE_MSM_GPIO_PINS(100);
DECLARE_MSM_GPIO_PINS(101);
DECLARE_MSM_GPIO_PINS(102);
DECLARE_MSM_GPIO_PINS(103);
DECLARE_MSM_GPIO_PINS(104);
DECLARE_MSM_GPIO_PINS(105);
DECLARE_MSM_GPIO_PINS(106);
DECLARE_MSM_GPIO_PINS(107);
DECLARE_MSM_GPIO_PINS(108);
DECLARE_MSM_GPIO_PINS(109);
DECLARE_MSM_GPIO_PINS(110);
DECLARE_MSM_GPIO_PINS(111);
DECLARE_MSM_GPIO_PINS(112);
DECLARE_MSM_GPIO_PINS(113);
DECLARE_MSM_GPIO_PINS(114);
DECLARE_MSM_GPIO_PINS(115);
DECLARE_MSM_GPIO_PINS(116);
DECLARE_MSM_GPIO_PINS(117);
DECLARE_MSM_GPIO_PINS(118);
DECLARE_MSM_GPIO_PINS(119);
DECLARE_MSM_GPIO_PINS(120);
DECLARE_MSM_GPIO_PINS(121);
DECLARE_MSM_GPIO_PINS(122);
DECLARE_MSM_GPIO_PINS(123);
DECLARE_MSM_GPIO_PINS(124);
DECLARE_MSM_GPIO_PINS(125);
DECLARE_MSM_GPIO_PINS(126);
DECLARE_MSM_GPIO_PINS(127);
DECLARE_MSM_GPIO_PINS(128);
DECLARE_MSM_GPIO_PINS(129);
DECLARE_MSM_GPIO_PINS(130);
DECLARE_MSM_GPIO_PINS(131);
DECLARE_MSM_GPIO_PINS(132);
DECLARE_MSM_GPIO_PINS(133);

static const unsigned int sdc1_clk_pins[] = { 134 };
static const unsigned int sdc1_cmd_pins[] = { 135 };
static const unsigned int sdc1_data_pins[] = { 136 };
static const unsigned int sdc1_rclk_pins[] = { 137 };
static const unsigned int sdc2_clk_pins[] = { 138 };
static const unsigned int sdc2_cmd_pins[] = { 139 };
static const unsigned int sdc2_data_pins[] = { 140 };
static const unsigned int qdsd_clk_pins[] = { 141 };
static const unsigned int qdsd_cmd_pins[] = { 142 };
static const unsigned int qdsd_data0_pins[] = { 143 };
static const unsigned int qdsd_data1_pins[] = { 144 };
static const unsigned int qdsd_data2_pins[] = { 145 };
static const unsigned int qdsd_data3_pins[] = { 146 };

#define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9)	\
	{							\
		.grp = PINCTRL_PINGROUP("gpio" #id,		\
			gpio##id##_pins,			\
			ARRAY_SIZE(gpio##id##_pins)),		\
		.funcs = (int[]){				\
			msm_mux_gpio,				\
			msm_mux_##f1,				\
			msm_mux_##f2,				\
			msm_mux_##f3,				\
			msm_mux_##f4,				\
			msm_mux_##f5,				\
			msm_mux_##f6,				\
			msm_mux_##f7,				\
			msm_mux_##f8,				\
			msm_mux_##f9				\
		},						\
		.nfuncs = 10,					\
		.ctl_reg = 0x1000 * id,				\
		.io_reg = 0x4 + 0x1000 * id,			\
		.intr_cfg_reg = 0x8 + 0x1000 * id,		\
		.intr_status_reg = 0xc + 0x1000 * id,		\
		.intr_target_reg = 0x8 + 0x1000 * id,		\
		.mux_bit = 2,					\
		.pull_bit = 0,					\
		.drv_bit = 6,					\
		.oe_bit = 9,					\
		.in_bit = 0,					\
		.out_bit = 1,					\
		.intr_enable_bit = 0,				\
		.intr_status_bit = 0,				\
		.intr_target_bit = 5,				\
		.intr_target_kpss_val = 4,			\
		.intr_raw_status_bit = 4,			\
		.intr_polarity_bit = 1,				\
		.intr_detection_bit = 2,			\
		.intr_detection_width = 2,			\
	}

#define SDC_PINGROUP(pg_name, ctl, pull, drv)	\
	{					        \
		.grp = PINCTRL_PINGROUP(#pg_name,	\
			pg_name##_pins,			\
			ARRAY_SIZE(pg_name##_pins)),	\
		.ctl_reg = ctl,				\
		.io_reg = 0,				\
		.intr_cfg_reg = 0,			\
		.intr_status_reg = 0,			\
		.intr_target_reg = 0,			\
		.mux_bit = -1,				\
		.pull_bit = pull,			\
		.drv_bit = drv,				\
		.oe_bit = -1,				\
		.in_bit = -1,				\
		.out_bit = -1,				\
		.intr_enable_bit = -1,			\
		.intr_status_bit = -1,			\
		.intr_target_bit = -1,			\
		.intr_target_kpss_val = -1,		\
		.intr_raw_status_bit = -1,		\
		.intr_polarity_bit = -1,		\
		.intr_detection_bit = -1,		\
		.intr_detection_width = -1,		\
	}

enum msm8917_functions {
	msm_mux_accel_int,
	msm_mux_adsp_ext,
	msm_mux_alsp_int,
	msm_mux_atest_bbrx0,
	msm_mux_atest_bbrx1,
	msm_mux_atest_char,
	msm_mux_atest_char0,
	msm_mux_atest_char1,
	msm_mux_atest_char2,
	msm_mux_atest_char3,
	msm_mux_atest_combodac_to_gpio_native,
	msm_mux_atest_gpsadc_dtest0_native,
	msm_mux_atest_gpsadc_dtest1_native,
	msm_mux_atest_tsens,
	msm_mux_atest_wlan0,
	msm_mux_atest_wlan1,
	msm_mux_audio_ref,
	msm_mux_audio_reset,
	msm_mux_bimc_dte0,
	msm_mux_bimc_dte1,
	msm_mux_blsp6_spi,
	msm_mux_blsp8_spi,
	msm_mux_blsp_i2c1,
	msm_mux_blsp_i2c2,
	msm_mux_blsp_i2c3,
	msm_mux_blsp_i2c4,
	msm_mux_blsp_i2c5,
	msm_mux_blsp_i2c6,
	msm_mux_blsp_i2c7,
	msm_mux_blsp_i2c8,
	msm_mux_blsp_spi1,
	msm_mux_blsp_spi2,
	msm_mux_blsp_spi3,
	msm_mux_blsp_spi4,
	msm_mux_blsp_spi5,
	msm_mux_blsp_spi6,
	msm_mux_blsp_spi7,
	msm_mux_blsp_spi8,
	msm_mux_blsp_uart1,
	msm_mux_blsp_uart2,
	msm_mux_blsp_uart3,
	msm_mux_blsp_uart4,
	msm_mux_blsp_uart5,
	msm_mux_blsp_uart6,
	msm_mux_blsp_uart7,
	msm_mux_blsp_uart8,
	msm_mux_cam0_ldo,
	msm_mux_cam1_rst,
	msm_mux_cam1_standby,
	msm_mux_cam2_rst,
	msm_mux_cam2_standby,
	msm_mux_cam_mclk,
	msm_mux_cci_async,
	msm_mux_cci_i2c,
	msm_mux_cci_timer0,
	msm_mux_cci_timer1,
	msm_mux_cdc_pdm0,
	msm_mux_codec_int1,
	msm_mux_codec_int2,
	msm_mux_codec_mad,
	msm_mux_coex_uart,
	msm_mux_cri_trng,
	msm_mux_cri_trng0,
	msm_mux_cri_trng1,
	msm_mux_dbg_out,
	msm_mux_dmic0_clk,
	msm_mux_dmic0_data,
	msm_mux_ebi_cdc,
	msm_mux_ebi_ch0,
	msm_mux_ext_lpass,
	msm_mux_forced_usb,
	msm_mux_fp_gpio,
	msm_mux_fp_int,
	msm_mux_gcc_gp1_clk_a,
	msm_mux_gcc_gp1_clk_b,
	msm_mux_gcc_gp2_clk_a,
	msm_mux_gcc_gp2_clk_b,
	msm_mux_gcc_gp3_clk_a,
	msm_mux_gcc_gp3_clk_b,
	msm_mux_gcc_plltest,
	msm_mux_gcc_tlmm,
	msm_mux_gpio,
	msm_mux_gsm0_tx,
	msm_mux_key_focus,
	msm_mux_key_snapshot,
	msm_mux_key_volp,
	msm_mux_ldo_en,
	msm_mux_ldo_update,
	msm_mux_lpass_slimbus,
	msm_mux_lpass_slimbus0,
	msm_mux_lpass_slimbus1,
	msm_mux_m_voc,
	msm_mux_mag_int,
	msm_mux_mdp_vsync,
	msm_mux_mipi_dsi0,
	msm_mux_modem_tsync,
	msm_mux_nav_pps,
	msm_mux_nav_pps_in_a,
	msm_mux_nav_pps_in_b,
	msm_mux_nav_tsync,
	msm_mux_nfc_pwr,
	msm_mux_ov_ldo,
	msm_mux_pa_indicator,
	msm_mux_pbs0,
	msm_mux_pbs1,
	msm_mux_pbs2,
	msm_mux_pri_mi2s,
	msm_mux_pri_mi2s_mclk_a,
	msm_mux_pri_mi2s_mclk_b,
	msm_mux_pri_mi2s_ws,
	msm_mux_prng_rosc,
	msm_mux_pwr_crypto_enabled_a,
	msm_mux_pwr_crypto_enabled_b,
	msm_mux_pwr_modem_enabled_a,
	msm_mux_pwr_modem_enabled_b,
	msm_mux_pwr_nav_enabled_a,
	msm_mux_pwr_nav_enabled_b,
	msm_mux_qdss_cti_trig_in_a0,
	msm_mux_qdss_cti_trig_in_a1,
	msm_mux_qdss_cti_trig_in_b0,
	msm_mux_qdss_cti_trig_in_b1,
	msm_mux_qdss_cti_trig_out_a0,
	msm_mux_qdss_cti_trig_out_a1,
	msm_mux_qdss_cti_trig_out_b0,
	msm_mux_qdss_cti_trig_out_b1,
	msm_mux_qdss_traceclk_a,
	msm_mux_qdss_traceclk_b,
	msm_mux_qdss_tracectl_a,
	msm_mux_qdss_tracectl_b,
	msm_mux_qdss_tracedata_a,
	msm_mux_qdss_tracedata_b,
	msm_mux_sd_write,
	msm_mux_sdcard_det,
	msm_mux_sec_mi2s,
	msm_mux_sec_mi2s_mclk_a,
	msm_mux_sec_mi2s_mclk_b,
	msm_mux_sensor_rst,
	msm_mux_smb_int,
	msm_mux_ssbi_wtr1,
	msm_mux_ts_resout,
	msm_mux_ts_sample,
	msm_mux_uim1_clk,
	msm_mux_uim1_data,
	msm_mux_uim1_present,
	msm_mux_uim1_reset,
	msm_mux_uim2_clk,
	msm_mux_uim2_data,
	msm_mux_uim2_present,
	msm_mux_uim2_reset,
	msm_mux_uim_batt,
	msm_mux_us_emitter,
	msm_mux_us_euro,
	msm_mux_wcss_bt,
	msm_mux_wcss_fm,
	msm_mux_wcss_wlan,
	msm_mux_wcss_wlan0,
	msm_mux_wcss_wlan1,
	msm_mux_wcss_wlan2,
	msm_mux_webcam_rst,
	msm_mux_webcam_standby,
	msm_mux_wsa_io,
	msm_mux_wsa_irq,
	msm_mux_wsa_reset,
	msm_mux__,
};

static const char * const qdss_tracedata_b_groups[] = {
	"gpio0", "gpio1", "gpio6", "gpio7", "gpio12", "gpio13", "gpio23",
	"gpio42", "gpio43", "gpio44", "gpio47", "gpio66", "gpio86", "gpio87",
	"gpio88", "gpio92",
};

static const char * const blsp_uart1_groups[] = {
	"gpio0", "gpio1", "gpio2", "gpio3",
};

static const char * const gpio_groups[] = {
	"gpio0", "gpio1", "gpio2", "gpio3", "gpio4", "gpio5", "gpio6", "gpio7",
	"gpio8", "gpio9", "gpio10", "gpio11", "gpio12", "gpio13", "gpio14",
	"gpio15", "gpio16", "gpio17", "gpio18", "gpio19", "gpio20", "gpio21",
	"gpio22", "gpio23", "gpio24", "gpio25", "gpio26", "gpio27", "gpio28",
	"gpio29", "gpio30", "gpio31", "gpio32", "gpio33", "gpio34", "gpio35",
	"gpio36", "gpio37", "gpio38", "gpio39", "gpio40", "gpio41", "gpio42",
	"gpio43", "gpio44", "gpio45", "gpio46", "gpio47", "gpio48", "gpio49",
	"gpio50", "gpio51", "gpio52", "gpio53", "gpio54", "gpio55", "gpio56",
	"gpio57", "gpio58", "gpio59", "gpio60", "gpio61", "gpio62", "gpio63",
	"gpio64", "gpio65", "gpio66", "gpio67", "gpio68", "gpio69", "gpio70",
	"gpio71", "gpio72", "gpio73", "gpio74", "gpio75", "gpio76", "gpio77",
	"gpio78", "gpio79", "gpio80", "gpio81", "gpio82", "gpio83", "gpio84",
	"gpio85", "gpio86", "gpio87", "gpio88", "gpio89", "gpio90", "gpio91",
	"gpio92", "gpio93", "gpio94", "gpio95", "gpio96", "gpio97", "gpio98",
	"gpio99", "gpio100", "gpio101", "gpio102", "gpio103", "gpio104",
	"gpio105", "gpio106", "gpio107", "gpio108", "gpio109", "gpio110",
	"gpio111", "gpio112", "gpio113", "gpio114", "gpio115", "gpio116",
	"gpio117", "gpio118", "gpio119", "gpio120", "gpio121", "gpio122",
	"gpio123", "gpio124", "gpio125", "gpio126", "gpio127", "gpio128",
	"gpio129", "gpio130", "gpio131", "gpio132", "gpio133",
};

static const char * const blsp_spi1_groups[] = {
	"gpio0", "gpio1", "gpio2", "gpio3",
};

static const char * const adsp_ext_groups[] = {
	"gpio1",
};

static const char * const blsp_i2c1_groups[] = {
	"gpio2", "gpio3",
};

static const char * const prng_rosc_groups[] = {
	"gpio2",
};

static const char * const qdss_cti_trig_out_b0_groups[] = {
	"gpio2",
};

static const char * const blsp_spi2_groups[] = {
	"gpio4", "gpio5", "gpio6", "gpio7",
};

static const char * const blsp_uart2_groups[] = {
	"gpio4", "gpio5", "gpio6", "gpio7",
};

static const char * const blsp_uart3_groups[] = {
	"gpio8", "gpio9", "gpio10", "gpio11",
};

static const char * const pbs0_groups[] = {
	"gpio8",
};

static const char * const pbs1_groups[] = {
	"gpio9",
};

static const char * const pwr_modem_enabled_b_groups[] = {
	"gpio9",
};

static const char * const blsp_i2c3_groups[] = {
	"gpio10", "gpio11",
};

static const char * const gcc_gp2_clk_b_groups[] = {
	"gpio10",
};

static const char * const ldo_update_groups[] = {
	"gpio4",
};

static const char * const atest_combodac_to_gpio_native_groups[] = {
	"gpio4", "gpio12", "gpio13", "gpio20", "gpio21", "gpio28", "gpio29",
	"gpio30", "gpio39", "gpio40", "gpio41", "gpio42", "gpio43", "gpio44",
	"gpio45", "gpio46", "gpio47", "gpio48", "gpio67", "gpio115",
};

static const char * const ldo_en_groups[] = {
	"gpio5",
};

static const char * const blsp_i2c2_groups[] = {
	"gpio6", "gpio7",
};

static const char * const gcc_gp1_clk_b_groups[] = {
	"gpio6",
};

static const char * const pbs2_groups[] = {
	"gpio7",
};

static const char * const atest_gpsadc_dtest0_native_groups[] = {
	"gpio7",
};

static const char * const blsp_spi3_groups[] = {
	"gpio8", "gpio9", "gpio10", "gpio11",
};

static const char * const gcc_gp3_clk_b_groups[] = {
	"gpio11",
};

static const char * const blsp_spi4_groups[] = {
	"gpio12", "gpio13", "gpio14", "gpio15",
};

static const char * const blsp_uart4_groups[] = {
	"gpio12", "gpio13", "gpio14", "gpio15",
};

static const char * const sec_mi2s_groups[] = {
	"gpio12", "gpio13", "gpio94", "gpio95",
};

static const char * const pwr_nav_enabled_b_groups[] = {
	"gpio12",
};

static const char * const codec_mad_groups[] = {
	"gpio13",
};

static const char * const pwr_crypto_enabled_b_groups[] = {
	"gpio13",
};

static const char * const blsp_i2c4_groups[] = {
	"gpio14", "gpio15",
};

static const char * const blsp_spi5_groups[] = {
	"gpio16", "gpio17", "gpio18", "gpio19",
};

static const char * const blsp_uart5_groups[] = {
	"gpio16", "gpio17", "gpio18", "gpio19",
};

static const char * const qdss_traceclk_a_groups[] = {
	"gpio16",
};

static const char * const atest_bbrx1_groups[] = {
	"gpio16",
};

static const char * const m_voc_groups[] = {
	"gpio17", "gpio21",
};

static const char * const qdss_cti_trig_in_a0_groups[] = {
	"gpio17",
};

static const char * const qdss_cti_trig_in_b0_groups[] = {
	"gpio21",
};

static const char * const blsp_i2c6_groups[] = {
	"gpio22", "gpio23",
};

static const char * const qdss_traceclk_b_groups[] = {
	"gpio22",
};

static const char * const atest_wlan0_groups[] = {
	"gpio22",
};

static const char * const atest_bbrx0_groups[] = {
	"gpio17",
};

static const char * const blsp_i2c5_groups[] = {
	"gpio18", "gpio19",
};

static const char * const qdss_tracectl_a_groups[] = {
	"gpio18",
};

static const char * const atest_gpsadc_dtest1_native_groups[] = {
	"gpio18",
};

static const char * const qdss_tracedata_a_groups[] = {
	"gpio19", "gpio26", "gpio27", "gpio28", "gpio29", "gpio30", "gpio31",
	"gpio32", "gpio33", "gpio34", "gpio35", "gpio36", "gpio38", "gpio39",
	"gpio40", "gpio50",
};

static const char * const blsp_spi6_groups[] = {
	"gpio20", "gpio21", "gpio22", "gpio23",
};

static const char * const blsp_uart6_groups[] = {
	"gpio20", "gpio21", "gpio22", "gpio23",
};

static const char * const qdss_tracectl_b_groups[] = {
	"gpio20",
};

static const char * const atest_wlan1_groups[] = {
	"gpio23",
};

static const char * const mdp_vsync_groups[] = {
	"gpio24", "gpio25",
};

static const char * const pri_mi2s_mclk_a_groups[] = {
	"gpio25",
};

static const char * const sec_mi2s_mclk_a_groups[] = {
	"gpio25",
};

static const char * const cam_mclk_groups[] = {
	"gpio26", "gpio27", "gpio28",
};

static const char * const cci_i2c_groups[] = {
	"gpio29", "gpio30", "gpio31", "gpio32",
};

static const char * const pwr_modem_enabled_a_groups[] = {
	"gpio29",
};

static const char * const cci_timer0_groups[] = {
	"gpio33",
};

static const char * const cci_timer1_groups[] = {
	"gpio34",
};

static const char * const cam1_standby_groups[] = {
	"gpio35",
};

static const char * const pwr_nav_enabled_a_groups[] = {
	"gpio35",
};

static const char * const cam1_rst_groups[] = {
	"gpio36",
};

static const char * const pwr_crypto_enabled_a_groups[] = {
	"gpio36",
};

static const char * const forced_usb_groups[] = {
	"gpio37",
};

static const char * const qdss_cti_trig_out_b1_groups[] = {
	"gpio37",
};

static const char * const cam2_rst_groups[] = {
	"gpio38",
};

static const char * const webcam_standby_groups[] = {
	"gpio39",
};

static const char * const cci_async_groups[] = {
	"gpio39",
};

static const char * const webcam_rst_groups[] = {
	"gpio40",
};

static const char * const ov_ldo_groups[] = {
	"gpio41",
};

static const char * const sd_write_groups[] = {
	"gpio41",
};

static const char * const accel_int_groups[] = {
	"gpio42",
};

static const char * const gcc_gp1_clk_a_groups[] = {
	"gpio42",
};

static const char * const alsp_int_groups[] = {
	"gpio43",
};

static const char * const gcc_gp2_clk_a_groups[] = {
	"gpio43",
};

static const char * const mag_int_groups[] = {
	"gpio44",
};

static const char * const gcc_gp3_clk_a_groups[] = {
	"gpio44",
};

static const char * const blsp6_spi_groups[] = {
	"gpio47",
};

static const char * const fp_int_groups[] = {
	"gpio48",
};

static const char * const qdss_cti_trig_in_b1_groups[] = {
	"gpio48",
};

static const char * const uim_batt_groups[] = {
	"gpio49",
};

static const char * const cam2_standby_groups[] = {
	"gpio50",
};

static const char * const uim1_data_groups[] = {
	"gpio51",
};

static const char * const uim1_clk_groups[] = {
	"gpio52",
};

static const char * const uim1_reset_groups[] = {
	"gpio53",
};

static const char * const uim1_present_groups[] = {
	"gpio54",
};

static const char * const uim2_data_groups[] = {
	"gpio55",
};

static const char * const uim2_clk_groups[] = {
	"gpio56",
};

static const char * const uim2_reset_groups[] = {
	"gpio57",
};

static const char * const uim2_present_groups[] = {
	"gpio58",
};

static const char * const sensor_rst_groups[] = {
	"gpio59",
};

static const char * const mipi_dsi0_groups[] = {
	"gpio60",
};

static const char * const smb_int_groups[] = {
	"gpio61",
};

static const char * const cam0_ldo_groups[] = {
	"gpio62",
};

static const char * const us_euro_groups[] = {
	"gpio63",
};

static const char * const atest_char3_groups[] = {
	"gpio63",
};

static const char * const dbg_out_groups[] = {
	"gpio63",
};

static const char * const bimc_dte0_groups[] = {
	"gpio63", "gpio65",
};

static const char * const ts_resout_groups[] = {
	"gpio64",
};

static const char * const ts_sample_groups[] = {
	"gpio65",
};

static const char * const sec_mi2s_mclk_b_groups[] = {
	"gpio66",
};

static const char * const pri_mi2s_groups[] = {
	"gpio66", "gpio85", "gpio86", "gpio88", "gpio94", "gpio95",
};

static const char * const sdcard_det_groups[] = {
	"gpio67",
};

static const char * const atest_char1_groups[] = {
	"gpio67",
};

static const char * const ebi_cdc_groups[] = {
	"gpio67", "gpio69", "gpio118", "gpio119", "gpio120", "gpio123",
};

static const char * const audio_reset_groups[] = {
	"gpio68",
};

static const char * const atest_char0_groups[] = {
	"gpio68",
};

static const char * const audio_ref_groups[] = {
	"gpio69",
};

static const char * const cdc_pdm0_groups[] = {
	"gpio69", "gpio70", "gpio71", "gpio72", "gpio73", "gpio74",
};

static const char * const pri_mi2s_mclk_b_groups[] = {
	"gpio69",
};

static const char * const lpass_slimbus_groups[] = {
	"gpio70",
};

static const char * const lpass_slimbus0_groups[] = {
	"gpio71",
};

static const char * const lpass_slimbus1_groups[] = {
	"gpio72",
};

static const char * const codec_int1_groups[] = {
	"gpio73",
};

static const char * const codec_int2_groups[] = {
	"gpio74",
};

static const char * const wcss_bt_groups[] = {
	"gpio75", "gpio83", "gpio84",
};

static const char * const atest_char2_groups[] = {
	"gpio75",
};

static const char * const ebi_ch0_groups[] = {
	"gpio75",
};

static const char * const wcss_wlan2_groups[] = {
	"gpio76",
};

static const char * const wcss_wlan1_groups[] = {
	"gpio77",
};

static const char * const wcss_wlan0_groups[] = {
	"gpio78",
};

static const char * const wcss_wlan_groups[] = {
	"gpio79", "gpio80",
};

static const char * const wcss_fm_groups[] = {
	"gpio81", "gpio82",
};

static const char * const ext_lpass_groups[] = {
	"gpio81",
};

static const char * const cri_trng_groups[] = {
	"gpio82",
};

static const char * const cri_trng1_groups[] = {
	"gpio83",
};

static const char * const cri_trng0_groups[] = {
	"gpio84",
};

static const char * const blsp_spi7_groups[] = {
	"gpio85", "gpio86", "gpio87", "gpio88",
};

static const char * const blsp_uart7_groups[] = {
	"gpio85", "gpio86", "gpio87", "gpio88",
};

static const char * const pri_mi2s_ws_groups[] = {
	"gpio87",
};

static const char * const blsp_i2c7_groups[] = {
	"gpio87", "gpio88",
};

static const char * const gcc_tlmm_groups[] = {
	"gpio87",
};

static const char * const dmic0_clk_groups[] = {
	"gpio89",
};

static const char * const dmic0_data_groups[] = {
	"gpio90",
};

static const char * const key_volp_groups[] = {
	"gpio91",
};

static const char * const qdss_cti_trig_in_a1_groups[] = {
	"gpio91",
};

static const char * const us_emitter_groups[] = {
	"gpio92",
};

static const char * const wsa_irq_groups[] = {
	"gpio93",
};

static const char * const wsa_io_groups[] = {
	"gpio94", "gpio95",
};

static const char * const wsa_reset_groups[] = {
	"gpio96",
};

static const char * const blsp_spi8_groups[] = {
	"gpio96", "gpio97", "gpio98", "gpio99",
};

static const char * const blsp_uart8_groups[] = {
	"gpio96", "gpio97", "gpio98", "gpio99",
};

static const char * const blsp_i2c8_groups[] = {
	"gpio98", "gpio99",
};

static const char * const gcc_plltest_groups[] = {
	"gpio98", "gpio99",
};

static const char * const nav_pps_in_a_groups[] = {
	"gpio115",
};

static const char * const pa_indicator_groups[] = {
	"gpio116",
};

static const char * const modem_tsync_groups[] = {
	"gpio117",
};

static const char * const nav_tsync_groups[] = {
	"gpio117",
};

static const char * const nav_pps_in_b_groups[] = {
	"gpio117",
};

static const char * const nav_pps_groups[] = {
	"gpio117",
};

static const char * const gsm0_tx_groups[] = {
	"gpio119",
};

static const char * const atest_char_groups[] = {
	"gpio120",
};

static const char * const atest_tsens_groups[] = {
	"gpio120",
};

static const char * const bimc_dte1_groups[] = {
	"gpio121", "gpio122",
};

static const char * const ssbi_wtr1_groups[] = {
	"gpio122", "gpio123",
};

static const char * const fp_gpio_groups[] = {
	"gpio124",
};

static const char * const coex_uart_groups[] = {
	"gpio124", "gpio127",
};

static const char * const key_snapshot_groups[] = {
	"gpio127",
};

static const char * const key_focus_groups[] = {
	"gpio128",
};

static const char * const nfc_pwr_groups[] = {
	"gpio129",
};

static const char * const blsp8_spi_groups[] = {
	"gpio130",
};

static const char * const qdss_cti_trig_out_a0_groups[] = {
	"gpio132",
};

static const char * const qdss_cti_trig_out_a1_groups[] = {
	"gpio133",
};

static const struct pinfunction msm8917_functions[] = {
	MSM_PIN_FUNCTION(accel_int),
	MSM_PIN_FUNCTION(adsp_ext),
	MSM_PIN_FUNCTION(alsp_int),
	MSM_PIN_FUNCTION(atest_bbrx0),
	MSM_PIN_FUNCTION(atest_bbrx1),
	MSM_PIN_FUNCTION(atest_char),
	MSM_PIN_FUNCTION(atest_char0),
	MSM_PIN_FUNCTION(atest_char1),
	MSM_PIN_FUNCTION(atest_char2),
	MSM_PIN_FUNCTION(atest_char3),
	MSM_PIN_FUNCTION(atest_combodac_to_gpio_native),
	MSM_PIN_FUNCTION(atest_gpsadc_dtest0_native),
	MSM_PIN_FUNCTION(atest_gpsadc_dtest1_native),
	MSM_PIN_FUNCTION(atest_tsens),
	MSM_PIN_FUNCTION(atest_wlan0),
	MSM_PIN_FUNCTION(atest_wlan1),
	MSM_PIN_FUNCTION(audio_ref),
	MSM_PIN_FUNCTION(audio_reset),
	MSM_PIN_FUNCTION(bimc_dte0),
	MSM_PIN_FUNCTION(bimc_dte1),
	MSM_PIN_FUNCTION(blsp6_spi),
	MSM_PIN_FUNCTION(blsp8_spi),
	MSM_PIN_FUNCTION(blsp_i2c1),
	MSM_PIN_FUNCTION(blsp_i2c2),
	MSM_PIN_FUNCTION(blsp_i2c3),
	MSM_PIN_FUNCTION(blsp_i2c4),
	MSM_PIN_FUNCTION(blsp_i2c5),
	MSM_PIN_FUNCTION(blsp_i2c6),
	MSM_PIN_FUNCTION(blsp_i2c7),
	MSM_PIN_FUNCTION(blsp_i2c8),
	MSM_PIN_FUNCTION(blsp_spi1),
	MSM_PIN_FUNCTION(blsp_spi2),
	MSM_PIN_FUNCTION(blsp_spi3),
	MSM_PIN_FUNCTION(blsp_spi4),
	MSM_PIN_FUNCTION(blsp_spi5),
	MSM_PIN_FUNCTION(blsp_spi6),
	MSM_PIN_FUNCTION(blsp_spi7),
	MSM_PIN_FUNCTION(blsp_spi8),
	MSM_PIN_FUNCTION(blsp_uart1),
	MSM_PIN_FUNCTION(blsp_uart2),
	MSM_PIN_FUNCTION(blsp_uart3),
	MSM_PIN_FUNCTION(blsp_uart4),
	MSM_PIN_FUNCTION(blsp_uart5),
	MSM_PIN_FUNCTION(blsp_uart6),
	MSM_PIN_FUNCTION(blsp_uart7),
	MSM_PIN_FUNCTION(blsp_uart8),
	MSM_PIN_FUNCTION(cam0_ldo),
	MSM_PIN_FUNCTION(cam1_rst),
	MSM_PIN_FUNCTION(cam1_standby),
	MSM_PIN_FUNCTION(cam2_rst),
	MSM_PIN_FUNCTION(cam2_standby),
	MSM_PIN_FUNCTION(cam_mclk),
	MSM_PIN_FUNCTION(cci_async),
	MSM_PIN_FUNCTION(cci_i2c),
	MSM_PIN_FUNCTION(cci_timer0),
	MSM_PIN_FUNCTION(cci_timer1),
	MSM_PIN_FUNCTION(cdc_pdm0),
	MSM_PIN_FUNCTION(codec_int1),
	MSM_PIN_FUNCTION(codec_int2),
	MSM_PIN_FUNCTION(codec_mad),
	MSM_PIN_FUNCTION(coex_uart),
	MSM_PIN_FUNCTION(cri_trng),
	MSM_PIN_FUNCTION(cri_trng0),
	MSM_PIN_FUNCTION(cri_trng1),
	MSM_PIN_FUNCTION(dbg_out),
	MSM_PIN_FUNCTION(dmic0_clk),
	MSM_PIN_FUNCTION(dmic0_data),
	MSM_PIN_FUNCTION(ebi_cdc),
	MSM_PIN_FUNCTION(ebi_ch0),
	MSM_PIN_FUNCTION(ext_lpass),
	MSM_PIN_FUNCTION(forced_usb),
	MSM_PIN_FUNCTION(fp_gpio),
	MSM_PIN_FUNCTION(fp_int),
	MSM_PIN_FUNCTION(gcc_gp1_clk_a),
	MSM_PIN_FUNCTION(gcc_gp1_clk_b),
	MSM_PIN_FUNCTION(gcc_gp2_clk_a),
	MSM_PIN_FUNCTION(gcc_gp2_clk_b),
	MSM_PIN_FUNCTION(gcc_gp3_clk_a),
	MSM_PIN_FUNCTION(gcc_gp3_clk_b),
	MSM_PIN_FUNCTION(gcc_plltest),
	MSM_PIN_FUNCTION(gcc_tlmm),
	MSM_GPIO_PIN_FUNCTION(gpio),
	MSM_PIN_FUNCTION(gsm0_tx),
	MSM_PIN_FUNCTION(key_focus),
	MSM_PIN_FUNCTION(key_snapshot),
	MSM_PIN_FUNCTION(key_volp),
	MSM_PIN_FUNCTION(ldo_en),
	MSM_PIN_FUNCTION(ldo_update),
	MSM_PIN_FUNCTION(lpass_slimbus),
	MSM_PIN_FUNCTION(lpass_slimbus0),
	MSM_PIN_FUNCTION(lpass_slimbus1),
	MSM_PIN_FUNCTION(m_voc),
	MSM_PIN_FUNCTION(mag_int),
	MSM_PIN_FUNCTION(mdp_vsync),
	MSM_PIN_FUNCTION(mipi_dsi0),
	MSM_PIN_FUNCTION(modem_tsync),
	MSM_PIN_FUNCTION(nav_pps),
	MSM_PIN_FUNCTION(nav_pps_in_a),
	MSM_PIN_FUNCTION(nav_pps_in_b),
	MSM_PIN_FUNCTION(nav_tsync),
	MSM_PIN_FUNCTION(nfc_pwr),
	MSM_PIN_FUNCTION(ov_ldo),
	MSM_PIN_FUNCTION(pa_indicator),
	MSM_PIN_FUNCTION(pbs0),
	MSM_PIN_FUNCTION(pbs1),
	MSM_PIN_FUNCTION(pbs2),
	MSM_PIN_FUNCTION(pri_mi2s),
	MSM_PIN_FUNCTION(pri_mi2s_mclk_a),
	MSM_PIN_FUNCTION(pri_mi2s_mclk_b),
	MSM_PIN_FUNCTION(pri_mi2s_ws),
	MSM_PIN_FUNCTION(prng_rosc),
	MSM_PIN_FUNCTION(pwr_crypto_enabled_a),
	MSM_PIN_FUNCTION(pwr_crypto_enabled_b),
	MSM_PIN_FUNCTION(pwr_modem_enabled_a),
	MSM_PIN_FUNCTION(pwr_modem_enabled_b),
	MSM_PIN_FUNCTION(pwr_nav_enabled_a),
	MSM_PIN_FUNCTION(pwr_nav_enabled_b),
	MSM_PIN_FUNCTION(qdss_cti_trig_in_a0),
	MSM_PIN_FUNCTION(qdss_cti_trig_in_a1),
	MSM_PIN_FUNCTION(qdss_cti_trig_in_b0),
	MSM_PIN_FUNCTION(qdss_cti_trig_in_b1),
	MSM_PIN_FUNCTION(qdss_cti_trig_out_a0),
	MSM_PIN_FUNCTION(qdss_cti_trig_out_a1),
	MSM_PIN_FUNCTION(qdss_cti_trig_out_b0),
	MSM_PIN_FUNCTION(qdss_cti_trig_out_b1),
	MSM_PIN_FUNCTION(qdss_traceclk_a),
	MSM_PIN_FUNCTION(qdss_traceclk_b),
	MSM_PIN_FUNCTION(qdss_tracectl_a),
	MSM_PIN_FUNCTION(qdss_tracectl_b),
	MSM_PIN_FUNCTION(qdss_tracedata_a),
	MSM_PIN_FUNCTION(qdss_tracedata_b),
	MSM_PIN_FUNCTION(sd_write),
	MSM_PIN_FUNCTION(sdcard_det),
	MSM_PIN_FUNCTION(sec_mi2s),
	MSM_PIN_FUNCTION(sec_mi2s_mclk_a),
	MSM_PIN_FUNCTION(sec_mi2s_mclk_b),
	MSM_PIN_FUNCTION(sensor_rst),
	MSM_PIN_FUNCTION(smb_int),
	MSM_PIN_FUNCTION(ssbi_wtr1),
	MSM_PIN_FUNCTION(ts_resout),
	MSM_PIN_FUNCTION(ts_sample),
	MSM_PIN_FUNCTION(uim1_clk),
	MSM_PIN_FUNCTION(uim1_data),
	MSM_PIN_FUNCTION(uim1_present),
	MSM_PIN_FUNCTION(uim1_reset),
	MSM_PIN_FUNCTION(uim2_clk),
	MSM_PIN_FUNCTION(uim2_data),
	MSM_PIN_FUNCTION(uim2_present),
	MSM_PIN_FUNCTION(uim2_reset),
	MSM_PIN_FUNCTION(uim_batt),
	MSM_PIN_FUNCTION(us_emitter),
	MSM_PIN_FUNCTION(us_euro),
	MSM_PIN_FUNCTION(wcss_bt),
	MSM_PIN_FUNCTION(wcss_fm),
	MSM_PIN_FUNCTION(wcss_wlan),
	MSM_PIN_FUNCTION(wcss_wlan0),
	MSM_PIN_FUNCTION(wcss_wlan1),
	MSM_PIN_FUNCTION(wcss_wlan2),
	MSM_PIN_FUNCTION(webcam_rst),
	MSM_PIN_FUNCTION(webcam_standby),
	MSM_PIN_FUNCTION(wsa_io),
	MSM_PIN_FUNCTION(wsa_irq),
	MSM_PIN_FUNCTION(wsa_reset),
};

static const struct msm_pingroup msm8917_groups[] = {
	PINGROUP(0, blsp_spi1, blsp_uart1, qdss_tracedata_b, _, _, _, _,
		 _, _),
	PINGROUP(1, blsp_spi1, blsp_uart1, adsp_ext, _, _, _, _, _,
		 qdss_tracedata_b),
	PINGROUP(2, blsp_spi1, blsp_uart1, blsp_i2c1, prng_rosc, _, _, _,
		 _, _),
	PINGROUP(3, blsp_spi1, blsp_uart1, blsp_i2c1, _, _, _, _, _, _),
	PINGROUP(4, blsp_spi2, blsp_uart2, ldo_update, _,
		 atest_combodac_to_gpio_native, _, _, _, _),
	PINGROUP(5, blsp_spi2, blsp_uart2, ldo_en, _, _, _, _, _, _),
	PINGROUP(6, blsp_spi2, blsp_uart2, blsp_i2c2, gcc_gp1_clk_b,
		 qdss_tracedata_b, _, _, _, _),
	PINGROUP(7, blsp_spi2, blsp_uart2, blsp_i2c2, pbs2, _,
		 qdss_tracedata_b, _, atest_gpsadc_dtest0_native, _),
	PINGROUP(8, blsp_spi3, blsp_uart3, pbs0, _, _, _, _, _, _),
	PINGROUP(9, blsp_spi3, blsp_uart3, pbs1, pwr_modem_enabled_b, _, _,
		 _, _, _),
	PINGROUP(10, blsp_spi3, blsp_uart3, blsp_i2c3, gcc_gp2_clk_b, _, _,
		 _, _, _),
	PINGROUP(11, blsp_spi3, blsp_uart3, blsp_i2c3, gcc_gp3_clk_b, _, _,
		 _, _, _),
	PINGROUP(12, blsp_spi4, blsp_uart4, sec_mi2s, pwr_nav_enabled_b, _,
		 _, _, _, _),
	PINGROUP(13, blsp_spi4, blsp_uart4, sec_mi2s, pwr_crypto_enabled_b, _,
		 _, _, _, _),
	PINGROUP(14, blsp_spi4, blsp_uart4, blsp_i2c4, _, _, _, _, _, _),
	PINGROUP(15, blsp_spi4, blsp_uart4, blsp_i2c4, _, _, _, _, _, _),
	PINGROUP(16, blsp_spi5, blsp_uart5, _, _, _, _, qdss_traceclk_a,
		 _, atest_bbrx1),
	PINGROUP(17, blsp_spi5, blsp_uart5, m_voc, qdss_cti_trig_in_a0, _,
		 atest_bbrx0, _, _, _),
	PINGROUP(18, blsp_spi5, blsp_uart5, blsp_i2c5, qdss_tracectl_a, _,
		 atest_gpsadc_dtest1_native, _, _, _),
	PINGROUP(19, blsp_spi5, blsp_uart5, blsp_i2c5, qdss_tracedata_a, _,
		 _, _, _, _),
	PINGROUP(20, blsp_spi6, blsp_uart6, _, _, _, _, _, _,
		 qdss_tracectl_b),
	PINGROUP(21, blsp_spi6, blsp_uart6, m_voc, _, _, _, _, _,
		 qdss_cti_trig_in_b0),
	PINGROUP(22, blsp_spi6, blsp_uart6, blsp_i2c6, qdss_traceclk_b, _,
		 atest_wlan0, _, _, _),
	PINGROUP(23, blsp_spi6, blsp_uart6, blsp_i2c6, qdss_tracedata_b, _,
		 atest_wlan1, _, _, _),
	PINGROUP(24, mdp_vsync, _, _, _, _, _, _, _, _),
	PINGROUP(25, mdp_vsync, pri_mi2s_mclk_a, sec_mi2s_mclk_a, _, _, _,
		 _, _, _),
	PINGROUP(26, cam_mclk, _, _, _, _, _, qdss_tracedata_a, _, _),
	PINGROUP(27, cam_mclk, _, _, _, _, _, _, _, qdss_tracedata_a),
	PINGROUP(28, cam_mclk, _, _, _, _, _, qdss_tracedata_a, _,
		 atest_combodac_to_gpio_native),
	PINGROUP(29, cci_i2c, pwr_modem_enabled_a, _, _, _, _, _,
		 qdss_tracedata_a, _),
	PINGROUP(30, cci_i2c, _, _, _, _, _, _, _, qdss_tracedata_a),
	PINGROUP(31, cci_i2c, _, _, _, _, _, _, _, qdss_tracedata_a),
	PINGROUP(32, cci_i2c, _, _, _, _, _, _, _, qdss_tracedata_a),
	PINGROUP(33, cci_timer0, _, _, _, _, _, _, _, qdss_tracedata_a),
	PINGROUP(34, cci_timer1, _, _, _, _, _, _, _, qdss_tracedata_a),
	PINGROUP(35, pwr_nav_enabled_a, _, _, _, _, _, _, _,
		 qdss_tracedata_a),
	PINGROUP(36, pwr_crypto_enabled_a, _, _, _, _, _, _, _,
		 qdss_tracedata_a),
	PINGROUP(37, _, _, _, _, _, qdss_cti_trig_out_b1, _, _, _),
	PINGROUP(38, _, qdss_tracedata_a, _, _, _, _, _, _, _),
	PINGROUP(39, cci_async, _, _, _, _, _, qdss_tracedata_a, _,
		 atest_combodac_to_gpio_native),
	PINGROUP(40, _, _, _, _, qdss_tracedata_a, _,
		 atest_combodac_to_gpio_native, _, _),
	PINGROUP(41, sd_write, _, _, _, _, _, _, _,
		 atest_combodac_to_gpio_native),
	PINGROUP(42, gcc_gp1_clk_a, qdss_tracedata_b, _,
		 atest_combodac_to_gpio_native, _, _, _, _, _),
	PINGROUP(43, gcc_gp2_clk_a, qdss_tracedata_b, _,
		 atest_combodac_to_gpio_native, _, _, _, _, _),
	PINGROUP(44, gcc_gp3_clk_a, qdss_tracedata_b, _,
		 atest_combodac_to_gpio_native, _, _, _, _, _),
	PINGROUP(45, _, _, atest_combodac_to_gpio_native, _, _, _, _, _,
		 _),
	PINGROUP(46, _, _, atest_combodac_to_gpio_native, _, _, _, _, _,
		 _),
	PINGROUP(47, blsp6_spi, _, qdss_tracedata_b, _,
		 atest_combodac_to_gpio_native, _, _, _, _),
	PINGROUP(48, _, qdss_cti_trig_in_b1, _,
		 atest_combodac_to_gpio_native, _, _, _, _, _),
	PINGROUP(49, uim_batt, _, _, _, _, _, _, _, _),
	PINGROUP(50, qdss_tracedata_a, _, _, _, _, _, _, _, _),
	PINGROUP(51, uim1_data, _, _, _, _, _, _, _, _),
	PINGROUP(52, uim1_clk, _, _, _, _, _, _, _, _),
	PINGROUP(53, uim1_reset, _, _, _, _, _, _, _, _),
	PINGROUP(54, uim1_present, _, _, _, _, _, _, _, _),
	PINGROUP(55, uim2_data, _, _, _, _, _, _, _, _),
	PINGROUP(56, uim2_clk, _, _, _, _, _, _, _, _),
	PINGROUP(57, uim2_reset, _, _, _, _, _, _, _, _),
	PINGROUP(58, uim2_present, _, _, _, _, _, _, _, _),
	PINGROUP(59, _, _, _, _, _, _, _, _, _),
	PINGROUP(60, _, _, _, _, _, _, _, _, _),
	PINGROUP(61, _, _, _, _, _, _, _, _, _),
	PINGROUP(62, _, _, _, _, _, _, _, _, _),
	PINGROUP(63, atest_char3, dbg_out, bimc_dte0, _, _, _, _, _, _),
	PINGROUP(64, _, _, _, _, _, _, _, _, _),
	PINGROUP(65, bimc_dte0, _, _, _, _, _, _, _, _),
	PINGROUP(66, sec_mi2s_mclk_b, pri_mi2s, _, qdss_tracedata_b, _, _,
		 _, _, _),
	PINGROUP(67, atest_char1, ebi_cdc, _, atest_combodac_to_gpio_native,
		 _, _, _, _, _),
	PINGROUP(68, atest_char0, _, _, _, _, _, _, _, _),
	PINGROUP(69, audio_ref, cdc_pdm0, pri_mi2s_mclk_b, ebi_cdc, _, _, _,
		 _, _),
	PINGROUP(70, lpass_slimbus, cdc_pdm0, _, _, _, _, _, _, _),
	PINGROUP(71, lpass_slimbus0, cdc_pdm0, _, _, _, _, _, _, _),
	PINGROUP(72, lpass_slimbus1, cdc_pdm0, _, _, _, _, _, _, _),
	PINGROUP(73, cdc_pdm0, _, _, _, _, _, _, _, _),
	PINGROUP(74, cdc_pdm0, _, _, _, _, _, _, _, _),
	PINGROUP(75, wcss_bt, atest_char2, _, ebi_ch0, _, _, _, _, _),
	PINGROUP(76, wcss_wlan2, _, _, _, _, _, _, _, _),
	PINGROUP(77, wcss_wlan1, _, _, _, _, _, _, _, _),
	PINGROUP(78, wcss_wlan0, _, _, _, _, _, _, _, _),
	PINGROUP(79, wcss_wlan, _, _, _, _, _, _, _, _),
	PINGROUP(80, wcss_wlan, _, _, _, _, _, _, _, _),
	PINGROUP(81, wcss_fm, ext_lpass, _, _, _, _, _, _, _),
	PINGROUP(82, wcss_fm, cri_trng, _, _, _, _, _, _, _),
	PINGROUP(83, wcss_bt, cri_trng1, _, _, _, _, _, _, _),
	PINGROUP(84, wcss_bt, cri_trng0, _, _, _, _, _, _, _),
	PINGROUP(85, pri_mi2s, blsp_spi7, blsp_uart7, _, _, _, _, _, _),
	PINGROUP(86, pri_mi2s, blsp_spi7, blsp_uart7, qdss_tracedata_b, _, _,
		 _, _, _),
	PINGROUP(87, pri_mi2s_ws, blsp_spi7, blsp_uart7, blsp_i2c7,
		 qdss_tracedata_b, gcc_tlmm, _, _, _),
	PINGROUP(88, pri_mi2s, blsp_spi7, blsp_uart7, blsp_i2c7, _, _, _,
		 _, _),
	PINGROUP(89, dmic0_clk, _, _, _, _, _, _, _, _),
	PINGROUP(90, dmic0_data, _, _, _, _, _, _, _, _),
	PINGROUP(91, _, _, _, _, _, qdss_cti_trig_in_a1, _, _, _),
	PINGROUP(92, _, _, _, _, _, qdss_tracedata_b, _, _, _),
	PINGROUP(93, _, _, _, _, _, _, _, _, _),
	PINGROUP(94, wsa_io, sec_mi2s, pri_mi2s, _, _, _, _, _, _),
	PINGROUP(95, wsa_io, sec_mi2s, pri_mi2s, _, _, _, _, _, _),
	PINGROUP(96, blsp_spi8, blsp_uart8, _, _, _, _, _, _, _),
	PINGROUP(97, blsp_spi8, blsp_uart8, _, _, _, _, _, _, _),
	PINGROUP(98, blsp_spi8, blsp_uart8, blsp_i2c8, gcc_plltest, _, _, _,
		 _, _),
	PINGROUP(99, blsp_spi8, blsp_uart8, blsp_i2c8, gcc_plltest, _, _, _,
		 _, _),
	PINGROUP(100, _, _, _, _, _, _, _, _, _),
	PINGROUP(101, _, _, _, _, _, _, _, _, _),
	PINGROUP(102, _, _, _, _, _, _, _, _, _),
	PINGROUP(103, _, _, _, _, _, _, _, _, _),
	PINGROUP(104, _, _, _, _, _, _, _, _, _),
	PINGROUP(105, _, _, _, _, _, _, _, _, _),
	PINGROUP(106, _, _, _, _, _, _, _, _, _),
	PINGROUP(107, _, _, _, _, _, _, _, _, _),
	PINGROUP(108, _, _, _, _, _, _, _, _, _),
	PINGROUP(109, _, _, _, _, _, _, _, _, _),
	PINGROUP(110, _, _, _, _, _, _, _, _, _),
	PINGROUP(111, _, _, _, _, _, _, _, _, _),
	PINGROUP(112, _, _, _, _, _, _, _, _, _),
	PINGROUP(113, _, _, _, _, _, _, _, _, _),
	PINGROUP(114, _, _, _, _, _, _, _, _, _),
	PINGROUP(115, _, _, nav_pps_in_a, _, atest_combodac_to_gpio_native,
		 _, _, _, _),
	PINGROUP(116, _, pa_indicator, _, _, _, _, _, _, _),
	PINGROUP(117, _, modem_tsync, nav_tsync, nav_pps_in_b, nav_pps, _,
		 _, _, _),
	PINGROUP(118, _, ebi_cdc, _, _, _, _, _, _, _),
	PINGROUP(119, gsm0_tx, _, ebi_cdc, _, _, _, _, _, _),
	PINGROUP(120, _, atest_char, ebi_cdc, _, atest_tsens, _, _, _, _),
	PINGROUP(121, _, _, _, bimc_dte1, _, _, _, _, _),
	PINGROUP(122, _, ssbi_wtr1, _, _, bimc_dte1, _, _, _, _),
	PINGROUP(123, _, ssbi_wtr1, ebi_cdc, _, _, _, _, _, _),
	PINGROUP(124, coex_uart, _, _, _, _, _, _, _, _),
	PINGROUP(125, _, _, _, _, _, _, _, _, _),
	PINGROUP(126, _, _, _, _, _, _, _, _, _),
	PINGROUP(127, coex_uart, _, _, _, _, _, _, _, _),
	PINGROUP(128, _, _, _, _, _, _, _, _, _),
	PINGROUP(129, _, _, _, _, _, _, _, _, _),
	PINGROUP(130, blsp8_spi, _, _, _, _, _, _, _, _),
	PINGROUP(131, _, _, _, _, _, _, _, _, _),
	PINGROUP(132, qdss_cti_trig_out_a0, _, _, _, _, _, _, _, _),
	PINGROUP(133, qdss_cti_trig_out_a1, _, _, _, _, _, _, _, _),
	SDC_PINGROUP(sdc1_clk, 0x10a000, 13, 6),
	SDC_PINGROUP(sdc1_cmd, 0x10a000, 11, 3),
	SDC_PINGROUP(sdc1_data, 0x10a000, 9, 0),
	SDC_PINGROUP(sdc1_rclk, 0x10a000, 15, 0),
	SDC_PINGROUP(sdc2_clk, 0x109000, 14, 6),
	SDC_PINGROUP(sdc2_cmd, 0x109000, 11, 3),
	SDC_PINGROUP(sdc2_data, 0x109000, 9, 0),
	SDC_PINGROUP(qdsd_clk, 0x19c000, 3, 0),
	SDC_PINGROUP(qdsd_cmd, 0x19c000, 8, 5),
	SDC_PINGROUP(qdsd_data0, 0x19c000, 13, 10),
	SDC_PINGROUP(qdsd_data1, 0x19c000, 18, 15),
	SDC_PINGROUP(qdsd_data2, 0x19c000, 23, 20),
	SDC_PINGROUP(qdsd_data3, 0x19c000, 28, 25),
};

static const struct msm_pinctrl_soc_data msm8917_pinctrl = {
	.pins = msm8917_pins,
	.npins = ARRAY_SIZE(msm8917_pins),
	.functions = msm8917_functions,
	.nfunctions = ARRAY_SIZE(msm8917_functions),
	.groups = msm8917_groups,
	.ngroups = ARRAY_SIZE(msm8917_groups),
	.ngpios = 134,
};

static int msm8917_pinctrl_probe(struct platform_device *pdev)
{
	return msm_pinctrl_probe(pdev, &msm8917_pinctrl);
}

static const struct of_device_id msm8917_pinctrl_of_match[] = {
	{ .compatible = "qcom,msm8917-pinctrl", },
	{ },
};
MODULE_DEVICE_TABLE(of, msm8917_pinctrl_of_match);

static struct platform_driver msm8917_pinctrl_driver = {
	.driver = {
		.name = "msm8917-pinctrl",
		.of_match_table = msm8917_pinctrl_of_match,
	},
	.probe = msm8917_pinctrl_probe,
};

static int __init msm8917_pinctrl_init(void)
{
	return platform_driver_register(&msm8917_pinctrl_driver);
}
arch_initcall(msm8917_pinctrl_init);

static void __exit msm8917_pinctrl_exit(void)
{
	platform_driver_unregister(&msm8917_pinctrl_driver);
}
module_exit(msm8917_pinctrl_exit);

MODULE_DESCRIPTION("Qualcomm msm8917/msm8937 pinctrl driver");
MODULE_LICENSE("GPL");
