Input: adp5588-keys - fix coding style warnings
Just some code cleanup regarding coding style. With the introduction of the bits.h macros changes in the code are indeed introduced. Signed-off-by: Nuno Sá <nuno.sa@analog.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20220829131553.690063-8-nuno.sa@analog.com Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
0063aecc61
commit
e22d21d31f
|
@ -8,6 +8,7 @@
|
||||||
* Copyright (C) 2008-2010 Analog Devices Inc.
|
* Copyright (C) 2008-2010 Analog Devices Inc.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <linux/bits.h>
|
||||||
#include <linux/delay.h>
|
#include <linux/delay.h>
|
||||||
#include <linux/errno.h>
|
#include <linux/errno.h>
|
||||||
#include <linux/gpio/driver.h>
|
#include <linux/gpio/driver.h>
|
||||||
|
@ -29,16 +30,16 @@
|
||||||
#define CFG 0x01 /* Configuration Register1 */
|
#define CFG 0x01 /* Configuration Register1 */
|
||||||
#define INT_STAT 0x02 /* Interrupt Status Register */
|
#define INT_STAT 0x02 /* Interrupt Status Register */
|
||||||
#define KEY_LCK_EC_STAT 0x03 /* Key Lock and Event Counter Register */
|
#define KEY_LCK_EC_STAT 0x03 /* Key Lock and Event Counter Register */
|
||||||
#define Key_EVENTA 0x04 /* Key Event Register A */
|
#define KEY_EVENTA 0x04 /* Key Event Register A */
|
||||||
#define Key_EVENTB 0x05 /* Key Event Register B */
|
#define KEY_EVENTB 0x05 /* Key Event Register B */
|
||||||
#define Key_EVENTC 0x06 /* Key Event Register C */
|
#define KEY_EVENTC 0x06 /* Key Event Register C */
|
||||||
#define Key_EVENTD 0x07 /* Key Event Register D */
|
#define KEY_EVENTD 0x07 /* Key Event Register D */
|
||||||
#define Key_EVENTE 0x08 /* Key Event Register E */
|
#define KEY_EVENTE 0x08 /* Key Event Register E */
|
||||||
#define Key_EVENTF 0x09 /* Key Event Register F */
|
#define KEY_EVENTF 0x09 /* Key Event Register F */
|
||||||
#define Key_EVENTG 0x0A /* Key Event Register G */
|
#define KEY_EVENTG 0x0A /* Key Event Register G */
|
||||||
#define Key_EVENTH 0x0B /* Key Event Register H */
|
#define KEY_EVENTH 0x0B /* Key Event Register H */
|
||||||
#define Key_EVENTI 0x0C /* Key Event Register I */
|
#define KEY_EVENTI 0x0C /* Key Event Register I */
|
||||||
#define Key_EVENTJ 0x0D /* Key Event Register J */
|
#define KEY_EVENTJ 0x0D /* Key Event Register J */
|
||||||
#define KP_LCK_TMR 0x0E /* Keypad Lock1 to Lock2 Timer */
|
#define KP_LCK_TMR 0x0E /* Keypad Lock1 to Lock2 Timer */
|
||||||
#define UNLOCK1 0x0F /* Unlock Key1 */
|
#define UNLOCK1 0x0F /* Unlock Key1 */
|
||||||
#define UNLOCK2 0x10 /* Unlock Key2 */
|
#define UNLOCK2 0x10 /* Unlock Key2 */
|
||||||
|
@ -66,9 +67,9 @@
|
||||||
#define GPIO_INT_LVL1 0x26 /* GPIO Edge/Level Detect */
|
#define GPIO_INT_LVL1 0x26 /* GPIO Edge/Level Detect */
|
||||||
#define GPIO_INT_LVL2 0x27 /* GPIO Edge/Level Detect */
|
#define GPIO_INT_LVL2 0x27 /* GPIO Edge/Level Detect */
|
||||||
#define GPIO_INT_LVL3 0x28 /* GPIO Edge/Level Detect */
|
#define GPIO_INT_LVL3 0x28 /* GPIO Edge/Level Detect */
|
||||||
#define Debounce_DIS1 0x29 /* Debounce Disable */
|
#define DEBOUNCE_DIS1 0x29 /* Debounce Disable */
|
||||||
#define Debounce_DIS2 0x2A /* Debounce Disable */
|
#define DEBOUNCE_DIS2 0x2A /* Debounce Disable */
|
||||||
#define Debounce_DIS3 0x2B /* Debounce Disable */
|
#define DEBOUNCE_DIS3 0x2B /* Debounce Disable */
|
||||||
#define GPIO_PULL1 0x2C /* GPIO Pull Disable */
|
#define GPIO_PULL1 0x2C /* GPIO Pull Disable */
|
||||||
#define GPIO_PULL2 0x2D /* GPIO Pull Disable */
|
#define GPIO_PULL2 0x2D /* GPIO Pull Disable */
|
||||||
#define GPIO_PULL3 0x2E /* GPIO Pull Disable */
|
#define GPIO_PULL3 0x2E /* GPIO Pull Disable */
|
||||||
|
@ -91,27 +92,27 @@
|
||||||
#define ADP5588_DEVICE_ID_MASK 0xF
|
#define ADP5588_DEVICE_ID_MASK 0xF
|
||||||
|
|
||||||
/* Configuration Register1 */
|
/* Configuration Register1 */
|
||||||
#define ADP5588_AUTO_INC (1 << 7)
|
#define ADP5588_AUTO_INC BIT(7)
|
||||||
#define ADP5588_GPIEM_CFG (1 << 6)
|
#define ADP5588_GPIEM_CFG BIT(6)
|
||||||
#define ADP5588_OVR_FLOW_M (1 << 5)
|
#define ADP5588_OVR_FLOW_M BIT(5)
|
||||||
#define ADP5588_INT_CFG (1 << 4)
|
#define ADP5588_INT_CFG BIT(4)
|
||||||
#define ADP5588_OVR_FLOW_IEN (1 << 3)
|
#define ADP5588_OVR_FLOW_IEN BIT(3)
|
||||||
#define ADP5588_K_LCK_IM (1 << 2)
|
#define ADP5588_K_LCK_IM BIT(2)
|
||||||
#define ADP5588_GPI_IEN (1 << 1)
|
#define ADP5588_GPI_IEN BIT(1)
|
||||||
#define ADP5588_KE_IEN (1 << 0)
|
#define ADP5588_KE_IEN BIT(0)
|
||||||
|
|
||||||
/* Interrupt Status Register */
|
/* Interrupt Status Register */
|
||||||
#define ADP5588_CMP2_INT (1 << 5)
|
#define ADP5588_CMP2_INT BIT(5)
|
||||||
#define ADP5588_CMP1_INT (1 << 4)
|
#define ADP5588_CMP1_INT BIT(4)
|
||||||
#define ADP5588_OVR_FLOW_INT (1 << 3)
|
#define ADP5588_OVR_FLOW_INT BIT(3)
|
||||||
#define ADP5588_K_LCK_INT (1 << 2)
|
#define ADP5588_K_LCK_INT BIT(2)
|
||||||
#define ADP5588_GPI_INT (1 << 1)
|
#define ADP5588_GPI_INT BIT(1)
|
||||||
#define ADP5588_KE_INT (1 << 0)
|
#define ADP5588_KE_INT BIT(0)
|
||||||
|
|
||||||
/* Key Lock and Event Counter Register */
|
/* Key Lock and Event Counter Register */
|
||||||
#define ADP5588_K_LCK_EN (1 << 6)
|
#define ADP5588_K_LCK_EN BIT(6)
|
||||||
#define ADP5588_LCK21 0x30
|
#define ADP5588_LCK21 0x30
|
||||||
#define ADP5588_KEC 0xF
|
#define ADP5588_KEC GENMASK(3, 0)
|
||||||
|
|
||||||
#define ADP5588_MAXGPIO 18
|
#define ADP5588_MAXGPIO 18
|
||||||
#define ADP5588_BANK(offs) ((offs) >> 3)
|
#define ADP5588_BANK(offs) ((offs) >> 3)
|
||||||
|
@ -158,10 +159,10 @@
|
||||||
#define ADP5588_GPIMAPSIZE_MAX (GPI_PIN_END - GPI_PIN_BASE + 1)
|
#define ADP5588_GPIMAPSIZE_MAX (GPI_PIN_END - GPI_PIN_BASE + 1)
|
||||||
|
|
||||||
/* Key Event Register xy */
|
/* Key Event Register xy */
|
||||||
#define KEY_EV_PRESSED (1 << 7)
|
#define KEY_EV_PRESSED BIT(7)
|
||||||
#define KEY_EV_MASK (0x7F)
|
#define KEY_EV_MASK GENMASK(6, 0)
|
||||||
|
|
||||||
#define KP_SEL(x) (0xFFFF >> (16 - x)) /* 2^x-1 */
|
#define KP_SEL(x) (BIT(x) - 1) /* 2^x-1 */
|
||||||
|
|
||||||
#define KEYP_MAX_EVENT 10
|
#define KEYP_MAX_EVENT 10
|
||||||
|
|
||||||
|
@ -211,7 +212,7 @@ static int adp5588_write(struct i2c_client *client, u8 reg, u8 val)
|
||||||
return i2c_smbus_write_byte_data(client, reg, val);
|
return i2c_smbus_write_byte_data(client, reg, val);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int adp5588_gpio_get_value(struct gpio_chip *chip, unsigned off)
|
static int adp5588_gpio_get_value(struct gpio_chip *chip, unsigned int off)
|
||||||
{
|
{
|
||||||
struct adp5588_kpad *kpad = gpiochip_get_data(chip);
|
struct adp5588_kpad *kpad = gpiochip_get_data(chip);
|
||||||
unsigned int bank = ADP5588_BANK(kpad->gpiomap[off]);
|
unsigned int bank = ADP5588_BANK(kpad->gpiomap[off]);
|
||||||
|
@ -231,7 +232,7 @@ static int adp5588_gpio_get_value(struct gpio_chip *chip, unsigned off)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void adp5588_gpio_set_value(struct gpio_chip *chip,
|
static void adp5588_gpio_set_value(struct gpio_chip *chip,
|
||||||
unsigned off, int val)
|
unsigned int off, int val)
|
||||||
{
|
{
|
||||||
struct adp5588_kpad *kpad = gpiochip_get_data(chip);
|
struct adp5588_kpad *kpad = gpiochip_get_data(chip);
|
||||||
unsigned int bank = ADP5588_BANK(kpad->gpiomap[off]);
|
unsigned int bank = ADP5588_BANK(kpad->gpiomap[off]);
|
||||||
|
@ -244,8 +245,7 @@ static void adp5588_gpio_set_value(struct gpio_chip *chip,
|
||||||
else
|
else
|
||||||
kpad->dat_out[bank] &= ~bit;
|
kpad->dat_out[bank] &= ~bit;
|
||||||
|
|
||||||
adp5588_write(kpad->client, GPIO_DAT_OUT1 + bank,
|
adp5588_write(kpad->client, GPIO_DAT_OUT1 + bank, kpad->dat_out[bank]);
|
||||||
kpad->dat_out[bank]);
|
|
||||||
|
|
||||||
mutex_unlock(&kpad->gpio_lock);
|
mutex_unlock(&kpad->gpio_lock);
|
||||||
}
|
}
|
||||||
|
@ -285,7 +285,7 @@ static int adp5588_gpio_set_config(struct gpio_chip *chip, unsigned int off,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int adp5588_gpio_direction_input(struct gpio_chip *chip, unsigned off)
|
static int adp5588_gpio_direction_input(struct gpio_chip *chip, unsigned int off)
|
||||||
{
|
{
|
||||||
struct adp5588_kpad *kpad = gpiochip_get_data(chip);
|
struct adp5588_kpad *kpad = gpiochip_get_data(chip);
|
||||||
unsigned int bank = ADP5588_BANK(kpad->gpiomap[off]);
|
unsigned int bank = ADP5588_BANK(kpad->gpiomap[off]);
|
||||||
|
@ -303,7 +303,7 @@ static int adp5588_gpio_direction_input(struct gpio_chip *chip, unsigned off)
|
||||||
}
|
}
|
||||||
|
|
||||||
static int adp5588_gpio_direction_output(struct gpio_chip *chip,
|
static int adp5588_gpio_direction_output(struct gpio_chip *chip,
|
||||||
unsigned off, int val)
|
unsigned int off, int val)
|
||||||
{
|
{
|
||||||
struct adp5588_kpad *kpad = gpiochip_get_data(chip);
|
struct adp5588_kpad *kpad = gpiochip_get_data(chip);
|
||||||
unsigned int bank = ADP5588_BANK(kpad->gpiomap[off]);
|
unsigned int bank = ADP5588_BANK(kpad->gpiomap[off]);
|
||||||
|
@ -320,12 +320,11 @@ static int adp5588_gpio_direction_output(struct gpio_chip *chip,
|
||||||
kpad->dat_out[bank] &= ~bit;
|
kpad->dat_out[bank] &= ~bit;
|
||||||
|
|
||||||
ret = adp5588_write(kpad->client, GPIO_DAT_OUT1 + bank,
|
ret = adp5588_write(kpad->client, GPIO_DAT_OUT1 + bank,
|
||||||
kpad->dat_out[bank]);
|
kpad->dat_out[bank]);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
|
|
||||||
ret = adp5588_write(kpad->client, GPIO_DIR1 + bank,
|
ret = adp5588_write(kpad->client, GPIO_DIR1 + bank, kpad->dir[bank]);
|
||||||
kpad->dir[bank]);
|
|
||||||
|
|
||||||
out_unlock:
|
out_unlock:
|
||||||
mutex_unlock(&kpad->gpio_lock);
|
mutex_unlock(&kpad->gpio_lock);
|
||||||
|
@ -525,7 +524,7 @@ static void adp5588_report_events(struct adp5588_kpad *kpad, int ev_cnt)
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
for (i = 0; i < ev_cnt; i++) {
|
for (i = 0; i < ev_cnt; i++) {
|
||||||
int key = adp5588_read(kpad->client, Key_EVENTA + i);
|
int key = adp5588_read(kpad->client, KEY_EVENTA + i);
|
||||||
int key_val = key & KEY_EV_MASK;
|
int key_val = key & KEY_EV_MASK;
|
||||||
int key_press = key & KEY_EV_PRESSED;
|
int key_press = key & KEY_EV_PRESSED;
|
||||||
|
|
||||||
|
@ -625,21 +624,20 @@ static int adp5588_setup(struct adp5588_kpad *kpad)
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < KEYP_MAX_EVENT; i++) {
|
for (i = 0; i < KEYP_MAX_EVENT; i++) {
|
||||||
ret = adp5588_read(client, Key_EVENTA);
|
ret = adp5588_read(client, KEY_EVENTA);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = adp5588_write(client, INT_STAT,
|
ret = adp5588_write(client, INT_STAT,
|
||||||
ADP5588_CMP2_INT | ADP5588_CMP1_INT |
|
ADP5588_CMP2_INT | ADP5588_CMP1_INT |
|
||||||
ADP5588_OVR_FLOW_INT | ADP5588_K_LCK_INT |
|
ADP5588_OVR_FLOW_INT | ADP5588_K_LCK_INT |
|
||||||
ADP5588_GPI_INT | ADP5588_KE_INT); /* Status is W1C */
|
ADP5588_GPI_INT | ADP5588_KE_INT); /* Status is W1C */
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
return adp5588_write(client, CFG, ADP5588_INT_CFG |
|
return adp5588_write(client, CFG, ADP5588_INT_CFG |
|
||||||
ADP5588_OVR_FLOW_IEN |
|
ADP5588_OVR_FLOW_IEN | ADP5588_KE_IEN);
|
||||||
ADP5588_KE_IEN);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int adp5588_fw_parse(struct adp5588_kpad *kpad)
|
static int adp5588_fw_parse(struct adp5588_kpad *kpad)
|
||||||
|
@ -723,7 +721,7 @@ static int adp5588_probe(struct i2c_client *client,
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
if (!i2c_check_functionality(client->adapter,
|
if (!i2c_check_functionality(client->adapter,
|
||||||
I2C_FUNC_SMBUS_BYTE_DATA)) {
|
I2C_FUNC_SMBUS_BYTE_DATA)) {
|
||||||
dev_err(&client->dev, "SMBUS Byte Data not Supported\n");
|
dev_err(&client->dev, "SMBUS Byte Data not Supported\n");
|
||||||
return -EIO;
|
return -EIO;
|
||||||
}
|
}
|
||||||
|
@ -747,7 +745,7 @@ static int adp5588_probe(struct i2c_client *client,
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
revid = (u8) ret & ADP5588_DEVICE_ID_MASK;
|
revid = ret & ADP5588_DEVICE_ID_MASK;
|
||||||
if (WA_DELAYED_READOUT_REVID(revid))
|
if (WA_DELAYED_READOUT_REVID(revid))
|
||||||
kpad->delay = msecs_to_jiffies(WA_DELAYED_READOUT_TIME);
|
kpad->delay = msecs_to_jiffies(WA_DELAYED_READOUT_TIME);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue