On Wed, Aug 11, 2021 at 3:38 AM Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@xxxxxxxxxxxxx> wrote: > > Add support to PCIe RC controller on Toshiba Visconti ARM SoCs. PCIe > controller is based of Synopsys DesignWare PCIe core. > > Signed-off-by: Yuji Ishikawa <yuji2.ishikawa@xxxxxxxxxxxxx> > Signed-off-by: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@xxxxxxxxxxxxx> > > v5 -> v6: > - Remove unnecessary commit log. > - Fix split line of visconti_add_pcie_port() > > v4 -> v5: > - Remove PCIE_BUS_OFFSET > - Change link_up confirmation function of visconti_pcie_link_up(). > - Move setting event mask before dw_pcie_link_up(). > - Move the contents of visconti_pcie_power_on() to visconti_pcie_host_init(). > - Remove code for link_gen. > > v3 -> v4: > - Change variable from pci_addr to cpu_addr in visconti_pcie_cpu_addr_fixup(). > - Change the calculation method of CPU addres from subtraction to mask, and > add comment. > - Drop dma_set_mask_and_coherent(). > - Drop set MAX_MSI_IRQS. > - Drop dev_dbg for Link speed. > - Use use the dev_err_probe() to handle the devm_clk_get() failed. > - Changed the redundant clock name. > > v2 -> v3: > - Update subject. > - Wrap description in 75 columns. > - Change config name to PCIE_VISCONTI_HOST. > - Update Kconfig text. > - Drop blank lines. > - Adjusted to 80 columns. > - Drop inline from functions for register access. > - Changed function name from visconti_pcie_check_link_status to > visconti_pcie_link_up. > - Update to using dw_pcie_host_init(). > - Reorder these in the order of use in visconti_pcie_establish_link. > - Rewrite visconti_pcie_host_init() without dw_pcie_setup_rc(). > - Change function name from visconti_device_turnon() to > visconti_pcie_power_on(). > - Unify formats such as dev_err(). > - Drop error label in visconti_add_pcie_port(). > > v1 -> v2: > - Fix typo in commit message. > - Drop "depends on OF && HAS_IOMEM" from Kconfig. > - Stop using the pointer of struct dw_pcie. > - Use _relaxed variant. > - Drop dw_pcie_wait_for_link. > - Drop dbi resource processing. > - Drop MSI IRQ initialization processing. > --- > drivers/pci/controller/dwc/Kconfig | 9 + > drivers/pci/controller/dwc/Makefile | 1 + > drivers/pci/controller/dwc/pcie-visconti.c | 333 +++++++++++++++++++++ > 3 files changed, 343 insertions(+) > create mode 100644 drivers/pci/controller/dwc/pcie-visconti.c Reviewed-by: Rob Herring <robh@xxxxxxxxxx>