Message ID | 20220111133643.589346-1-waynec@nvidia.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | [v2,1/1] ucsi_ccg: Check DEV_INT bit only when starting CCG4 | expand |
On Tue, Jan 11, 2022 at 09:36:43PM +0800, Wayne Chang wrote: > From: Sing-Han Chen <singhanc@nvidia.com> > > after driver sending the UCSI_START cmd, CCGx would > clear Bit 0:Device Interrupt in the INTR_REG if CCGX > reset successfully. > > however, there might be a chance that other bits in > INTR_REG are not cleared due to internal data queued > in PPM and cause the driver thinks CCGx reset failed. > > the commit checks bit 0 in INTR_REG and ignore other > bits. ucsi driver would reset PPM later. > > Signed-off-by: Sing-Han Chen <singhanc@nvidia.com> > Signed-off-by: Wayne Chang <waynec@nvidia.com> > --- > drivers/usb/typec/ucsi/ucsi_ccg.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) What commit id does this fix? thanks, greg k-h
Hi Greg, Thanks for the review. On 1/11/22 10:03 PM, Greg KH wrote: > > > On Tue, Jan 11, 2022 at 09:36:43PM +0800, Wayne Chang wrote: >> From: Sing-Han Chen <singhanc@nvidia.com> >> >> after driver sending the UCSI_START cmd, CCGx would >> clear Bit 0:Device Interrupt in the INTR_REG if CCGX >> reset successfully. >> >> however, there might be a chance that other bits in >> INTR_REG are not cleared due to internal data queued >> in PPM and cause the driver thinks CCGx reset failed. >> >> the commit checks bit 0 in INTR_REG and ignore other >> bits. ucsi driver would reset PPM later. >> >> Signed-off-by: Sing-Han Chen <singhanc@nvidia.com> >> Signed-off-by: Wayne Chang <waynec@nvidia.com> >> --- >> drivers/usb/typec/ucsi/ucsi_ccg.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) > > What commit id does this fix? The change is to fix the defect of ucsi_ccg_init func based on the CCGx spec. The original implementation's commit Id is i247c554a14aa1. > thanks, > > greg k-h > thanks, Wayne.
On Tue, Jan 11, 2022 at 02:15:17PM +0000, Wayne Chang wrote: > Hi Greg, > Thanks for the review. > > On 1/11/22 10:03 PM, Greg KH wrote: > > > > > > On Tue, Jan 11, 2022 at 09:36:43PM +0800, Wayne Chang wrote: > >> From: Sing-Han Chen <singhanc@nvidia.com> > >> > >> after driver sending the UCSI_START cmd, CCGx would > >> clear Bit 0:Device Interrupt in the INTR_REG if CCGX > >> reset successfully. > >> > >> however, there might be a chance that other bits in > >> INTR_REG are not cleared due to internal data queued > >> in PPM and cause the driver thinks CCGx reset failed. > >> > >> the commit checks bit 0 in INTR_REG and ignore other > >> bits. ucsi driver would reset PPM later. > >> > >> Signed-off-by: Sing-Han Chen <singhanc@nvidia.com> > >> Signed-off-by: Wayne Chang <waynec@nvidia.com> > >> --- > >> drivers/usb/typec/ucsi/ucsi_ccg.c | 2 +- > >> 1 file changed, 1 insertion(+), 1 deletion(-) > > > > What commit id does this fix? > The change is to fix the defect of ucsi_ccg_init func based on the CCGx > spec. > The original implementation's commit Id is i247c554a14aa1. Great, can you resend this with a proper "Fixes:" tag on it? thanks, greg k-h
On 1/11/22 10:25 PM, Greg KH wrote: > External email: Use caution opening links or attachments > > > On Tue, Jan 11, 2022 at 02:15:17PM +0000, Wayne Chang wrote: >> Hi Greg, >> Thanks for the review. >> >> On 1/11/22 10:03 PM, Greg KH wrote: >>> >>> >>> On Tue, Jan 11, 2022 at 09:36:43PM +0800, Wayne Chang wrote: >>>> From: Sing-Han Chen <singhanc@nvidia.com> >>>> >>>> after driver sending the UCSI_START cmd, CCGx would >>>> clear Bit 0:Device Interrupt in the INTR_REG if CCGX >>>> reset successfully. >>>> >>>> however, there might be a chance that other bits in >>>> INTR_REG are not cleared due to internal data queued >>>> in PPM and cause the driver thinks CCGx reset failed. >>>> >>>> the commit checks bit 0 in INTR_REG and ignore other >>>> bits. ucsi driver would reset PPM later. >>>> >>>> Signed-off-by: Sing-Han Chen <singhanc@nvidia.com> >>>> Signed-off-by: Wayne Chang <waynec@nvidia.com> >>>> --- >>>> drivers/usb/typec/ucsi/ucsi_ccg.c | 2 +- >>>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> What commit id does this fix? >> The change is to fix the defect of ucsi_ccg_init func based on the CCGx >> spec. >> The original implementation's commit Id is i247c554a14aa1. > > Great, can you resend this with a proper "Fixes:" tag on it? Sure. Will do. Thanks for the review. > > thanks, > > greg k-h > thanks, Wayne.
diff --git a/drivers/usb/typec/ucsi/ucsi_ccg.c b/drivers/usb/typec/ucsi/ucsi_ccg.c index bff96d64dddf..6db7c8ddd51c 100644 --- a/drivers/usb/typec/ucsi/ucsi_ccg.c +++ b/drivers/usb/typec/ucsi/ucsi_ccg.c @@ -325,7 +325,7 @@ static int ucsi_ccg_init(struct ucsi_ccg *uc) if (status < 0) return status; - if (!data) + if (!(data & DEV_INT)) return 0; status = ccg_write(uc, CCGX_RAB_INTR_REG, &data, sizeof(data));