Prashant Malani has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/40024 )
Change subject: google/chromeec: Add USB MUX Interrupt ......................................................................
Patch Set 2:
Patch Set 2:
Patch Set 2:
Patch Set 2:
Patch Set 2:
Patch Set 2:
Patch Set 2:
> Patch Set 2: > > > Patch Set 2: > > > > > Patch Set 1: > > > > > > > Patch Set 1: Code-Review-1 > > > > > > > > Adding pmalani@. > > > > > > > > Prashant told me last week that this change is no longer necessary for extcon events. > > > > > > That is for the cros_ec change (EXT device) this change is still needed > > > > Would you happen to know what kernel driver is servicing this interrupt? > > Also, when exactly in the PD discovery and mode entry process is this interrupt triggered? > > > > We want to back out the HACK which causes the LPC driver to call the notifier chain on every interrupt. > > > > I have 2 CLs (https://chromium-review.googlesource.com/q/hashtag:%22extcon-pd-notify%22+(s...)) that use the PD notifier mechanism, which is what will be used once extcon is removed. > > I'll talk with Utkarsh on this cause even with the above mentioned Kernel patches without this interrupt events aren't coming through on the driver. He will be able to better address this than me
Looks like we hadn't seen these patches yet so this was done without knowledge of the Kernel changes...we were just working on verifying TCSS on upstream and found this to be missing will abandon after I test with the Kernel patches
Great, will stand by. Please also make sure that you have the following two patches in your kernel: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/2... https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/2...
The above two are meant to replace the need for the extcon DT entry via ACPI.
Looks to be working but not fully working...we are not able to see DP come up but I will abandon this patch for now as yours seem to solve the main issue here
Thanks for the update. Does the kernel driver pull the correct Mux info from the EC when the interrupt occurs?
It is only pulling the first event no subsequent events
So for TBT and for DP it's only getting the initial connect request not the safe mode or alt mode requests that follow.
for TBT you should see something like the following [ 39.220409] extcon-tcss-cros-ec extcon-tcss-cros-ec: tbt=0,usb4=0 tbt_type=0, optical_cable=0, tbt_usb4_link=0 [ 39.220413] extcon-tcss-cros-ec extcon-tcss-cros-ec: tbt_usb4_cable_speed=0, tbt_usb4_cable_gen=0 [ 40.748557] extcon-tcss-cros-ec extcon-tcss-cros-ec: tbt=0,usb4=0 tbt_type=0, optical_cable=0, tbt_usb4_link=0 [ 40.748561] extcon-tcss-cros-ec extcon-tcss-cros-ec: tbt_usb4_cable_speed=2, tbt_usb4_cable_gen=0 [ 40.752853] extcon-tcss-cros-ec extcon-tcss-cros-ec: tbt=1,usb4=0 tbt_type=0, optical_cable=0, tbt_usb4_link=0 [ 40.752857] extcon-tcss-cros-ec extcon-tcss-cros-ec: tbt_usb4_cable_speed=2, tbt_usb4_cable_gen=0
Where the first set is the initial connect request, the second set is the safe mode request and the last is the alt mode request
with the pd notify patches you only see the first request
[ 88.528218] extcon-tcss-cros-ec extcon-tcss-cros-ec: tbt=0,usb4=0 tbt_type=0, optical_cable=0, tbt_usb4_link=0 [ 88.528221] extcon-tcss-cros-ec extcon-tcss-cros-ec: tbt_usb4_cable_speed=0, tbt_usb4_cable_gen=0 [ 96.972844] extcon-tcss-cros-ec extcon-tcss-cros-ec: tbt=0,usb4=0 tbt_type=0, optical_cable=0, tbt_usb4_link=0 [ 96.972848] extcon-tcss-cros-ec extcon-tcss-cros-ec: tbt_usb4_cable_speed=0, tbt_usb4_cable_gen=0
This is two different connects of the same device with unplug inbetween
Looks like there are two requests for the second set (maybe I'm interpreting it incorrectly).
How was that interrupt being asserted earlier by the EC? It could be that the EC code needs to reset a pd host event instead.
Sorry, I meant "E code needs to send a PD host event instead"