summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJinyoung Park <jinyoungp@nvidia.com>2013-12-11 21:15:25 +0900
committerLaxman Dewangan <ldewangan@nvidia.com>2014-03-04 09:55:02 -0800
commite2c64bcbe0d59e24a812d9dcce99ea9fffc26520 (patch)
tree39c0d173574a2cf639e2d01ee065e2fd423ab3e3
parent38a16e07b34aca6bf6a551a4faebc4227f56db63 (diff)
iio: staging: adc: palmas: Rename wakeup to auto conversion
Rename wakeup to auto conversion. Bug 1398960 Bug 1415280 Change-Id: I37bee5239caaeec73c7fa6d769b7e9b7476eab9c Signed-off-by: Jinyoung Park <jinyoungp@nvidia.com> (cherry picked from commit 327d973243e1fc6c24002b317a9aac8be24f7748) Reviewed-on: http://git-master/r/357298 Reviewed-by: Anshul Jain (SW) <anshulj@nvidia.com> Tested-by: Anshul Jain (SW) <anshulj@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
-rw-r--r--drivers/staging/iio/adc/palmas_gpadc.c75
-rw-r--r--include/linux/mfd/palmas.h10
2 files changed, 43 insertions, 42 deletions
diff --git a/drivers/staging/iio/adc/palmas_gpadc.c b/drivers/staging/iio/adc/palmas_gpadc.c
index 2bcdd08f9c90..2381deed68fa 100644
--- a/drivers/staging/iio/adc/palmas_gpadc.c
+++ b/drivers/staging/iio/adc/palmas_gpadc.c
@@ -94,10 +94,10 @@ struct palmas_gpadc {
int irq_auto_1;
struct palmas_gpadc_info *adc_info;
struct completion conv_completion;
- struct palmas_adc_wakeup_property wakeup1_data;
- struct palmas_adc_wakeup_property wakeup2_data;
- bool wakeup1_enable;
- bool wakeup2_enable;
+ struct palmas_adc_auto_conv_property auto_conv0_data;
+ struct palmas_adc_auto_conv_property auto_conv1_data;
+ bool auto_conv0_enable;
+ bool auto_conv1_enable;
int auto_conversion_period;
};
@@ -633,10 +633,10 @@ static int palmas_gpadc_probe(struct platform_device *pdev)
goto out_unregister_map;
}
- if (gpadc_pdata->adc_wakeup1_data) {
- memcpy(&adc->wakeup1_data, gpadc_pdata->adc_wakeup1_data,
- sizeof(adc->wakeup1_data));
- adc->wakeup1_enable = true;
+ if (gpadc_pdata->adc_auto_conv0_data) {
+ memcpy(&adc->auto_conv0_data, gpadc_pdata->adc_auto_conv0_data,
+ sizeof(adc->auto_conv0_data));
+ adc->auto_conv0_enable = true;
adc->irq_auto_0 = palmas_irq_get_virq(adc->palmas,
PALMAS_GPADC_AUTO_0_IRQ);
ret = request_threaded_irq(adc->irq_auto_0, NULL,
@@ -650,10 +650,10 @@ static int palmas_gpadc_probe(struct platform_device *pdev)
}
}
- if (gpadc_pdata->adc_wakeup2_data) {
- memcpy(&adc->wakeup2_data, gpadc_pdata->adc_wakeup2_data,
- sizeof(adc->wakeup2_data));
- adc->wakeup2_enable = true;
+ if (gpadc_pdata->adc_auto_conv1_data) {
+ memcpy(&adc->auto_conv1_data, gpadc_pdata->adc_auto_conv1_data,
+ sizeof(adc->auto_conv1_data));
+ adc->auto_conv1_enable = true;
adc->irq_auto_1 = palmas_irq_get_virq(adc->palmas,
PALMAS_GPADC_AUTO_1_IRQ);
ret = request_threaded_irq(adc->irq_auto_1, NULL,
@@ -716,15 +716,16 @@ static int palmas_gpadc_probe(struct platform_device *pdev)
palmas_gpadc_calibrate(adc, i);
}
- if (adc->wakeup1_enable || adc->wakeup2_enable)
+ if (adc->auto_conv0_enable || adc->auto_conv1_enable)
device_wakeup_enable(&pdev->dev);
+
return 0;
out_irq_auto1_free:
- if (gpadc_pdata->adc_wakeup2_data)
+ if (gpadc_pdata->adc_auto_conv1_data)
free_irq(adc->irq_auto_1, adc);
out_irq_auto0_free:
- if (gpadc_pdata->adc_wakeup1_data)
+ if (gpadc_pdata->adc_auto_conv0_data)
free_irq(adc->irq_auto_0, adc);
out_irq_free:
free_irq(adc->irq, adc);
@@ -745,16 +746,16 @@ static int palmas_gpadc_remove(struct platform_device *pdev)
iio_map_array_unregister(iodev);
iio_device_unregister(iodev);
free_irq(adc->irq, adc);
- if (adc->wakeup1_enable)
+ if (adc->auto_conv0_enable)
free_irq(adc->irq_auto_0, adc);
- if (adc->wakeup2_enable)
+ if (adc->auto_conv1_enable)
free_irq(adc->irq_auto_1, adc);
iio_device_free(iodev);
return 0;
}
#ifdef CONFIG_PM_SLEEP
-static int palmas_adc_wakeup_configure(struct palmas_gpadc *adc)
+static int palmas_adc_auto_conv_configure(struct palmas_gpadc *adc)
{
int adc_period, conv;
int i;
@@ -780,16 +781,16 @@ static int palmas_adc_wakeup_configure(struct palmas_gpadc *adc)
}
conv = 0;
- if (adc->wakeup1_enable) {
+ if (adc->auto_conv0_enable) {
int is_high;
- ch0 = adc->wakeup1_data.adc_channel_number;
+ ch0 = adc->auto_conv0_data.adc_channel_number;
conv |= PALMAS_GPADC_AUTO_CTRL_AUTO_CONV0_EN;
- if (adc->wakeup1_data.adc_high_threshold > 0) {
- thres = adc->wakeup1_data.adc_high_threshold;
+ if (adc->auto_conv0_data.adc_high_threshold > 0) {
+ thres = adc->auto_conv0_data.adc_high_threshold;
is_high = 0;
} else {
- thres = adc->wakeup1_data.adc_low_threshold;
+ thres = adc->auto_conv0_data.adc_low_threshold;
is_high = BIT(7);
}
@@ -811,16 +812,16 @@ static int palmas_adc_wakeup_configure(struct palmas_gpadc *adc)
}
}
- if (adc->wakeup2_enable) {
+ if (adc->auto_conv1_enable) {
int is_high;
- ch1 = adc->wakeup2_data.adc_channel_number;
+ ch1 = adc->auto_conv1_data.adc_channel_number;
conv |= PALMAS_GPADC_AUTO_CTRL_AUTO_CONV1_EN;
- if (adc->wakeup2_data.adc_high_threshold > 0) {
- thres = adc->wakeup2_data.adc_high_threshold;
+ if (adc->auto_conv1_data.adc_high_threshold > 0) {
+ thres = adc->auto_conv1_data.adc_high_threshold;
is_high = 0;
} else {
- thres = adc->wakeup2_data.adc_low_threshold;
+ thres = adc->auto_conv1_data.adc_low_threshold;
is_high = BIT(7);
}
@@ -860,7 +861,7 @@ static int palmas_adc_wakeup_configure(struct palmas_gpadc *adc)
return 0;
}
-static int palmas_adc_wakeup_reset(struct palmas_gpadc *adc)
+static int palmas_adc_auto_conv_reset(struct palmas_gpadc *adc)
{
int ret;
@@ -883,20 +884,20 @@ static int palmas_gpadc_suspend(struct device *dev)
{
struct iio_dev *iodev = dev_to_iio_dev(dev);
struct palmas_gpadc *adc = iio_priv(iodev);
- int wakeup = adc->wakeup1_enable || adc->wakeup2_enable;
+ int wakeup = adc->auto_conv0_enable || adc->auto_conv1_enable;
int ret;
if (!device_may_wakeup(dev) || !wakeup)
return 0;
- ret = palmas_adc_wakeup_configure(adc);
+ ret = palmas_adc_auto_conv_configure(adc);
if (ret < 0)
return ret;
- if (adc->wakeup1_enable)
+ if (adc->auto_conv0_enable)
enable_irq_wake(adc->irq_auto_0);
- if (adc->wakeup2_enable)
+ if (adc->auto_conv1_enable)
enable_irq_wake(adc->irq_auto_1);
return 0;
}
@@ -905,20 +906,20 @@ static int palmas_gpadc_resume(struct device *dev)
{
struct iio_dev *iodev = dev_to_iio_dev(dev);
struct palmas_gpadc *adc = iio_priv(iodev);
- int wakeup = adc->wakeup1_enable || adc->wakeup2_enable;
+ int wakeup = adc->auto_conv0_enable || adc->auto_conv1_enable;
int ret;
if (!device_may_wakeup(dev) || !wakeup)
return 0;
- ret = palmas_adc_wakeup_reset(adc);
+ ret = palmas_adc_auto_conv_reset(adc);
if (ret < 0)
return ret;
- if (adc->wakeup1_enable)
+ if (adc->auto_conv0_enable)
disable_irq_wake(adc->irq_auto_0);
- if (adc->wakeup2_enable)
+ if (adc->auto_conv1_enable)
disable_irq_wake(adc->irq_auto_1);
return 0;
diff --git a/include/linux/mfd/palmas.h b/include/linux/mfd/palmas.h
index 82b1d8276544..c59735e14978 100644
--- a/include/linux/mfd/palmas.h
+++ b/include/linux/mfd/palmas.h
@@ -2,7 +2,7 @@
* TI Palmas
*
* Copyright 2011-2013 Texas Instruments Inc.
- * Copyright (c) 2013, NVIDIA CORPORATION. All rights reserved.
+ * Copyright (c) 2013-2014, NVIDIA CORPORATION. All rights reserved.
*
* Author: Graeme Gregory <gg@slimlogic.co.uk>
* Author: Ian Lartey <ian@slimlogic.co.uk>
@@ -266,12 +266,12 @@ struct palmas {
};
/*
- * ADC wakeup property: Wakup the system from suspend when threshold crossed.
+ * ADC auto conv property: Generate auto conv interrupt when threshold crossed.
* @adc_channel_number: ADC channel number for monitoring.
* @adc_high_threshold: ADC High raw data for upper threshold to generate int.
* @adc_low_threshold: ADC low raw data for lower threshold to generate int.
*/
-struct palmas_adc_wakeup_property {
+struct palmas_adc_auto_conv_property {
int adc_channel_number;
int adc_high_threshold;
int adc_low_threshold;
@@ -297,8 +297,8 @@ struct palmas_gpadc_platform_data {
struct iio_map *iio_maps;
int auto_conversion_period_ms;
- struct palmas_adc_wakeup_property *adc_wakeup1_data;
- struct palmas_adc_wakeup_property *adc_wakeup2_data;
+ struct palmas_adc_auto_conv_property *adc_auto_conv0_data;
+ struct palmas_adc_auto_conv_property *adc_auto_conv1_data;
};
struct palmas_reg_init {