linux/drivers/pinctrl/qcom/pinctrl-msm8960.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2014, Sony Mobile Communications AB.
 */

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

#include "pinctrl-msm.h"

static const struct pinctrl_pin_desc msm8960_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();
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 sdc3_clk_pins[] =;
static const unsigned int sdc3_cmd_pins[] =;
static const unsigned int sdc3_data_pins[] =;

#define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11)

#define SDC_PINGROUP(pg_name, ctl, pull, drv)

enum msm8960_functions {};

static const char * const audio_pcm_groups[] =;

static const char * const bt_groups[] =;

static const char * const cam_mclk0_groups[] =;

static const char * const cam_mclk1_groups[] =;

static const char * const cam_mclk2_groups[] =;

static const char * const codec_mic_i2s_groups[] =;

static const char * const codec_spkr_i2s_groups[] =;

static const char * const ext_gps_groups[] =;

static const char * const fm_groups[] =;

static const char * const gps_blanking_groups[] =;

static const char * const gps_pps_in_groups[] =;

static const char * const gps_pps_out_groups[] =;

static const char * const gp_clk_0a_groups[] =;

static const char * const gp_clk_0b_groups[] =;

static const char * const gp_clk_1a_groups[] =;

static const char * const gp_clk_1b_groups[] =;

static const char * const gp_clk_2a_groups[] =;

static const char * const gp_clk_2b_groups[] =;

static const char * const gp_mn_groups[] =;

static const char * const gp_pdm_0a_groups[] =;

static const char * const gp_pdm_0b_groups[] =;

static const char * const gp_pdm_1a_groups[] =;

static const char * const gp_pdm_1b_groups[] =;

static const char * const gp_pdm_2a_groups[] =;

static const char * const gp_pdm_2b_groups[] =;

static const char * const gpio_groups[] =;

static const char * const gsbi1_groups[] =;

static const char * const gsbi1_spi_cs1_n_groups[] =;

static const char * const gsbi1_spi_cs2a_n_groups[] =;

static const char * const gsbi1_spi_cs2b_n_groups[] =;

static const char * const gsbi1_spi_cs3_n_groups[] =;

static const char * const gsbi2_groups[] =;

static const char * const gsbi2_spi_cs1_n_groups[] =;

static const char * const gsbi2_spi_cs2_n_groups[] =;

static const char * const gsbi2_spi_cs3_n_groups[] =;

static const char * const gsbi3_groups[] =;

static const char * const gsbi4_groups[] =;

static const char * const gsbi4_3d_cam_i2c_l_groups[] =;

static const char * const gsbi4_3d_cam_i2c_r_groups[] =;

static const char * const gsbi5_groups[] =;

static const char * const gsbi5_3d_cam_i2c_l_groups[] =;

static const char * const gsbi5_3d_cam_i2c_r_groups[] =;

static const char * const gsbi6_groups[] =;

static const char * const gsbi7_groups[] =;

static const char * const gsbi8_groups[] =;

static const char * const gsbi9_groups[] =;

static const char * const gsbi10_groups[] =;

static const char * const gsbi11_groups[] =;

static const char * const gsbi11_spi_cs1a_n_groups[] =;

static const char * const gsbi11_spi_cs1b_n_groups[] =;

static const char * const gsbi11_spi_cs2a_n_groups[] =;

static const char * const gsbi11_spi_cs2b_n_groups[] =;

static const char * const gsbi11_spi_cs3_n_groups[] =;

static const char * const gsbi12_groups[] =;

static const char * const hdmi_cec_groups[] =;

static const char * const hdmi_ddc_clock_groups[] =;

static const char * const hdmi_ddc_data_groups[] =;

static const char * const hdmi_hot_plug_detect_groups[] =;

static const char * const hsic_groups[] =;

static const char * const mdp_vsync_groups[] =;

static const char * const mi2s_groups[] =;

static const char * const mic_i2s_groups[] =;

static const char * const pmb_clk_groups[] =;

static const char * const pmb_ext_ctrl_groups[] =;

static const char * const ps_hold_groups[] =;

static const char * const rpm_wdog_groups[] =;

static const char * const sdc2_groups[] =;

static const char * const sdc4_groups[] =;

static const char * const sdc5_groups[] =;

static const char * const slimbus1_groups[] =;

static const char * const slimbus2_groups[] =;

static const char * const spkr_i2s_groups[] =;

static const char * const ssbi1_groups[] =;

static const char * const ssbi2_groups[] =;

static const char * const ssbi_ext_gps_groups[] =;

static const char * const ssbi_pmic2_groups[] =;

static const char * const ssbi_qpa1_groups[] =;

static const char * const ssbi_ts_groups[] =;

static const char * const tsif1_groups[] =;

static const char * const tsif2_groups[] =;

static const char * const ts_eoc_groups[] =;

static const char * const usb_fs1_groups[] =;

static const char * const usb_fs1_oe_groups[] =;

static const char * const usb_fs1_oe_n_groups[] =;

static const char * const usb_fs2_groups[] =;

static const char * const usb_fs2_oe_groups[] =;

static const char * const usb_fs2_oe_n_groups[] =;

static const char * const vfe_camif_timer1_a_groups[] =;

static const char * const vfe_camif_timer1_b_groups[] =;

static const char * const vfe_camif_timer2_groups[] =;

static const char * const vfe_camif_timer3_a_groups[] =;

static const char * const vfe_camif_timer3_b_groups[] =;

static const char * const vfe_camif_timer4_a_groups[] =;

static const char * const vfe_camif_timer4_b_groups[] =;

static const char * const vfe_camif_timer4_c_groups[] =;

static const char * const vfe_camif_timer5_a_groups[] =;

static const char * const vfe_camif_timer5_b_groups[] =;

static const char * const vfe_camif_timer6_a_groups[] =;

static const char * const vfe_camif_timer6_b_groups[] =;

static const char * const vfe_camif_timer6_c_groups[] =;

static const char * const vfe_camif_timer7_a_groups[] =;

static const char * const vfe_camif_timer7_b_groups[] =;

static const char * const vfe_camif_timer7_c_groups[] =;

static const char * const wlan_groups[] =;

static const struct pinfunction msm8960_functions[] =;

static const struct msm_pingroup msm8960_groups[] =;

#define NUM_GPIO_PINGROUPS

static const struct msm_pinctrl_soc_data msm8960_pinctrl =;

static int msm8960_pinctrl_probe(struct platform_device *pdev)
{}

static const struct of_device_id msm8960_pinctrl_of_match[] =;

static struct platform_driver msm8960_pinctrl_driver =;

static int __init msm8960_pinctrl_init(void)
{}
arch_initcall(msm8960_pinctrl_init);

static void __exit msm8960_pinctrl_exit(void)
{}
module_exit(msm8960_pinctrl_exit);

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();
MODULE_DEVICE_TABLE(of, msm8960_pinctrl_of_match);