summaryrefslogtreecommitdiff
path: root/drivers/misc
diff options
context:
space:
mode:
authorAmit Jain <ajain@motorola.com>2014-02-06 11:11:46 -0600
committerJames Wylder <jwylder@motorola.com>2014-03-05 17:47:18 -0600
commit2855fb7b26ef2fb97edd7ca39f2d9fef3173ea3c (patch)
treed138de72cd9d23984d88a87be9c6ab7969842874 /drivers/misc
parent07a7fd709b227d60cfbc39d554c56f4883bc2c13 (diff)
downloadolio-linux-3.10-2855fb7b26ef2fb97edd7ca39f2d9fef3173ea3c.tar.xz
olio-linux-3.10-2855fb7b26ef2fb97edd7ca39f2d9fef3173ea3c.zip
IKXCLOCK-193:Init mechanism of M4 based drivers
Change-Id: I3c665f1c31d14e73d3776982d570c250e6f8c3b1 Reviewed-on: http://gerrit.pcs.mot.com/608745 SLTApproved: Slta Waiver <sltawvr@motorola.com> Tested-by: Jira Key <jirakey@motorola.com> Reviewed-by: Sajid Dalvi <fsd017@motorola.com> Submit-Approved: Jira Key <jirakey@motorola.com>
Diffstat (limited to 'drivers/misc')
-rw-r--r--drivers/misc/m4sensorhub_audio.c6
-rw-r--r--drivers/misc/m4sensorhub_bmp180.c6
-rw-r--r--drivers/misc/m4sensorhub_display.c5
-rw-r--r--drivers/misc/m4sensorhub_download.c6
-rw-r--r--drivers/misc/m4sensorhub_gesture.c6
-rw-r--r--drivers/misc/m4sensorhub_mpu9150.c5
-rw-r--r--drivers/misc/m4sensorhub_passive.c6
-rw-r--r--drivers/misc/m4sensorhub_pedometer.c6
-rw-r--r--drivers/misc/m4sensorhub_stillmode.c6
9 files changed, 34 insertions, 18 deletions
diff --git a/drivers/misc/m4sensorhub_audio.c b/drivers/misc/m4sensorhub_audio.c
index 7ab475df9aa..86d737230f7 100644
--- a/drivers/misc/m4sensorhub_audio.c
+++ b/drivers/misc/m4sensorhub_audio.c
@@ -349,9 +349,10 @@ static const struct file_operations audio_client_fops = {
.read = audio_client_read,
};
-static int audio_driver_init(struct m4sensorhub_data *m4sensorhub)
+static int audio_driver_init(struct init_calldata *p_arg)
{
int ret;
+ struct m4sensorhub_data *m4sensorhub = p_arg->p_m4sensorhub_data;
ret = m4sensorhub_irq_register(m4sensorhub, M4SH_IRQ_MIC_DATA_READY,
m4_handle_audio_irq, audio_data);
@@ -387,7 +388,8 @@ static int audio_client_probe(struct spi_device *spi)
}
audio_client_data->dev_dsp = ret;
audio_client_data->dev_dsp_open_count = 0;
- ret = m4sensorhub_register_initcall(audio_driver_init);
+ ret = m4sensorhub_register_initcall(audio_driver_init,
+ audio_client_data);
if (ret < 0) {
KDEBUG(M4SH_ERROR, "Unable to register init function "
"for audio client = %d\n", ret);
diff --git a/drivers/misc/m4sensorhub_bmp180.c b/drivers/misc/m4sensorhub_bmp180.c
index 933f583f8ba..02fa1e7c102 100644
--- a/drivers/misc/m4sensorhub_bmp180.c
+++ b/drivers/misc/m4sensorhub_bmp180.c
@@ -240,9 +240,10 @@ static struct miscdevice pressure_client_miscdrv = {
};
-static int pressure_driver_init(struct m4sensorhub_data *m4sensorhub)
+static int pressure_driver_init(struct init_calldata *p_arg)
{
int ret;
+ struct m4sensorhub_data *m4sensorhub = p_arg->p_m4sensorhub_data;
ret = m4sensorhub_irq_register(m4sensorhub,
M4SH_IRQ_PRESSURE_DATA_READY,
m4_handle_pressure_irq,
@@ -299,7 +300,8 @@ static int pressure_client_probe(struct platform_device *pdev)
goto unregister_input_device;
}
misc_pressure_data = pressure_client_data;
- ret = m4sensorhub_register_initcall(pressure_driver_init);
+ ret = m4sensorhub_register_initcall(pressure_driver_init,
+ pressure_client_data);
if (ret < 0) {
KDEBUG(M4SH_ERROR, "Unable to register init function "
"for pressure client = %d\n", ret);
diff --git a/drivers/misc/m4sensorhub_display.c b/drivers/misc/m4sensorhub_display.c
index a5b81d3375a..0c8cf733337 100644
--- a/drivers/misc/m4sensorhub_display.c
+++ b/drivers/misc/m4sensorhub_display.c
@@ -391,9 +391,10 @@ static void display_panic_restore(\
}
}
-static int display_driver_init(struct m4sensorhub_data *m4sensorhub)
+static int display_driver_init(struct init_calldata *p_arg)
{
int err;
+ struct m4sensorhub_data *m4sensorhub = p_arg->p_m4sensorhub_data;
err = m4sensorhub_panic_register(m4sensorhub, PANICHDL_DISPLAY_RESTORE,
display_panic_restore, global_display_data);
@@ -448,7 +449,7 @@ static int display_client_probe(struct platform_device *pdev)
mutex_init(&(display_data->m4_mutex));
global_display_data = display_data;
- ret = m4sensorhub_register_initcall(display_driver_init);
+ ret = m4sensorhub_register_initcall(display_driver_init, display_data);
if (ret < 0) {
KDEBUG(M4SH_ERROR, "Unable to register init function "
"for display client = %d\n", ret);
diff --git a/drivers/misc/m4sensorhub_download.c b/drivers/misc/m4sensorhub_download.c
index a671a393f88..85206e228f9 100644
--- a/drivers/misc/m4sensorhub_download.c
+++ b/drivers/misc/m4sensorhub_download.c
@@ -311,9 +311,10 @@ static struct miscdevice download_client_miscdrv = {
.fops = &download_client_fops,
};
-static int download_driver_init(struct m4sensorhub_data *m4sensorhub)
+static int download_driver_init(struct init_calldata *p_arg)
{
int ret;
+ struct m4sensorhub_data *m4sensorhub = p_arg->p_m4sensorhub_data;
ret = m4sensorhub_irq_register(m4sensorhub, M4SH_IRQ_DLCMD_RESP_READY,
m4_handle_download_irq,
misc_download_data);
@@ -360,7 +361,8 @@ static int download_client_probe(struct platform_device *pdev)
goto free_memory;
}
misc_download_data = download_client_data;
- ret = m4sensorhub_register_initcall(download_driver_init);
+ ret = m4sensorhub_register_initcall(download_driver_init,
+ download_client_data);
if (ret < 0) {
KDEBUG(M4SH_ERROR, "Unable to register init function "
"for download client = %d\n", ret);
diff --git a/drivers/misc/m4sensorhub_gesture.c b/drivers/misc/m4sensorhub_gesture.c
index 21eaba7e82a..eb814fa220b 100644
--- a/drivers/misc/m4sensorhub_gesture.c
+++ b/drivers/misc/m4sensorhub_gesture.c
@@ -245,9 +245,10 @@ static struct miscdevice gesture_client_miscdrv = {
.fops = &gesture_client_fops,
};
-static int gesture_driver_init(struct m4sensorhub_data *m4sensorhub)
+static int gesture_driver_init(struct init_calldata *p_arg)
{
int ret = 0;
+ struct m4sensorhub_data *m4sensorhub = p_arg->p_m4sensorhub_data;
ret = m4sensorhub_irq_register(m4sensorhub, M4SH_IRQ_GESTURE_DETECTED,
m4_handle_gesture_irq,
misc_gesture_data);
@@ -326,7 +327,8 @@ static int gesture_client_probe(struct platform_device *pdev)
goto unregister_input_device;
}
misc_gesture_data = gesture_client_data;
- ret = m4sensorhub_register_initcall(gesture_driver_init);
+ ret = m4sensorhub_register_initcall(gesture_driver_init,
+ gesture_client_data);
if (ret < 0) {
KDEBUG(M4SH_ERROR, "Unable to register init function"
"for gesture client = %d\n", ret);
diff --git a/drivers/misc/m4sensorhub_mpu9150.c b/drivers/misc/m4sensorhub_mpu9150.c
index 6cc7a838081..e3ee394d1a2 100644
--- a/drivers/misc/m4sensorhub_mpu9150.c
+++ b/drivers/misc/m4sensorhub_mpu9150.c
@@ -903,7 +903,7 @@ static int mpu9150_irq_enable_disable(struct mpu9150_client *mpu9150_client_data
return ret;
}
-static int mpu9150_driver_init(struct m4sensorhub_data *m4sensorhub)
+static int mpu9150_driver_init(struct init_calldata *p_arg)
{
int ret;
ret = mpu9150_irq_init(misc_mpu9150_data);
@@ -982,7 +982,8 @@ static int mpu9150_client_probe(struct platform_device *pdev)
goto unregister_input_device;
}
misc_mpu9150_data = mpu9150_client_data;
- ret = m4sensorhub_register_initcall(mpu9150_driver_init);
+ ret = m4sensorhub_register_initcall(mpu9150_driver_init,
+ mpu9150_client_data);
if (ret < 0) {
KDEBUG(M4SH_ERROR, "Unable to register init function"
"for mpu9150 client = %d\n", ret);
diff --git a/drivers/misc/m4sensorhub_passive.c b/drivers/misc/m4sensorhub_passive.c
index b875afbd80c..6e40b5c4c1d 100644
--- a/drivers/misc/m4sensorhub_passive.c
+++ b/drivers/misc/m4sensorhub_passive.c
@@ -168,9 +168,10 @@ static struct miscdevice passive_client_miscdrv = {
.fops = &passive_client_fops,
};
-static int passive_driver_init(struct m4sensorhub_data *m4sensorhub)
+static int passive_driver_init(struct init_calldata *p_arg)
{
int ret;
+ struct m4sensorhub_data *m4sensorhub = p_arg->p_m4sensorhub_data;
ret = m4sensorhub_irq_register(m4sensorhub,
M4SH_IRQ_PASSIVE_BUFFER_FULL,
m4_handle_passive_irq,
@@ -239,7 +240,8 @@ static int passive_client_probe(struct platform_device *pdev)
goto unregister_input_device;
}
misc_passive_data = passive_client_data;
- ret = m4sensorhub_register_initcall(passive_driver_init);
+ ret = m4sensorhub_register_initcall(passive_driver_init,
+ passive_client_data);
if (ret < 0) {
KDEBUG(M4SH_ERROR, "Unable to register init function"
"for passive client = %d\n", ret);
diff --git a/drivers/misc/m4sensorhub_pedometer.c b/drivers/misc/m4sensorhub_pedometer.c
index 7b17c022fc0..88faa11f04b 100644
--- a/drivers/misc/m4sensorhub_pedometer.c
+++ b/drivers/misc/m4sensorhub_pedometer.c
@@ -357,9 +357,10 @@ static struct miscdevice pedometer_client_miscdrv = {
.fops = &pedometer_client_fops,
};
-static int pedometer_driver_init(struct m4sensorhub_data *m4sensorhub)
+static int pedometer_driver_init(struct init_calldata *p_arg)
{
int ret;
+ struct m4sensorhub_data *m4sensorhub = p_arg->p_m4sensorhub_data;
ret = m4sensorhub_irq_register(m4sensorhub,
M4SH_IRQ_PEDOMETER_DATA_READY,
@@ -449,7 +450,8 @@ static int pedometer_client_probe(struct platform_device *pdev)
goto unregister_input_device;
}
misc_pedometer_data = pedometer_client_data;
- ret = m4sensorhub_register_initcall(pedometer_driver_init);
+ ret = m4sensorhub_register_initcall(pedometer_driver_init,
+ pedometer_client_data);
if (ret < 0) {
KDEBUG(M4SH_ERROR, "Unable to register init function "
"for pedometer client = %d\n", ret);
diff --git a/drivers/misc/m4sensorhub_stillmode.c b/drivers/misc/m4sensorhub_stillmode.c
index bfd56cc28a7..20ced175c6c 100644
--- a/drivers/misc/m4sensorhub_stillmode.c
+++ b/drivers/misc/m4sensorhub_stillmode.c
@@ -224,9 +224,10 @@ static DEVICE_ATTR(state, 0664, m4_stillmode_getstate,
static DEVICE_ATTR(timeout, 0664, m4_stillmode_get_timeout,
m4_stillmode_set_timeout);
-static int stillmode_driver_init(struct m4sensorhub_data *m4sensorhub)
+static int stillmode_driver_init(struct init_calldata *p_arg)
{
int ret;
+ struct m4sensorhub_data *m4sensorhub = p_arg->p_m4sensorhub_data;
ret = m4sensorhub_irq_register(m4sensorhub, M4SH_IRQ_STILL_DETECTED,
m4_handle_stillmode_irq,
@@ -320,7 +321,8 @@ static int stillmode_client_probe(struct platform_device *pdev)
INIT_WORK(&stillmode_client_data->queued_work,
m4sensorhub_stillmode_work);
- ret = m4sensorhub_register_initcall(stillmode_driver_init);
+ ret = m4sensorhub_register_initcall(stillmode_driver_init,
+ stillmode_client_data);
if (ret < 0) {
KDEBUG(M4SH_ERROR, "Unable to register init function "
"for stillmode client = %d\n", ret);