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. -- 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