Subject: Re: Problem with mini-PCI-E slot on P2020RDB

From: Felix Radensky <[email-masked]>
Date: Mon, 11 Apr 2011 16:45:55 +0300

Hi Prabhakar,

On 04/11/2011 02:09 PM, Kushwaha Prabhakar-B32579 wrote:
> Hi,
>
> Yes. It wil be applicable for all revisions.
>
> Regards,
> Prabhakar
>

I'm sure this is applicable to all revisions, but it doesn't necessarily
makes things work. The problem I've reported back in 2009 still
exists on P2020RDB revC, even if I use the latest u-boot and kernel
and make device tree changes that you've suggested.
I've attached the boot log.

On the other hand, on P1020RDB revD with the same kernel, ath9k
driver loads fine and interrupts are arriving. However this only works
with u-boot-2010.12. If I upgrade to  u-boot-2011.03 loading ath9k
hangs the board. I'll report this separately on u-boot mailing list.

I would summarize this problem as follows. P10xx/P20xx RDB boards
prior to revD have hardware flaw. Using mini PCI-E cards that rely on
legacy interrupts is not possible on such boards. The problem was
fixed in board revision D. To use legacy interrupts one has to modify
pci-e nodes in device tree and add "interrupt-map-mask" and
"interrupt-map" properties.

Do you agree with this analysis ?

Felix.

>> -----Original Message-----
>> From: Felix Radensky [mailto:[email-masked]]
>> Sent: Monday, April 11, 2011 2:10 PM
>> To: Kushwaha Prabhakar-B32579
>> Cc: Fabian Bertholm; Leon Woestenberg; [email-masked]; Mahajan
>> Vivek-B08308; Aggrwal Poonam-B10812; Gupta Maneesh-B18878
>> Subject: Re: Problem with mini-PCI-E slot on P2020RDB
>>
>> Hi,
>>
>> Assuming I have all patches in place, will this problem be resolved on
>> earlier board revisions (before rev D) ?
>>
>> Felix.
>>
>> On 04/11/2011 12:06 PM, Kushwaha Prabhakar-B32579 wrote:
>>> Hi Fabe,
>>>
>>> Yes .. P1020/P1011 RDB has same issue as of P2020RDB.
>>>
>>> It was because of some missing patches at u-boot and Linux.
>>>
>>> U-boot patch : It is already present in open source. Please use latest
>>> code base Linux patch : I am in process of posting in open source.
>> Please make mentioned changes of IDSEL.
>>> --Prabhakar
>>>
>>>> -----Original Message-----
>>>> From: Fabian Bertholm [mailto:[email-masked]]
>>>> Sent: Monday, April 11, 2011 1:53 PM
>>>> To: Kushwaha Prabhakar-B32579
>>>> Cc: Leon Woestenberg; [email-masked]; Mahajan Vivek-B08308;
>>>> Felix Radensky; Aggrwal Poonam-B10812; Gupta Maneesh-B18878
>>>> Subject: Re: Problem with mini-PCI-E slot on P2020RDB
>>>>
>>>> Hello Kushwaha Prabhakar,
>>>>
>>>> Our impression is that there is the same issue on the P1020/P1011 RDB.
>>>> Can you confirm this?
>>>>
>>>> Best Regards,
>>>> Fabe
>>>>
>>>>
>>>> 2011/4/8 Kushwaha Prabhakar-B32579<[email-masked]>:
>>>>>> -----Original Message-----
>>>>>> From: Leon Woestenberg [mailto:[email-masked]]
>>>>>> Sent: Thursday, April 07, 2011 10:50 PM
>>>>>> To: [email-masked]
>>>>>> Cc: Kumar Gala; Mahajan Vivek-B08308; Aggrwal Poonam-B10812; Felix
>>>>>> Radensky; Kushwaha Prabhakar-B32579
>>>>>> Subject: Re: Problem with mini-PCI-E slot on P2020RDB
>>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> On Thu, Dec 17, 2009 at 9:28 PM, Felix Radensky
>>>>>> <[email-masked]>
>>>>>> wrote:
>>>>>>> Kumar Gala wrote:
>>>>>>>> On Dec 17, 2009, at 2:59 AM, Mahajan Vivek-B08308 wrote:
>>>>>>>>>> Thanks a lot. If I understand you correctly, the only way I can
>>>>>>>>>> get ath9k driver to work on this board using legacy interrupts
>>>>>>>>>> is to wait for a hardware fix. Right ?
>>>>>>>>>>
>>>>>>>>> Correct
>>>>>>>> I'm confused.  What's the issue with IRQ0 on the P2020RDB?  Is it
>>>>>>>> used for another purpose?
>>>>>>> There's a problem with IRQ0 with respect to mini-PCI-E slot. I
>>>>>>> have Atheros wireless card plugged into it. ath9k wireless driver
>>>>>>> for this card uses legacy PCI-E interrupts, and I get "irq 16:
>>>>>>> nobody
>>>> cared"
>>>>>>> message when driver executes request_irq(). Vivek has come to a
>>>>>>> conclusion that the problem is related to incorrect IRQ0 routing
>>>>>>> for mini-PCI-E slot on P2020RDB.
>>>>>>>
>>>>>> I would like to understand this issue better, as I seem to be
>>>>>> running into something similar, and it puts my board design on hold.
>>>>>>
>>>>>> Can someone (from Freescale) explain what happens if a PCI Express
>>>>>> end point on the mini-PCIe slot raises a legacy interrupt, and
>>>>>> where this goes wrong?
>>>>>>
>>>>>>   From what document or source code file can I conclude that the
>>>>>> PCIe legacy interrupt is shared with IRQ0?
>>>>>>
>>>>>>
>>>>>> I found this:
>>>>>>
>>>>>> P1020E/P2020E RDB System Errata, Last Update: 2/15/2010:
>>>>>> Problem:IRQ0 held low
>>>>>> Fix: Add 4.7K pull-up (to 3.3.V) for RTC_INT_N.
>>>>>> See R420 in Rev D schematic.
>>>>>> Add 4.7K pull-up (to 3.3.V) for MCU_INT_N.
>>>>>> See R423 in Rev D schematic.
>>>>>>
>>>>>>
>>>>> Hello Leon,
>>>>>
>>>>>    Yes you are right, PCIe leagacy interrupt is shared with IRQ0. For
>>>> Atheros issue.
>>>>>    Can you please try followings, Meanwhile I will try to dig into it.
>>>>>
>>>>> http://old.nabble.com/Problem-with-mini-PCI-E-slot-on-P2020RDB-td268
>>>>> 02
>>>>> 038.html
>>>>>
>>>>> Regarding sata_sil24, Please see my e-mail on Linux-ide for correct
>>>> IDSEL value.
>>>>> Please first try IDSEL value mentioned in email on Linux-ide. Then
>>>>> try
>>>> this URL..
>>>>> --Prabhakar
>>>>>
>>>>> _______________________________________________
>>>>> Linuxppc-dev mailing list
>>>>> [email-masked]
>>>>> https://lists.ozlabs.org/listinfo/linuxppc-dev
>>>>>
>