* [PATCH v3] usb: typec: mux: intel: Fix DP_HPD_LVL bit field
@ 2020-05-11 9:18 Prashant Malani
2020-05-11 10:19 ` Heikki Krogerus
0 siblings, 1 reply; 2+ messages in thread
From: Prashant Malani @ 2020-05-11 9:18 UTC (permalink / raw)
To: linux-kernel
Cc: bleung, Prashant Malani, Greg Kroah-Hartman, Heikki Krogerus,
open list:USB TYPEC CLASS
According to the PMC Type C Subsystem (TCSS) Mux programming guide rev
0.6, the PMC HPD request LVL bit field is bit 4.
Fix the definition here to match the programming guide.
Since this bit field is changing, explicitly define a field for the
HPD_HIGH mode data bit.
Signed-off-by: Prashant Malani <pmalani@chromium.org>
Fixes: 6701adfa9693 ("usb: typec: driver for Intel PMC mux control")
Reviewed-by: Benson Leung <bleung@chromium.org>
---
Changes in v3:
- Fixed sorting of the bit field after modification.
Changes in v2:
- Fixed bit error in commit message.
drivers/usb/typec/mux/intel_pmc_mux.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/usb/typec/mux/intel_pmc_mux.c b/drivers/usb/typec/mux/intel_pmc_mux.c
index 67c5139cfa0d..c22e5c4bbf1a 100644
--- a/drivers/usb/typec/mux/intel_pmc_mux.c
+++ b/drivers/usb/typec/mux/intel_pmc_mux.c
@@ -63,6 +63,7 @@ enum {
#define PMC_USB_ALTMODE_DP_MODE_SHIFT 8
/* TBT specific Mode Data bits */
+#define PMC_USB_ALTMODE_HPD_HIGH BIT(14)
#define PMC_USB_ALTMODE_TBT_TYPE BIT(17)
#define PMC_USB_ALTMODE_CABLE_TYPE BIT(18)
#define PMC_USB_ALTMODE_ACTIVE_LINK BIT(20)
@@ -74,8 +75,8 @@ enum {
#define PMC_USB_ALTMODE_TBT_GEN(_g_) (((_g_) & GENMASK(1, 0)) << 28)
/* Display HPD Request bits */
+#define PMC_USB_DP_HPD_LVL BIT(4)
#define PMC_USB_DP_HPD_IRQ BIT(5)
-#define PMC_USB_DP_HPD_LVL BIT(6)
struct pmc_usb;
@@ -158,8 +159,7 @@ pmc_usb_mux_dp(struct pmc_usb_port *port, struct typec_mux_state *state)
PMC_USB_ALTMODE_DP_MODE_SHIFT;
if (data->status & DP_STATUS_HPD_STATE)
- req.mode_data |= PMC_USB_DP_HPD_LVL <<
- PMC_USB_ALTMODE_DP_MODE_SHIFT;
+ req.mode_data |= PMC_USB_ALTMODE_HPD_HIGH;
return pmc_usb_command(port, (void *)&req, sizeof(req));
}
--
2.26.2.645.ge9eca65c58-goog
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v3] usb: typec: mux: intel: Fix DP_HPD_LVL bit field
2020-05-11 9:18 [PATCH v3] usb: typec: mux: intel: Fix DP_HPD_LVL bit field Prashant Malani
@ 2020-05-11 10:19 ` Heikki Krogerus
0 siblings, 0 replies; 2+ messages in thread
From: Heikki Krogerus @ 2020-05-11 10:19 UTC (permalink / raw)
To: Prashant Malani
Cc: linux-kernel, bleung, Greg Kroah-Hartman, open list:USB TYPEC CLASS
On Mon, May 11, 2020 at 02:18:34AM -0700, Prashant Malani wrote:
> According to the PMC Type C Subsystem (TCSS) Mux programming guide rev
> 0.6, the PMC HPD request LVL bit field is bit 4.
> Fix the definition here to match the programming guide.
>
> Since this bit field is changing, explicitly define a field for the
> HPD_HIGH mode data bit.
>
> Signed-off-by: Prashant Malani <pmalani@chromium.org>
> Fixes: 6701adfa9693 ("usb: typec: driver for Intel PMC mux control")
> Reviewed-by: Benson Leung <bleung@chromium.org>
Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
> ---
>
> Changes in v3:
> - Fixed sorting of the bit field after modification.
>
> Changes in v2:
> - Fixed bit error in commit message.
>
> drivers/usb/typec/mux/intel_pmc_mux.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/usb/typec/mux/intel_pmc_mux.c b/drivers/usb/typec/mux/intel_pmc_mux.c
> index 67c5139cfa0d..c22e5c4bbf1a 100644
> --- a/drivers/usb/typec/mux/intel_pmc_mux.c
> +++ b/drivers/usb/typec/mux/intel_pmc_mux.c
> @@ -63,6 +63,7 @@ enum {
> #define PMC_USB_ALTMODE_DP_MODE_SHIFT 8
>
> /* TBT specific Mode Data bits */
> +#define PMC_USB_ALTMODE_HPD_HIGH BIT(14)
> #define PMC_USB_ALTMODE_TBT_TYPE BIT(17)
> #define PMC_USB_ALTMODE_CABLE_TYPE BIT(18)
> #define PMC_USB_ALTMODE_ACTIVE_LINK BIT(20)
> @@ -74,8 +75,8 @@ enum {
> #define PMC_USB_ALTMODE_TBT_GEN(_g_) (((_g_) & GENMASK(1, 0)) << 28)
>
> /* Display HPD Request bits */
> +#define PMC_USB_DP_HPD_LVL BIT(4)
> #define PMC_USB_DP_HPD_IRQ BIT(5)
> -#define PMC_USB_DP_HPD_LVL BIT(6)
>
> struct pmc_usb;
>
> @@ -158,8 +159,7 @@ pmc_usb_mux_dp(struct pmc_usb_port *port, struct typec_mux_state *state)
> PMC_USB_ALTMODE_DP_MODE_SHIFT;
>
> if (data->status & DP_STATUS_HPD_STATE)
> - req.mode_data |= PMC_USB_DP_HPD_LVL <<
> - PMC_USB_ALTMODE_DP_MODE_SHIFT;
> + req.mode_data |= PMC_USB_ALTMODE_HPD_HIGH;
>
> return pmc_usb_command(port, (void *)&req, sizeof(req));
> }
> --
> 2.26.2.645.ge9eca65c58-goog
--
heikki
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-05-11 10:19 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-11 9:18 [PATCH v3] usb: typec: mux: intel: Fix DP_HPD_LVL bit field Prashant Malani
2020-05-11 10:19 ` Heikki Krogerus
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).