[U-Boot] [PATCH v2 2/3] mpc83xx/pci: Register IMMR region

Mario Six mario.six at gdsys.cc
Wed Jun 13 08:49:38 UTC 2018


Hi Simon,

On Fri, May 4, 2018 at 11:37 PM, Simon Glass <sjg at chromium.org> wrote:
> Hi Mario,
>
> On 4 May 2018 at 02:15, Mario Six <mario.six at gdsys.cc> wrote:
>> Hi Simon,
>>
>> On Thu, May 3, 2018 at 9:02 PM, Simon Glass <sjg at chromium.org> wrote:
>>> Hi Mario,
>>>
>>> On 27 April 2018 at 06:53, Mario Six <mario.six at gdsys.cc> wrote:
>>>> Register the IMMR region as a PCI region when PCI is used on MPC83xx.
>>>>
>>>> Signed-off-by: Mario Six <mario.six at gdsys.cc>
>>>> ---
>>>>
>>>> v1 -> v2:
>>>> No changes
>>>>
>>>> ---
>>>>  drivers/pci/pci-uclass.c | 5 +++++
>>>>  1 file changed, 5 insertions(+)
>>>>
>>>> diff --git a/drivers/pci/pci-uclass.c b/drivers/pci/pci-uclass.c
>>>> index a2e829608a..37ca09d76b 100644
>>>> --- a/drivers/pci/pci-uclass.c
>>>> +++ b/drivers/pci/pci-uclass.c
>>>> @@ -902,6 +902,11 @@ static int decode_regions(struct pci_controller
> *hose, ofnode parent_node,
>>>>                         base, size, PCI_REGION_MEM |
> PCI_REGION_SYS_MEMORY);
>>>>  #endif
>>>>
>>>> +#if defined(MPC83xx) && defined(CONFIG_SYS_IMMR)
>>>> +       pci_set_region(hose->regions + hose->region_count++,
>>>> +                      CONFIG_SYS_IMMR, CONFIG_SYS_IMMR, 0x100000,
>>>> +                      PCI_REGION_MEM | PCI_REGION_SYS_MEMORY);
>>>> +#endif
>>>
>>> Please don't add device-specific code in this file. This could go in
>>> the device tree, perhaps. If not, we perhaps need to do it in your PCI
>>> driver?
>>>
>>
>> OK, I'll try to put it into the DT (I have absolutely no expertise with
> PCI, so
>> I'm still learning with this one).
>
> Here's a possible idea:
>
> decode_regions() is called from the PCI uclass' pre_probe() method. This
> means that by the time your PCI controller enters the probe() method, all
> the regions should be set up. So you should be able to add the above code
> into the probe() method of your PCI controller driver. Perhaps can check a
> compatible string etc. to decide whether to add this region, if it is no
> described in the DT itself.
>

OK, I'll do that for v3, thanks for the explanation.

> Regards,
> Simon
>

Best regards,
Mario


More information about the U-Boot mailing list