aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc/modem_if/modem_modemctl_device_esc6270.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/misc/modem_if/modem_modemctl_device_esc6270.c')
-rw-r--r--drivers/misc/modem_if/modem_modemctl_device_esc6270.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/drivers/misc/modem_if/modem_modemctl_device_esc6270.c b/drivers/misc/modem_if/modem_modemctl_device_esc6270.c
index 5a42755..79cdd95 100644
--- a/drivers/misc/modem_if/modem_modemctl_device_esc6270.c
+++ b/drivers/misc/modem_if/modem_modemctl_device_esc6270.c
@@ -24,7 +24,7 @@
#include <linux/sched.h>
#include <linux/platform_device.h>
-#include <linux/platform_data/modem.h>
+#include "modem.h"
#include "modem_prj.h"
#include <linux/regulator/consumer.h>
@@ -115,6 +115,13 @@ static int esc6270_reset(struct modem_ctl *mc)
int esc6270_boot_on(struct modem_ctl *mc)
{
struct link_device *ld = get_current_link(mc->iod);
+#if defined(CONFIG_LINK_DEVICE_DPRAM)
+ /* clear intr */
+ struct dpram_link_device *dpld = to_dpram_link_device(ld);
+ u16 recv_msg = dpld->recv_intr(dpld);
+
+ pr_info("[MODEM_IF:ESC] dpram intr: %x\n", recv_msg);
+#endif
pr_info("[MODEM_IF:ESC] <%s>\n", __func__);
@@ -273,8 +280,11 @@ int esc6270_init_modemctl_device(struct modem_ctl *mc, struct modem_data *pdata)
gpio_set_value(mc->gpio_cp_reset, 0);
gpio_set_value(mc->gpio_cp_on, 0);
- pdev = to_platform_device(mc->dev);
- mc->irq_phone_active = platform_get_irq_byname(pdev, "cp_active_irq");
+ mc->irq_phone_active = pdata->irq_phone_active;
+ if (!mc->irq_phone_active) {
+ mif_err("%s: ERR! get irq_phone_active fail\n", mc->name);
+ return -1;
+ }
pr_info("[MODEM_IF:ESC] <%s> PHONE_ACTIVE IRQ# = %d\n",
__func__, mc->irq_phone_active);
@@ -302,7 +312,7 @@ int esc6270_init_modemctl_device(struct modem_ctl *mc, struct modem_data *pdata)
}
#if defined(CONFIG_SIM_DETECT)
- mc->irq_sim_detect = platform_get_irq_byname(pdev, "sim_irq");
+ mc->irq_sim_detect = pdata->irq_sim_detect;
pr_info("[MODEM_IF:ESC] <%s> SIM_DECTCT IRQ# = %d\n",
__func__, mc->irq_sim_detect);