RE: pciehp LinkState

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Martin,

> >
> > Below is the overview since cold boot with no card inserted with all
> those hotplug events. You see,
> > pciehp never sets LinkState back to minus once the slot is empty:
> >
> > vostro ~ # grep LinkState
> pciehp/3.12/cold_boot_no_card_in_slot/lspci_vvv_initial__inserted__eject
> ed_but_not_realized__inserted__ejected.txt
> >                         Changed: MRL- PresDet- LinkState-
> >                         Changed: MRL- PresDet- LinkState+
> >                         Changed: MRL- PresDet- LinkState+
> >                         Changed: MRL- PresDet- LinkState+
> >                         Changed: MRL- PresDet- LinkState+
> 
> I opened https://bugzilla.kernel.org/show_bug.cgi?id=65521 for this
> issue.  I agree that pciehp should probably clear this bit.  Rajat
> recently posted some patches [1] that add support for link state
> changes.  I haven't look at them in detail yet, but I wouldn't be
> surprised if they will fix this issue.  If you wanted to test them,
> that would be awesome!
> 
> Bjorn
> 
> [1] http://lkml.kernel.org/r/528BE8B6.9080007@xxxxxxxxx
> --

Yes, this issue should be fixed by the following 2 patches:

https://lkml.org/lkml/2013/11/19/542
https://lkml.org/lkml/2013/11/19/543

The particular hunk you want to be looking at is this:

@@ -661,7 +669,7 @@ static irqreturn_t pcie_isr(int irq, void *dev_id)
 
 		detected &= (PCI_EXP_SLTSTA_ABP | PCI_EXP_SLTSTA_PFD |
 			     PCI_EXP_SLTSTA_MRLSC | PCI_EXP_SLTSTA_PDC |
-			     PCI_EXP_SLTSTA_CC);
+			     PCI_EXP_SLTSTA_CC | PCI_EXP_SLTSTA_DLLSC);
 		detected &= ~intr_loc;
 		intr_loc |= detected;
 		if (!intr_loc)


Would you be please kind enough to test the patch out? No need to pass any module parameter (Just apply patch and build & boot normally like you would).

Thanks,

Rajat

--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux