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

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

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

#include "pinctrl-msm.h"

static const struct pinctrl_pin_desc msm8x74_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();

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 sdc2_clk_pins[] =;
static const unsigned int sdc2_cmd_pins[] =;
static const unsigned int sdc2_data_pins[] =;
static const unsigned int hsic_strobe_pins[] =;
static const unsigned int hsic_data_pins[] =;

#define PINGROUP(id, f1, f2, f3, f4, f5, f6, f7)

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

#define HSIC_PINGROUP(pg_name, ctl)

/*
 * TODO: Add the rest of the possible functions and fill out
 * the pingroup table below.
 */
enum msm8x74_functions {};

static const char * const gpio_groups[] =;

static const char * const blsp_uart1_groups[] =;
static const char * const blsp_uim1_groups[] =;
static const char * const blsp_i2c1_groups[] =;
static const char * const blsp_spi1_groups[] =;
static const char * const blsp_spi1_cs1_groups[] =;
static const char * const blsp_spi1_cs2_groups[] =;
static const char * const blsp_spi1_cs3_groups[] =;

static const char * const blsp_uart2_groups[] =;
static const char * const blsp_uim2_groups[] =;
static const char * const blsp_i2c2_groups[] =;
static const char * const blsp_spi2_groups[] =;
static const char * const blsp_spi2_cs1_groups[] =;
static const char * const blsp_spi2_cs2_groups[] =;
static const char * const blsp_spi2_cs3_groups[] =;

static const char * const blsp_uart3_groups[] =;
static const char * const blsp_uim3_groups[] =;
static const char * const blsp_i2c3_groups[] =;
static const char * const blsp_spi3_groups[] =;

static const char * const cci_i2c0_groups[] =;
static const char * const cci_i2c1_groups[] =;

static const char * const blsp_uart4_groups[] =;
static const char * const blsp_uim4_groups[] =;
static const char * const blsp_i2c4_groups[] =;
static const char * const blsp_spi4_groups[] =;

static const char * const blsp_uart5_groups[] =;
static const char * const blsp_uim5_groups[] =;
static const char * const blsp_i2c5_groups[] =;
static const char * const blsp_spi5_groups[] =;

static const char * const blsp_uart6_groups[] =;
static const char * const blsp_uim6_groups[] =;
static const char * const blsp_i2c6_groups[] =;
static const char * const blsp_spi6_groups[] =;

static const char * const blsp_uart7_groups[] =;
static const char * const blsp_uim7_groups[] =;
static const char * const blsp_i2c7_groups[] =;
static const char * const blsp_spi7_groups[] =;

static const char * const blsp_uart8_groups[] =;
static const char * const blsp_uim8_groups[] =;
static const char * const blsp_i2c8_groups[] =;
static const char * const blsp_spi8_groups[] =;

static const char * const blsp_uart9_groups[] =;
static const char * const blsp_uim9_groups[] =;
static const char * const blsp_i2c9_groups[] =;
static const char * const blsp_spi9_groups[] =;

static const char * const blsp_uart10_groups[] =;
static const char * const blsp_uim10_groups[] =;
static const char * const blsp_i2c10_groups[] =;
static const char * const blsp_spi10_groups[] =;
static const char * const blsp_spi10_cs1_groups[] =;
static const char * const blsp_spi10_cs2_groups[] =;
static const char * const blsp_spi10_cs3_groups[] =;

static const char * const blsp_uart11_groups[] =;
static const char * const blsp_uim11_groups[] =;
static const char * const blsp_i2c11_groups[] =;
static const char * const blsp_spi11_groups[] =;

static const char * const blsp_uart12_groups[] =;
static const char * const blsp_uim12_groups[] =;
static const char * const blsp_i2c12_groups[] =;
static const char * const blsp_spi12_groups[] =;

static const char * const uim1_groups[] =;

static const char * const uim2_groups[] =;

static const char * const uim_batt_alarm_groups[] =;

static const char * const sdc3_groups[] =;

static const char * const sdc4_groups[] =;

static const char * const gp0_clk_groups[] =;
static const char * const gp1_clk_groups[] =;
static const char * const gp_mn_groups[] =;
static const char * const gcc_gp_clk1_groups[] =;
static const char * const gcc_gp_clk2_groups[] =;
static const char * const gcc_gp_clk3_groups[] =;

static const char * const qua_mi2s_groups[] =;

static const char * const pri_mi2s_groups[] =;

static const char * const spkr_mi2s_groups[] =;

static const char * const ter_mi2s_groups[] =;

static const char * const sec_mi2s_groups[] =;

static const char * const hdmi_cec_groups[] =;
static const char * const hdmi_ddc_groups[] =;
static const char * const hdmi_hpd_groups[] =;
static const char * const edp_hpd_groups[] =;

static const char * const mdp_vsync_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 cam_mclk3_groups[] =;

static const char * const cci_timer0_groups[] =;
static const char * const cci_timer1_groups[] =;
static const char * const cci_timer2_groups[] =;
static const char * const cci_timer3_groups[] =;
static const char * const cci_timer4_groups[] =;
static const char * const cci_async_in0_groups[] =;
static const char * const cci_async_in1_groups[] =;
static const char * const cci_async_in2_groups[] =;

static const char * const gp_pdm0_groups[] =;
static const char * const gp_pdm1_groups[] =;
static const char * const gp_pdm2_groups[] =;

static const char * const tsif1_groups[] =;

static const char * const tsif2_groups[] =;

static const char * const hsic_groups[] =;
static const char * const grfc_groups[] =;

static const char * const audio_ref_clk_groups[] =;

static const char * const bt_groups[] =;

static const char * const fm_groups[] =;

static const char * const wlan_groups[] =;

static const char * const slimbus_groups[] =;
static const char * const hsic_ctl_groups[] =;

static const struct pinfunction msm8x74_functions[] =;

static const struct msm_pingroup msm8x74_groups[] =;

#define NUM_GPIO_PINGROUPS

static const struct msm_gpio_wakeirq_map msm8x74_mpm_map[] =;

static const struct msm_pinctrl_soc_data msm8x74_pinctrl =;

static int msm8x74_pinctrl_probe(struct platform_device *pdev)
{}

static const struct of_device_id msm8x74_pinctrl_of_match[] =;

static struct platform_driver msm8x74_pinctrl_driver =;

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

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

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