• Phil Edworthy's avatar
    PCI: rcar: Remove dependency on ARM-specific struct hw_pci · 79953dd2
    Phil Edworthy authored
    The R-Car PCIe host controller driver uses pci_common_init_dev(), which is
    ARM-specific and requires the ARM struct hw_pci.  The part of
    pci_common_init_dev() that is needed is limited and can be done here
    without using hw_pci.
    
    Note that the ARM pcibios functions expect the PCI sysdata to be a pointer
    to a struct pci_sys_data.  Add a struct pci_sys_data as the first element
    in struct gen_pci so that when we use a gen_pci pointer as sysdata, it is
    also a pointer to a struct pci_sys_data.
    
    Create and scan the root bus directly without using the ARM
    pci_common_init_dev() interface.
    
    Based on 499733e0 ("PCI: generic: Remove dependency on ARM-specific
    struct hw_pci").
    Signed-off-by: default avatarPhil Edworthy <phil.edworthy@renesas.com>
    Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
    Acked-by: default avatarSimon Horman <horms+renesas@verge.net.au>
    79953dd2
pcie-rcar.c 25.3 KB