#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include "pinctrl-msm.h"
#define REG_BASE …
#define REG_SIZE …
#define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9) …
#define SDC_QDSD_PINGROUP(pg_name, ctl, pull, drv) …
static const struct pinctrl_pin_desc msm8976_pins[] = …;
#define DECLARE_MSM_GPIO_PINS(pin) …
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
DECLARE_MSM_GPIO_PINS(…);
static const unsigned int sdc1_clk_pins[] = …;
static const unsigned int sdc1_cmd_pins[] = …;
static const unsigned int sdc1_data_pins[] = …;
static const unsigned int sdc1_rclk_pins[] = …;
static const unsigned int sdc2_clk_pins[] = …;
static const unsigned int sdc2_cmd_pins[] = …;
static const unsigned int sdc2_data_pins[] = …;
static const unsigned int qdsd_clk_pins[] = …;
static const unsigned int qdsd_cmd_pins[] = …;
static const unsigned int qdsd_data0_pins[] = …;
static const unsigned int qdsd_data1_pins[] = …;
static const unsigned int qdsd_data2_pins[] = …;
static const unsigned int qdsd_data3_pins[] = …;
enum msm8976_functions { … };
static const char * const gpio_groups[] = …;
static const char * const blsp_uart1_groups[] = …;
static const char * const blsp_spi1_groups[] = …;
static const char * const smb_int_groups[] = …;
static const char * const blsp_i2c1_groups[] = …;
static const char * const blsp_spi2_groups[] = …;
static const char * const blsp_uart2_groups[] = …;
static const char * const blsp_i2c2_groups[] = …;
static const char * const gcc_gp1_clk_b_groups[] = …;
static const char * const blsp_spi3_groups[] = …;
static const char * const qdss_tracedata_b_groups[] = …;
static const char * const blsp_i2c3_groups[] = …;
static const char * const gcc_gp2_clk_b_groups[] = …;
static const char * const gcc_gp3_clk_b_groups[] = …;
static const char * const blsp_spi4_groups[] = …;
static const char * const cap_int_groups[] = …;
static const char * const blsp_i2c4_groups[] = …;
static const char * const blsp_spi5_groups[] = …;
static const char * const blsp_uart5_groups[] = …;
static const char * const qdss_traceclk_a_groups[] = …;
static const char * const m_voc_groups[] = …;
static const char * const blsp_i2c5_groups[] = …;
static const char * const qdss_tracectl_a_groups[] = …;
static const char * const qdss_tracedata_a_groups[] = …;
static const char * const blsp_spi6_groups[] = …;
static const char * const blsp_uart6_groups[] = …;
static const char * const qdss_tracectl_b_groups[] = …;
static const char * const blsp_i2c6_groups[] = …;
static const char * const qdss_traceclk_b_groups[] = …;
static const char * const mdp_vsync_groups[] = …;
static const char * const pri_mi2s_mclk_a_groups[] = …;
static const char * const sec_mi2s_mclk_a_groups[] = …;
static const char * const cam_mclk_groups[] = …;
static const char * const cci0_i2c_groups[] = …;
static const char * const cci1_i2c_groups[] = …;
static const char * const blsp1_spi_groups[] = …;
static const char * const blsp3_spi_groups[] = …;
static const char * const gcc_gp1_clk_a_groups[] = …;
static const char * const gcc_gp2_clk_a_groups[] = …;
static const char * const gcc_gp3_clk_a_groups[] = …;
static const char * const uim_batt_groups[] = …;
static const char * const sd_write_groups[] = …;
static const char * const uim2_data_groups[] = …;
static const char * const uim2_clk_groups[] = …;
static const char * const uim2_reset_groups[] = …;
static const char * const uim2_present_groups[] = …;
static const char * const uim1_data_groups[] = …;
static const char * const uim1_clk_groups[] = …;
static const char * const uim1_reset_groups[] = …;
static const char * const uim1_present_groups[] = …;
static const char * const ts_xvdd_groups[] = …;
static const char * const mipi_dsi0_groups[] = …;
static const char * const us_euro_groups[] = …;
static const char * const ts_resout_groups[] = …;
static const char * const ts_sample_groups[] = …;
static const char * const sec_mi2s_mclk_b_groups[] = …;
static const char * const pri_mi2s_groups[] = …;
static const char * const codec_reset_groups[] = …;
static const char * const cdc_pdm0_groups[] = …;
static const char * const us_emitter_groups[] = …;
static const char * const pri_mi2s_mclk_b_groups[] = …;
static const char * const pri_mi2s_mclk_c_groups[] = …;
static const char * const lpass_slimbus_groups[] = …;
static const char * const lpass_slimbus0_groups[] = …;
static const char * const lpass_slimbus1_groups[] = …;
static const char * const codec_int1_groups[] = …;
static const char * const codec_int2_groups[] = …;
static const char * const wcss_bt_groups[] = …;
static const char * const sdc3_groups[] = …;
static const char * const wcss_wlan2_groups[] = …;
static const char * const wcss_wlan1_groups[] = …;
static const char * const wcss_wlan0_groups[] = …;
static const char * const wcss_wlan_groups[] = …;
static const char * const wcss_fm_groups[] = …;
static const char * const key_volp_groups[] = …;
static const char * const key_snapshot_groups[] = …;
static const char * const key_focus_groups[] = …;
static const char * const key_home_groups[] = …;
static const char * const pwr_down_groups[] = …;
static const char * const dmic0_clk_groups[] = …;
static const char * const hdmi_int_groups[] = …;
static const char * const dmic0_data_groups[] = …;
static const char * const wsa_vi_groups[] = …;
static const char * const wsa_en_groups[] = …;
static const char * const blsp_spi8_groups[] = …;
static const char * const wsa_irq_groups[] = …;
static const char * const blsp_i2c8_groups[] = …;
static const char * const pa_indicator_groups[] = …;
static const char * const modem_tsync_groups[] = …;
static const char * const ssbi_wtr1_groups[] = …;
static const char * const gsm1_tx_groups[] = …;
static const char * const gsm0_tx_groups[] = …;
static const char * const sdcard_det_groups[] = …;
static const char * const sec_mi2s_groups[] = …;
static const char * const ss_switch_groups[] = …;
static const struct pinfunction msm8976_functions[] = …;
static const struct msm_pingroup msm8976_groups[] = …;
static const struct msm_pinctrl_soc_data msm8976_pinctrl = …;
static int msm8976_pinctrl_probe(struct platform_device *pdev)
{ … }
static const struct of_device_id msm8976_pinctrl_of_match[] = …;
static struct platform_driver msm8976_pinctrl_driver = …;
static int __init msm8976_pinctrl_init(void)
{ … }
arch_initcall(msm8976_pinctrl_init);
static void __exit msm8976_pinctrl_exit(void)
{ … }
module_exit(msm8976_pinctrl_exit);
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
MODULE_DEVICE_TABLE(of, msm8976_pinctrl_of_match);