aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/i2c/busses/i2c-designware-baytrail.c
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2015-02-10 12:06:06 -0500
committerWolfram Sang <wsa@the-dreams.de>2015-03-06 19:07:07 -0500
commit9b5c9f043e7a70665b2eb092f316d5d5cd238d49 (patch)
tree036ef43c4a3b9cce74039bafd9a3e3523f100f90 /drivers/i2c/busses/i2c-designware-baytrail.c
parent13a7a6ac0a11197edcd0f756a035f472b42cdf8b (diff)
i2c: designware-baytrail: describe magic numbers
The patch converts hardcoded numerical constants to a named ones. While here, align the variable name in get_sem() and reset_semaphore(). Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: David E. Box <david.e.box@linux.intel.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Diffstat (limited to 'drivers/i2c/busses/i2c-designware-baytrail.c')
-rw-r--r--drivers/i2c/busses/i2c-designware-baytrail.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/i2c/busses/i2c-designware-baytrail.c b/drivers/i2c/busses/i2c-designware-baytrail.c
index 5f1ff4cc5c34..e9cb3555dc79 100644
--- a/drivers/i2c/busses/i2c-designware-baytrail.c
+++ b/drivers/i2c/busses/i2c-designware-baytrail.c
@@ -22,22 +22,24 @@
22 22
23#define SEMAPHORE_TIMEOUT 100 23#define SEMAPHORE_TIMEOUT 100
24#define PUNIT_SEMAPHORE 0x7 24#define PUNIT_SEMAPHORE 0x7
25#define PUNIT_SEMAPHORE_BIT BIT(0)
26#define PUNIT_SEMAPHORE_ACQUIRE BIT(1)
25 27
26static unsigned long acquired; 28static unsigned long acquired;
27 29
28static int get_sem(struct device *dev, u32 *sem) 30static int get_sem(struct device *dev, u32 *sem)
29{ 31{
30 u32 reg_val; 32 u32 data;
31 int ret; 33 int ret;
32 34
33 ret = iosf_mbi_read(BT_MBI_UNIT_PMC, BT_MBI_BUNIT_READ, PUNIT_SEMAPHORE, 35 ret = iosf_mbi_read(BT_MBI_UNIT_PMC, BT_MBI_BUNIT_READ, PUNIT_SEMAPHORE,
34 &reg_val); 36 &data);
35 if (ret) { 37 if (ret) {
36 dev_err(dev, "iosf failed to read punit semaphore\n"); 38 dev_err(dev, "iosf failed to read punit semaphore\n");
37 return ret; 39 return ret;
38 } 40 }
39 41
40 *sem = reg_val & 0x1; 42 *sem = data & PUNIT_SEMAPHORE_BIT;
41 43
42 return 0; 44 return 0;
43} 45}
@@ -52,9 +54,9 @@ static void reset_semaphore(struct device *dev)
52 return; 54 return;
53 } 55 }
54 56
55 data = data & 0xfffffffe; 57 data &= ~PUNIT_SEMAPHORE_BIT;
56 if (iosf_mbi_write(BT_MBI_UNIT_PMC, BT_MBI_BUNIT_WRITE, 58 if (iosf_mbi_write(BT_MBI_UNIT_PMC, BT_MBI_BUNIT_WRITE,
57 PUNIT_SEMAPHORE, data)) 59 PUNIT_SEMAPHORE, data))
58 dev_err(dev, "iosf failed to reset punit semaphore during write\n"); 60 dev_err(dev, "iosf failed to reset punit semaphore during write\n");
59} 61}
60 62
@@ -70,9 +72,9 @@ int baytrail_i2c_acquire(struct dw_i2c_dev *dev)
70 if (!dev->acquire_lock) 72 if (!dev->acquire_lock)
71 return 0; 73 return 0;
72 74
73 /* host driver writes 0x2 to side band semaphore register */ 75 /* host driver writes to side band semaphore register */
74 ret = iosf_mbi_write(BT_MBI_UNIT_PMC, BT_MBI_BUNIT_WRITE, 76 ret = iosf_mbi_write(BT_MBI_UNIT_PMC, BT_MBI_BUNIT_WRITE,
75 PUNIT_SEMAPHORE, 0x2); 77 PUNIT_SEMAPHORE, PUNIT_SEMAPHORE_ACQUIRE);
76 if (ret) { 78 if (ret) {
77 dev_err(dev->dev, "iosf punit semaphore request failed\n"); 79 dev_err(dev->dev, "iosf punit semaphore request failed\n");
78 return ret; 80 return ret;