On Fri, Jun 17, 2016 at 11:46 AM, <Mario_Limonciello@xxxxxxxx> wrote: >> -----Original Message----- >> From: Andy Lutomirski [mailto:luto@xxxxxxxxxxxxxx] >> Sent: Thursday, June 16, 2016 1:41 PM >> To: Limonciello, Mario <Mario_Limonciello@xxxxxxxx> >> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>; Andy Lutomirski >> <luto@xxxxxxxxxx>; Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>; USB >> list <linux-usb@xxxxxxxxxxxxxxx>; Mathias Nyman >> <mathias.nyman@xxxxxxxxx>; Dominguez, Jared >> <Jared_Dominguez@xxxxxxxx> >> Subject: Re: Minor xhci issues (failed to peer) on Dell XPS 13 9350 (Skylake) >> >> On Sun, Mar 13, 2016 at 7:29 PM, Mario Limonciello >> <mario_limonciello@xxxxxxxx> wrote: >> > >> > >> > On 03/12/2016 02:33 PM, Andy Lutomirski wrote: >> >> On Sat, Mar 12, 2016 at 11:35 AM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> >> wrote: >> >> Got it. I was barking up the wrong tree. >> >> >> >> Q: What happens if _Q66 runs concurrently with itself: >> >> >> >> A: >> >> >> >> Method (_Q66, 0, NotSerialized) // _Qxx: EC Query >> >> { >> >> Acquire (PATM, 0x0064) >> >> If ((ECRD != One)) >> >> { >> >> Return (Zero) >> >> } >> >> >> >> NEVT () >> >> Release (PATM) >> >> Return (Zero) >> >> } >> >> >> >> The first one acquires PATM. The second one fails to acquire PATM due >> >> to the timeout, does something potentially harmful when it reenters >> >> NEVT (not sure -- maybe it's fine), then blows up when it tries to >> >> release PATM, which it doesn't hold. >> >> >> >> --Andy >> > Andy, >> > >> > Our team has confirmed this mistake and will issue a fix in a future >> > BIOS. For now if you want to build your own DSDT to see if this is >> > causing your type-C problems the Release(PATM) will be inserted in the >> > obvious location. >> > >> > FWIW this issue will affect many platforms in this generation. (XPS >> > 9550, XPS 9350, Precision 5510, and more) >> > >> >> FYI: the H_EC.CHRG issue seems to be fixed in 1.4.3. The PATM issue >> is still there by inspection of the code, although I haven't gotten >> unlucky enough to trigger it yet. > > Thanks for the heads up. I'll poke the team and find out if it was pushed > out, or it was a different fix than previously planned. If you trigger it and > it's still leading to any problems let me know. > I hit it again. I haven't seen any observable problem yet, but I also don't have anything connected to the USB-C port right now. (I don't know what _Q66 is used for, so maybe it has nothing to do with USB-C. But it's certainly not doing whatever it's supposed to do correctly given this bug. [ +0.037295] ACPI Error: Cannot release Mutex [PATM], not acquired (20160108/exmutex-393) [ +0.000011] No Local Variables are initialized for method [_Q66] [ +0.000002] No Arguments are initialized for method [_Q66] [ +0.000003] ACPI Error: Method parse/execution failed [\_SB.PCI0.LPCB.ECDV._Q66] (Node ffff8802760ec8c0), AE_AML_MUTEX_NOT_A --Andy -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html