Re: [PATCH v2 1/2] extcon: ptn5150: Switch to GENMASK() and BIT() macros
Hi, On 27/8/2020 1:26 pm, Chanwoo Choi wrote: - + vendor_id = FIELD_GET(PTN5150_REG_DEVICE_ID_VENDOR, reg_data); + version_id = FIELD_GET(PTN5150_REG_DEVICE_ID_VERSION, reg_data); dev_dbg(info->dev, "Device type: version: 0x%x, vendor: 0x%x\n", version_id, vendor_id); Applied it. Thanks. Thank you! Regards Vadivel
Re: [PATCH v2 1/2] extcon: ptn5150: Switch to GENMASK() and BIT() macros
On 8/27/20 12:56 PM, Ramuthevar,Vadivel MuruganX wrote: > From: Ramuthevar Vadivel Murugan > > Switch to GENMASK() and BIT() macros. > > Signed-off-by: Ramuthevar Vadivel Murugan > > Reviewed-by: Krzysztof Kozlowski > --- > drivers/extcon/extcon-ptn5150.c | 43 > +++-- > 1 file changed, 11 insertions(+), 32 deletions(-) > > diff --git a/drivers/extcon/extcon-ptn5150.c b/drivers/extcon/extcon-ptn5150.c > index 8ba706fad887..8b930050a3f1 100644 > --- a/drivers/extcon/extcon-ptn5150.c > +++ b/drivers/extcon/extcon-ptn5150.c > @@ -7,6 +7,7 @@ > // Author: Vijai Kumar K > // Copyright (c) 2020 Krzysztof Kozlowski > > +#include > #include > #include > #include > @@ -35,29 +36,13 @@ enum ptn5150_reg { > #define PTN5150_UFP_ATTACHED 0x2 > > /* Define PTN5150 MASK/SHIFT constant */ > -#define PTN5150_REG_DEVICE_ID_VENDOR_SHIFT 0 > -#define PTN5150_REG_DEVICE_ID_VENDOR_MASK\ > - (0x3 << PTN5150_REG_DEVICE_ID_VENDOR_SHIFT) > +#define PTN5150_REG_DEVICE_ID_VERSIONGENMASK(7, 3) > +#define PTN5150_REG_DEVICE_ID_VENDOR GENMASK(2, 0) > > -#define PTN5150_REG_DEVICE_ID_VERSION_SHIFT 3 > -#define PTN5150_REG_DEVICE_ID_VERSION_MASK \ > - (0x1f << PTN5150_REG_DEVICE_ID_VERSION_SHIFT) > - > -#define PTN5150_REG_CC_PORT_ATTACHMENT_SHIFT 2 > -#define PTN5150_REG_CC_PORT_ATTACHMENT_MASK \ > - (0x7 << PTN5150_REG_CC_PORT_ATTACHMENT_SHIFT) > - > -#define PTN5150_REG_CC_VBUS_DETECTION_SHIFT 7 > -#define PTN5150_REG_CC_VBUS_DETECTION_MASK \ > - (0x1 << PTN5150_REG_CC_VBUS_DETECTION_SHIFT) > - > -#define PTN5150_REG_INT_CABLE_ATTACH_SHIFT 0 > -#define PTN5150_REG_INT_CABLE_ATTACH_MASK\ > - (0x1 << PTN5150_REG_INT_CABLE_ATTACH_SHIFT) > - > -#define PTN5150_REG_INT_CABLE_DETACH_SHIFT 1 > -#define PTN5150_REG_INT_CABLE_DETACH_MASK\ > - (0x1 << PTN5150_REG_CC_CABLE_DETACH_SHIFT) > +#define PTN5150_REG_CC_PORT_ATTACHMENT GENMASK(4, 2) > +#define PTN5150_REG_CC_VBUS_DETECTIONBIT(7) > +#define PTN5150_REG_INT_CABLE_ATTACH_MASKBIT(0) > +#define PTN5150_REG_INT_CABLE_DETACH_MASKBIT(1) > > struct ptn5150_info { > struct device *dev; > @@ -95,9 +80,7 @@ static void ptn5150_check_state(struct ptn5150_info *info) > return; > } > > - port_status = ((reg_data & > - PTN5150_REG_CC_PORT_ATTACHMENT_MASK) >> > - PTN5150_REG_CC_PORT_ATTACHMENT_SHIFT); > + port_status = FIELD_GET(PTN5150_REG_CC_PORT_ATTACHMENT, reg_data); > > switch (port_status) { > case PTN5150_DFP_ATTACHED: > @@ -107,8 +90,7 @@ static void ptn5150_check_state(struct ptn5150_info *info) > break; > case PTN5150_UFP_ATTACHED: > extcon_set_state_sync(info->edev, EXTCON_USB, false); > - vbus = ((reg_data & PTN5150_REG_CC_VBUS_DETECTION_MASK) >> > - PTN5150_REG_CC_VBUS_DETECTION_SHIFT); > + vbus = FIELD_GET(PTN5150_REG_CC_VBUS_DETECTION, reg_data); > if (vbus) > gpiod_set_value_cansleep(info->vbus_gpiod, 0); > else > @@ -191,11 +173,8 @@ static int ptn5150_init_dev_type(struct ptn5150_info > *info) > return -EINVAL; > } > > - vendor_id = ((reg_data & PTN5150_REG_DEVICE_ID_VENDOR_MASK) >> > - PTN5150_REG_DEVICE_ID_VENDOR_SHIFT); > - version_id = ((reg_data & PTN5150_REG_DEVICE_ID_VERSION_MASK) >> > - PTN5150_REG_DEVICE_ID_VERSION_SHIFT); > - > + vendor_id = FIELD_GET(PTN5150_REG_DEVICE_ID_VENDOR, reg_data); > + version_id = FIELD_GET(PTN5150_REG_DEVICE_ID_VERSION, reg_data); > dev_dbg(info->dev, "Device type: version: 0x%x, vendor: 0x%x\n", > version_id, vendor_id); > > Applied it. Thanks. -- Best Regards, Chanwoo Choi Samsung Electronics
[PATCH v2 1/2] extcon: ptn5150: Switch to GENMASK() and BIT() macros
From: Ramuthevar Vadivel Murugan Switch to GENMASK() and BIT() macros. Signed-off-by: Ramuthevar Vadivel Murugan Reviewed-by: Krzysztof Kozlowski --- drivers/extcon/extcon-ptn5150.c | 43 +++-- 1 file changed, 11 insertions(+), 32 deletions(-) diff --git a/drivers/extcon/extcon-ptn5150.c b/drivers/extcon/extcon-ptn5150.c index 8ba706fad887..8b930050a3f1 100644 --- a/drivers/extcon/extcon-ptn5150.c +++ b/drivers/extcon/extcon-ptn5150.c @@ -7,6 +7,7 @@ // Author: Vijai Kumar K // Copyright (c) 2020 Krzysztof Kozlowski +#include #include #include #include @@ -35,29 +36,13 @@ enum ptn5150_reg { #define PTN5150_UFP_ATTACHED 0x2 /* Define PTN5150 MASK/SHIFT constant */ -#define PTN5150_REG_DEVICE_ID_VENDOR_SHIFT 0 -#define PTN5150_REG_DEVICE_ID_VENDOR_MASK \ - (0x3 << PTN5150_REG_DEVICE_ID_VENDOR_SHIFT) +#define PTN5150_REG_DEVICE_ID_VERSION GENMASK(7, 3) +#define PTN5150_REG_DEVICE_ID_VENDOR GENMASK(2, 0) -#define PTN5150_REG_DEVICE_ID_VERSION_SHIFT3 -#define PTN5150_REG_DEVICE_ID_VERSION_MASK \ - (0x1f << PTN5150_REG_DEVICE_ID_VERSION_SHIFT) - -#define PTN5150_REG_CC_PORT_ATTACHMENT_SHIFT 2 -#define PTN5150_REG_CC_PORT_ATTACHMENT_MASK\ - (0x7 << PTN5150_REG_CC_PORT_ATTACHMENT_SHIFT) - -#define PTN5150_REG_CC_VBUS_DETECTION_SHIFT7 -#define PTN5150_REG_CC_VBUS_DETECTION_MASK \ - (0x1 << PTN5150_REG_CC_VBUS_DETECTION_SHIFT) - -#define PTN5150_REG_INT_CABLE_ATTACH_SHIFT 0 -#define PTN5150_REG_INT_CABLE_ATTACH_MASK \ - (0x1 << PTN5150_REG_INT_CABLE_ATTACH_SHIFT) - -#define PTN5150_REG_INT_CABLE_DETACH_SHIFT 1 -#define PTN5150_REG_INT_CABLE_DETACH_MASK \ - (0x1 << PTN5150_REG_CC_CABLE_DETACH_SHIFT) +#define PTN5150_REG_CC_PORT_ATTACHMENT GENMASK(4, 2) +#define PTN5150_REG_CC_VBUS_DETECTION BIT(7) +#define PTN5150_REG_INT_CABLE_ATTACH_MASK BIT(0) +#define PTN5150_REG_INT_CABLE_DETACH_MASK BIT(1) struct ptn5150_info { struct device *dev; @@ -95,9 +80,7 @@ static void ptn5150_check_state(struct ptn5150_info *info) return; } - port_status = ((reg_data & - PTN5150_REG_CC_PORT_ATTACHMENT_MASK) >> - PTN5150_REG_CC_PORT_ATTACHMENT_SHIFT); + port_status = FIELD_GET(PTN5150_REG_CC_PORT_ATTACHMENT, reg_data); switch (port_status) { case PTN5150_DFP_ATTACHED: @@ -107,8 +90,7 @@ static void ptn5150_check_state(struct ptn5150_info *info) break; case PTN5150_UFP_ATTACHED: extcon_set_state_sync(info->edev, EXTCON_USB, false); - vbus = ((reg_data & PTN5150_REG_CC_VBUS_DETECTION_MASK) >> - PTN5150_REG_CC_VBUS_DETECTION_SHIFT); + vbus = FIELD_GET(PTN5150_REG_CC_VBUS_DETECTION, reg_data); if (vbus) gpiod_set_value_cansleep(info->vbus_gpiod, 0); else @@ -191,11 +173,8 @@ static int ptn5150_init_dev_type(struct ptn5150_info *info) return -EINVAL; } - vendor_id = ((reg_data & PTN5150_REG_DEVICE_ID_VENDOR_MASK) >> - PTN5150_REG_DEVICE_ID_VENDOR_SHIFT); - version_id = ((reg_data & PTN5150_REG_DEVICE_ID_VERSION_MASK) >> - PTN5150_REG_DEVICE_ID_VERSION_SHIFT); - + vendor_id = FIELD_GET(PTN5150_REG_DEVICE_ID_VENDOR, reg_data); + version_id = FIELD_GET(PTN5150_REG_DEVICE_ID_VERSION, reg_data); dev_dbg(info->dev, "Device type: version: 0x%x, vendor: 0x%x\n", version_id, vendor_id); -- 2.11.0