Re: [PATCH v5 00/12] PCI: brcmstb: Add Broadcom Settopbox PCIe support

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

 



On Thu, Sep 13, 2018 at 7:07 AM Lorenzo Pieralisi
<lorenzo.pieralisi@xxxxxxx> wrote:
>
> FYI,
>
> AFAICS this thread did not make it to any vger list you addressed, I
> can't apply/review patches that do not appear on
> linux-pci@xxxxxxxxxxxxxxx at least so we need to figure out what went
> wrong.
>
> I would consider trimming the CC list to start with, which is huge.
>
> Lorenzo

Hi Lorenzo, this may have had something to do with an email issue on
my end.  I will resend again soon.
Thanks, Jim

>
> On Thu, Sep 06, 2018 at 04:42:49PM -0400, Jim Quinlan wrote:
> > This patch series adds support for the Broadcom Settopbox PCIe host
> > controller.  It is targeted to Broadcom Settopbox chips running on
> > ARM, ARM64, and MIPS platforms.
> >
> > V5 Changes:
> >   - V4 had its own DMA ops structure in the PCIe driver which would
> >     override/coexist with the default arch DMA ops.  This approach was
> >     scrapped, and this version instead essentially implements custom
> >     definitions of the __phys_to_dma and __dma_to_phys operations for the
> >     three target arches: MIPs, ARM64, ARM.  This was the course suggested
> >     by one of the V4 reviewers (ChristophH).
> >
> >     For MIPs and ARM64, the DMA remapping is easily accomplished by having
> >     custom definitions of __phys_to_dma and __dma_to_phys.  For
> >     MIPs/BMIPs, ARCH_HAS_PHYS_TO_DMA is already selected and the two
> >     functions are just modified.  For ARM64, this driver selects
> >     ARCH_HAS_PHYS_TO_DMA and declares and defines __phys_to_dma() and
> >     __dma_to_phys().  For ARM, things were not so simple.  The default
> >     functions like __arch_pfn_to_dma() had to be overridden by custom ones
> >     defined in arch/arm/mach-bcm/include/mach/memory.h.  For these
> >     functions to be "seen", we had to declare our own brcmstb_defconfig
> >     and no longer use multi_v7_defconfig.  This is unfortunate.
> >
> >   - Commits have been better organized to first implement the main driver,
> >     then add features (MSI, DMA remap infrastructure), and then add
> >     the DMA remapping modifications for MIPs, ARM64, and ARM.
> >
> > V4 Changes:
> >   - Merged all BrcmSTB PCIe controller files into a single file.
> >   - All new files now have the SPDX identifier.
> >   - Removed the list of PCIe controllers.
> >   - Removed "link-up" race.
> >   - Removed probe of msi psuedo-device.
> >   - Multiple comment text changes, as requested.
> >   - "SSC" => "Spread Spectrum Clocking".
> >   - Set 'memc' variable.
> >   - Unnecessary variable initializations removed (eg rc_bar2_size).
> >   - Added comment on "L23" link state.
> >   - Removed use of "__refdata".
> >   - Formatting of structure elements.
> >
> > V3 Changes:
> >   - Fold pcie-brcmstb-msi.c into pcie-brcmstb.c
> >   - Use PCI_XXX constants for PCIe capability registers
> >   - Removal of any unused constants
> >   - Change s/pci/pcie/ for filenames, comment text
> >   - Config space access now uses 8/16/32 read/writes
> >   - Use proper multi-line comment style
> >   - Use function names, structure that are common in other host drivers
> >   - DT binding 'brcm,ssc' is now 'brcm,enable-ssc'
> >   - Dropped DT binding 'xyz-supply'
> >   - Not setting CRS support as Linux does it if it is advertised.
> >   - Removed code that was considered "debug code".
> >   - Use of_get_pcie_domain_nr()
> >   - Variable 'bridge_setup_done' removed.
> >
> > V2 Changes:
> > * Patch brcmstb-add-memory-API:
> >   - fix DT_PROP_DATA_TO_U32 macro.
> >   - dropped one EXPORT_SYMBOL, changed the other to GPL.
> > * Patch DT-docs-for-Brcmstb-PCIe:
> >   - change 'brcm,gen' prop to standard 'max-link-speed'.
> >   - rewrite bindings commit to omit standard prop defs.
> >   - change props "supplies", "supply-names" to "xyz-supply"
> > * Patch removed: export-symbol-arch_setup_dma_ops [4/9]
> > * Patch brcmstb-add-dma-ranges:
> >   - use get_dma_ops(); also use a const dma_map_ops structure.
> >   - rewrite map_sg(), unmap_sg(), other calls like syng_sg_*()
> >   - omit brcm_mapping_error(), but added code in brcm_dma_supported()
> >   - put all of the notifier code in one compilation unit.
> >
> >
> >
> > Florian Fainelli (1):
> >   soc: bcm: brcmstb: add memory API
> >
> > Jim Quinlan (11):
> >   dt-bindings: pci: add DT docs for Brcmstb PCIe device
> >   PCI: brcmstb: add Broadcom STB PCIe host controller driver
> >   PCI: brcmstb: add dma-range mapping for inbound traffic
> >   PCI: brcmstb: add MSI capability
> >   MIPS: BMIPS: add dma remap for BrcmSTB PCIe
> >   PCI/MSI: enable PCI_MSI_IRQ_DOMAIN support for MIPS
> >   MIPS: BMIPS: add PCI bindings for 7425, 7435
> >   MIPS: BMIPS: enable PCI
> >   ARM64: declare __phys_to_dma on ARCH_HAS_PHYS_TO_DMA
> >   ARM64: add dma remap for BrcmSTB PCIe
> >   ARM: add dma remap for BrcmSTB PCIe
> >
> >  .../devicetree/bindings/pci/brcmstb-pcie.txt       |   59 +
> >  arch/arm/Kconfig                                   |   33 +
> >  arch/arm/configs/brcmstb_defconfig                 |  204 +++
> >  arch/arm/configs/multi_v7_defconfig                |    3 -
> >  arch/arm/mach-bcm/Kconfig                          |   21 +-
> >  arch/arm/mach-bcm/Makefile.boot                    |    0
> >  arch/arm/mach-bcm/include/mach/irqs.h              |    3 +
> >  arch/arm/mach-bcm/include/mach/memory.h            |   47 +
> >  arch/arm/mach-bcm/include/mach/uncompress.h        |    8 +
> >  arch/arm64/include/asm/dma-direct.h                |   16 +
> >  arch/mips/Kconfig                                  |    3 +
> >  arch/mips/bmips/dma.c                              |    9 +
> >  arch/mips/boot/dts/brcm/bcm7425.dtsi               |   28 +
> >  arch/mips/boot/dts/brcm/bcm7435.dtsi               |   28 +
> >  arch/mips/boot/dts/brcm/bcm97425svmb.dts           |    4 +
> >  arch/mips/boot/dts/brcm/bcm97435svmb.dts           |    4 +
> >  drivers/pci/Kconfig                                |    2 +-
> >  drivers/pci/controller/Kconfig                     |   13 +
> >  drivers/pci/controller/Makefile                    |    1 +
> >  drivers/pci/controller/pcie-brcmstb.c              | 1554 ++++++++++++++++++++
> >  drivers/soc/bcm/brcmstb/Makefile                   |    2 +-
> >  drivers/soc/bcm/brcmstb/memory.c                   |  158 ++
> >  include/soc/brcmstb/common.h                       |   16 +
> >  include/soc/brcmstb/memory_api.h                   |   26 +
> >  24 files changed, 2217 insertions(+), 25 deletions(-)
> >  create mode 100644 Documentation/devicetree/bindings/pci/brcmstb-pcie.txt
> >  create mode 100644 arch/arm/configs/brcmstb_defconfig
> >  create mode 100644 arch/arm/mach-bcm/Makefile.boot
> >  create mode 100644 arch/arm/mach-bcm/include/mach/irqs.h
> >  create mode 100644 arch/arm/mach-bcm/include/mach/memory.h
> >  create mode 100644 arch/arm/mach-bcm/include/mach/uncompress.h
> >  create mode 100644 arch/arm64/include/asm/dma-direct.h
> >  create mode 100644 drivers/pci/controller/pcie-brcmstb.c
> >  create mode 100644 drivers/soc/bcm/brcmstb/memory.c
> >  create mode 100644 include/soc/brcmstb/memory_api.h
> >
> > --
> > 1.9.0.138.g2de3478
> >


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux