diff options
Diffstat (limited to 'drivers/misc/modem_if/modem_variation.h')
-rw-r--r-- | drivers/misc/modem_if/modem_variation.h | 106 |
1 files changed, 70 insertions, 36 deletions
diff --git a/drivers/misc/modem_if/modem_variation.h b/drivers/misc/modem_if/modem_variation.h index b5ec61b..b314bb2 100644 --- a/drivers/misc/modem_if/modem_variation.h +++ b/drivers/misc/modem_if/modem_variation.h @@ -1,5 +1,4 @@ /* - * Copyright (C) 2010 Google, Inc. * Copyright (C) 2010 Samsung Electronics. * * This software is licensed under the terms of the GNU General Public @@ -16,7 +15,7 @@ #ifndef __MODEM_VARIATION_H__ #define __MODEM_VARIATION_H__ -#include <linux/platform_data/modem.h> +#include "modem.h" #define DECLARE_MODEM_INIT(type) \ int type ## _init_modemctl_device(struct modem_ctl *mc, \ @@ -61,12 +60,30 @@ DECLARE_MODEM_INIT(cbp72); DECLARE_MODEM_INIT_DUMMY(cbp72) #endif +#ifdef CONFIG_CDMA_MODEM_CBP82 +DECLARE_MODEM_INIT(cbp82); +#else +DECLARE_MODEM_INIT_DUMMY(cbp82) +#endif + +#ifdef CONFIG_LTE_MODEM_CMC220 +DECLARE_MODEM_INIT(cmc220); +#else +DECLARE_MODEM_INIT_DUMMY(cmc220) +#endif + #ifdef CONFIG_LTE_MODEM_CMC221 DECLARE_MODEM_INIT(cmc221); #else DECLARE_MODEM_INIT_DUMMY(cmc221) #endif +#ifdef CONFIG_UMTS_MODEM_SS222 +DECLARE_MODEM_INIT(ss222); +#else +DECLARE_MODEM_INIT_DUMMY(ss222) +#endif + #ifdef CONFIG_CDMA_MODEM_MDM6600 DECLARE_MODEM_INIT(mdm6600); #else @@ -79,6 +96,12 @@ DECLARE_MODEM_INIT(esc6270); DECLARE_MODEM_INIT_DUMMY(esc6270) #endif +#ifdef CONFIG_CDMA_MODEM_QSC6085 +DECLARE_MODEM_INIT(qsc6085); +#else +DECLARE_MODEM_INIT_DUMMY(qsc6085) +#endif + #ifdef CONFIG_TDSCDMA_MODEM_SPRD8803 DECLARE_MODEM_INIT(sprd8803); #else @@ -94,6 +117,18 @@ DECLARE_LINK_INIT(mipi); DECLARE_LINK_INIT_DUMMY(mipi) #endif +#ifdef CONFIG_LINK_DEVICE_USB +DECLARE_LINK_INIT(usb); +#else +DECLARE_LINK_INIT_DUMMY(usb) +#endif + +#ifdef CONFIG_LINK_DEVICE_HSIC +DECLARE_LINK_INIT(hsic); +#else +DECLARE_LINK_INIT_DUMMY(hsic) +#endif + #ifdef CONFIG_LINK_DEVICE_DPRAM DECLARE_LINK_INIT(dpram); #else @@ -106,53 +141,52 @@ DECLARE_LINK_INIT(pld); DECLARE_LINK_INIT_DUMMY(pld) #endif -#ifdef CONFIG_LINK_DEVICE_SPI -DECLARE_LINK_INIT(spi); -#else -DECLARE_LINK_INIT_DUMMY(spi) -#endif - -#ifdef CONFIG_LINK_DEVICE_USB -DECLARE_LINK_INIT(usb); +#ifdef CONFIG_LINK_DEVICE_C2C +DECLARE_LINK_INIT(c2c); #else -DECLARE_LINK_INIT_DUMMY(usb) +DECLARE_LINK_INIT_DUMMY(c2c) #endif -#ifdef CONFIG_LINK_DEVICE_HSIC -DECLARE_LINK_INIT(hsic); +#ifdef CONFIG_LINK_DEVICE_SHMEM +DECLARE_LINK_INIT(shmem); #else -DECLARE_LINK_INIT_DUMMY(hsic) +DECLARE_LINK_INIT_DUMMY(shmem) #endif -#ifdef CONFIG_LINK_DEVICE_C2C -DECLARE_LINK_INIT(c2c); +#ifdef CONFIG_LINK_DEVICE_SPI +DECLARE_LINK_INIT(spi); #else -DECLARE_LINK_INIT_DUMMY(c2c) +DECLARE_LINK_INIT_DUMMY(spi) #endif typedef int (*modem_init_call)(struct modem_ctl *, struct modem_data *); -static modem_init_call modem_init_func[] = { - MODEM_INIT_CALL(xmm6260), - MODEM_INIT_CALL(xmm6262), - MODEM_INIT_CALL(cbp71), - MODEM_INIT_CALL(cbp72), - MODEM_INIT_CALL(cmc221), - MODEM_INIT_CALL(mdm6600), - MODEM_INIT_CALL(esc6270), - MODEM_INIT_CALL(sprd8803), - MODEM_INIT_CALL(dummy), +static modem_init_call modem_init_func[MAX_MODEM_TYPE] = { + [IMC_XMM6260] = MODEM_INIT_CALL(xmm6260), + [IMC_XMM6262] = MODEM_INIT_CALL(xmm6262), + [VIA_CBP71] = MODEM_INIT_CALL(cbp71), + [VIA_CBP72] = MODEM_INIT_CALL(cbp72), + [VIA_CBP82] = MODEM_INIT_CALL(cbp82), + [SEC_CMC220] = MODEM_INIT_CALL(cmc220), + [SEC_CMC221] = MODEM_INIT_CALL(cmc221), + [SEC_SS222] = MODEM_INIT_CALL(ss222), + [QC_MDM6600] = MODEM_INIT_CALL(mdm6600), + [QC_ESC6270] = MODEM_INIT_CALL(esc6270), + [QC_QSC6085] = MODEM_INIT_CALL(qsc6085), + [SPRD_SC8803] = MODEM_INIT_CALL(sprd8803), + [DUMMY] = MODEM_INIT_CALL(dummy), }; typedef struct link_device *(*link_init_call)(struct platform_device *); -static link_init_call link_init_func[] = { - LINK_INIT_CALL(undefined), - LINK_INIT_CALL(mipi), - LINK_INIT_CALL(dpram), - LINK_INIT_CALL(spi), - LINK_INIT_CALL(usb), - LINK_INIT_CALL(hsic), - LINK_INIT_CALL(c2c), - LINK_INIT_CALL(pld), +static link_init_call link_init_func[LINKDEV_MAX] = { + [LINKDEV_UNDEFINED] = LINK_INIT_CALL(undefined), + [LINKDEV_MIPI] = LINK_INIT_CALL(mipi), + [LINKDEV_USB] = LINK_INIT_CALL(usb), + [LINKDEV_HSIC] = LINK_INIT_CALL(hsic), + [LINKDEV_DPRAM] = LINK_INIT_CALL(dpram), + [LINKDEV_PLD] = LINK_INIT_CALL(pld), + [LINKDEV_C2C] = LINK_INIT_CALL(c2c), + [LINKDEV_SHMEM] = LINK_INIT_CALL(shmem), + [LINKDEV_SPI] = LINK_INIT_CALL(spi), }; static int call_modem_init_func(struct modem_ctl *mc, struct modem_data *pdata) |