• Bjorn Andersson's avatar
    PCI: qcom: Add QCS404 PCIe controller support · 67021ae0
    Bjorn Andersson authored
    The QCS404 platform contains a PCIe version 2.4.0 controller and a
    Qualcomm PCIe2 PHY. The driver already supports version 2.4.0, for the
    IPQ4019, but this support touches clocks and resets related to the PHY
    as well and there's no upstream driver for the PHY.
    
    On QCS404 we must initialize the PHY, so a separate PHY driver is
    implemented to take care of this and the controller driver is updated to
    not require the PHY related resources. This is done by relying on the
    fact that operations in both the clock and reset framework are NOPs when
    passed NULL, so we can isolate this change to only the
    qcom_pcie_get_resources_2_4_0() function.
    
    For QCS404 we also need to enable the AHB (iface) clock, in order to
    access the register space of the controller, but as this is not part of
    the IPQ4019 DT binding this is only added for new users of the 2.4.0
    controller.
    Signed-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
    Signed-off-by: default avatarLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
    Reviewed-by: default avatarNiklas Cassel <niklas.cassel@linaro.org>
    Reviewed-by: default avatarVinod Koul <vkoul@kernel.org>
    Acked-by: default avatarStanimir Varbanov <svarbanov@mm-sol.com>
    67021ae0
pcie-qcom.c 32.5 KB