Commit graph

274 commits

Author SHA1 Message Date
Linux Build Service Account
7dbd65ad1e Merge "pci: ipq53xx: Enable qcn9224 related commands for ipq53xx" 2023-03-21 12:10:48 -07:00
Praveenkumar I
06db42a59d pci: ipq53xx: Enable qcn9224 related commands for ipq53xx
Change-Id: Ib848a70c373269e95c282ba65ad05457af7a777b
Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com>
2023-03-21 14:58:25 +05:30
Kathiravan T
43442bec19 pci: pci_ipq: initialize the index variable to zero
Change-Id: I0d3582343b7b5dda86548f0dd46dd6e801e820b3
Signed-off-by: Kathiravan T <quic_kathirav@quicinc.com>
2023-03-09 21:33:10 +05:30
Praveenkumar I
4a2716fc06 pci: ipq9574: Fix PCIe single lane PHY configuration
Change-Id: Ie4f6f92a1cdb91b4cd97ec6ff1a80cef5780f162
Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com>
2023-02-27 22:59:45 +05:30
Amandeep Singh
19be16d2f7 pci: Add environment varibale to skip pci enumeration
Add skip_pci_mask environment variable to skip pci enumeration
based on the bitmask. Also, removing the pci3 dts entry from
the RDP437 & RDP461 to skip pci3 enumeration.

Example - setenv skip_pci_mask 0xc
The above command will skip pci enumeration of bus 2 & 3.

Change-Id: Iff50acca07ffc026bed84a0d2372e6de0a3ba3a9
Signed-off-by: Amandeep Singh <quic_amansing@quicinc.com>
Signed-off-by: Ram Kumar D <quic_ramd@quicinc.com>
2023-01-27 12:42:32 +05:30
Praveenkumar I
9006866f9f pci: ipq9574: Update QCN9224 fuse read
Added JTAG ID, Serial number and Part type read.

Change-Id: Ia03724116230a157fc33406a97c641e3b5750d6a
Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com>
2023-01-23 16:46:52 +05:30
Praveenkumar I
f89bc531be pci: ipq9574: Update QCN9224 fuse blow and read
Added QCN92xx's SoC global reset and MHI reset in the fuse blow path.
So, the fuse blow can be retried after any failed attempts.

Added ANTI ROLLBACK fuse read.

Change-Id: Ibf255390ffc2086fcbfa9041dc0bcb612f8d9a4e
Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com>
2022-11-25 11:39:09 +05:30
Linux Build Service Account
2cc0af4c3e Merge "pci: ipq9574: Add new command to list the qcn9224 fuses" 2022-11-04 13:33:57 -07:00
Praveenkumar I
2cc20dc1c6 pci: ipq9574: Add new command to list the qcn9224 fuses
"list_qcn9224_fuse" command will print the OEM ID, Secure boot enable
and OEM PK hash details of QCN9224 from all attached PCIe slots.

Change-Id: I87be2f58bcef6898a00f4e179c87f2dcb93a2604
Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com>
2022-11-04 11:35:15 +05:30
Timple Raj M
95e16ef259 ipq5332: replace soc name from devsoc to ipq5332 in all file contents
Change-Id: Id5dd98e749bfd229e2c6e9d1944db397d2380cb1
Signed-off-by: Timple Raj M <quic_timple@quicinc.com>
2022-10-12 22:31:53 -07:00
Praveenkumar I
4a3be8755b pci: ipq9574: Add a new command to list the PCIe device details
Change-Id: I6da44fbd966d8c45ba9b4adb447d415ee15628ce
Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com>
2022-09-27 16:22:05 +05:30
Praveenkumar I
32ad9dcb99 pci: ipq: Add sec.dat fusing support for qcn9224
This change adds a new command to support the qcn9224 fusing.
Fuser blower binary should be transfered via tftp to Host and
using fuse_qcn9224 command, binary can be transfered to qcn9224.
qcn9224 will take care of the fusing.

sample command:
tftpboot fuse_blower.bin
fuse_qcn9224 0

Change-Id: Ie8cd73a2d49799100bd1f717cdc4b8dad070f9bd
Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com>
2022-09-27 12:01:38 +05:30
Praveenkumar I
032831ac58 pci: ipq9574: Add a new command to detect the qcn9224 version
This patch adds a new command support to detect the qcn9224 version.
Based on "detect_qcn9224" command, change configures the BAR0 on EP,
does the window mapping and reads the HW version register. Version
value will be populated in "qcn9224_version" env. Version env will
be zero if there is no qcn9224 attach.

Change-Id: I4f4477590b439f31b46cb0b895dc0d9f8279a064
Signed-off-by: Praveenkumar I <quic_ipkumar@quicinc.com>
2022-07-28 14:48:25 +05:30
Vandhiadevan Karunamoorthy
e2d76a1c7a board: arm: devsoc: Enable PCIE support
The PCIE node is disabled by default in
the emulation platform

Change-Id: I51041186a57d08b58c1f7c85dd1a90fbeb24aac9
Signed-off-by: Vandhiadevan Karunamoorthy <quic_vkarunam@quicinc.com>
2022-05-19 12:32:40 +05:30
Vandhiadevan Karunamoorthy
cc76ff5e54 drivers: pci: optimize for ipq806x platform
This changes removes unwannted source for ipq806x
platform, therefore it saves more memory in flash

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: Ia34c9843a5b32c2db57ec4b4977ab8c04875161b
2021-10-26 18:15:00 +05:30
Vandhiadevan Karunamoorthy
2bc07e0161 pci: ipq9574: Add SKU validation support
This changes add SKU validation support in PCI driver
the valdiation api given as weak for non SKU supported platform.

Change-Id: I32985be1e06e9cb07d28edfba50299bb7eaa3cc5
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
2021-08-31 21:22:32 -07:00
Vandhiadevan Karunamoorthy
cdc5b97b86 ipq9574: update pcie x1 & x2 phy configuration
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: I19708bfef11d48f034d2dc218f249676bc5621f7
2021-07-27 17:15:45 +05:30
Vandhiadevan Karunamoorthy
462b54aa11 ipq9574: add pci phy configuration
This changes add pci 2 lane support in pci driver

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: Ia4235c277e91d68366f6ae8aa16d8505a2ca5b05
2021-07-19 13:59:37 +05:30
anusha
dab796560d ipq9574: Add PCIE support
Change-Id: I7272cf5bd27a7b62ae35f23cda7f980e177e2fd5
Signed-off-by: anusha <anusharao@codeaurora.org>
2021-03-17 12:10:26 +05:30
Manikanta Mylavarapu
92980348f7 ipq5018: Fix phy initialization
This Fix will skip phy init sequence
for IPQ5018 because it doesn't need
any phy initialization.

Signed-off-by: Manikanta Mylavarapu <mmanikan@codeaurora.org>
Change-Id: I781ea03eda933692d6a096c97d93d238b1e7063d
2020-04-29 08:48:03 +05:30
Vandhiadevan Karunamoorthy
3f50b516ff ipq5018: Add Pcie support
Change-Id: Ifcb632b0cda947002e0538778484bb866f8227f8
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
2020-02-19 22:57:03 -08:00
Balaji Prakash J
3c40acc3c2 ipq6018: pcie: Update phy configuration
Change-Id: Ie96555c16df7fd6539e245b95d6f6d5467dab923
Signed-off-by: Balaji Prakash J <bjagadee@codeaurora.org>
2019-10-30 12:09:56 +05:30
Balaji Prakash J
2313fbc47f ipq6018: pcie: Update PCIe phy init sequence
There is a change in reference clock(XO) frequency of
ipq6018(24MHz) from ipq807x(19.2MHz). Accordingly,
updated the phy init sequence of PCIe.

Change-Id: I86230187a46fec16a87acfaa17cfa27dc1eb728c
Signed-off-by: Balaji Prakash J <bjagadee@codeaurora.org>
2019-04-30 00:05:57 -07:00
Sham Muthayyan
168f7cdb7f ipq807x: Fix compiler warnings for PCI driver
Change-Id: I616ae06fe058b6bcfb1f9404625af002214650d1
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2019-01-04 04:14:10 -08:00
Rajkumar Ayyasamy
929e19e29e ipq6018: Added pcie support
Change-Id: Iff5db65fd2f4391f04c8c717fa7a75d35ef5b65a
Signed-off-by: Rajkumar Ayyasamy <arajkuma@codeaurora.org>
2018-12-17 17:47:17 +05:30
Sham Muthayyan
8fc56d271a ipq807x: Fix PCIE failed in other platform
Change-Id: Ide698e51ce1e9a21efc4c0559750216dd5a48b86
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2018-11-13 22:47:59 -08:00
Sham Muthayyan
38c7f93620 ipq8074: PCIE Gen3 support
Change-Id: Ic1b1e15a239d52e0a50b0a90d81d0523f1ee69a6
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2018-11-08 04:56:03 -08:00
Sham Muthayyan
4c38761167 ipq807x: Add PCIE reset sequence
Some cards are not working due to pcie reset.
So doing pcie reset with pcie reset gpio.

Change-Id: I0c631b116923b90bf94223d09e5662900a31244e
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2018-07-17 12:39:59 +05:30
Sham Muthayyan
3d59ead98a ipq807x: Fix KW issues for edma and pci
Change-Id: I46d870b14810b33d500cdba6e8a238f95fc05208
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2018-03-22 03:04:49 -07:00
Rajkumar Ayyasamy
6173c50c84 ipq40xx: Changed the assert sequence for pcie linkup
Changed the assert and deassert sequence to enable the pcie
linkup for peripheral specific devices.

Change-Id: I2f93f818fe9f85ffa43fb5dff1a9cc67ae393183
Signed-off-by: Rajkumar Ayyasamy <arajkuma@codeaurora.org>
2018-03-07 02:32:51 -08:00
Rajkumar Ayyasamy
fd01d1b29b ipq806x: Enabling pci for AP160 and Ap160_2xx board
1. Added pci entries in AP160 and AP160_2xx dts

2. The wifi pcie card requires to be powered on from GPIO
pins. This patch also adds the same in AP160 dts file and
enable it during PCIe configuration.

Change-Id: Icd8f5741d5df38d46640c78a7475853e77b873a9
Signed-off-by: Rajkumar Ayyasamy <arajkuma@codeaurora.org>
2018-02-08 18:06:48 +05:30
Kathiravan T
54e3b91a72 ipq806x: Add PCIE support for IPQ806x
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
(cherry picked from commit 76d73b57020b06e556c058735f1cc4c55413a7ce)

Change-Id: Icc10df8483940a1735ccdb3a3ffa6723d3be2aa6
Signed-off-by: Kathiravan T <kathirav@codeaurora.org>
2017-12-04 10:27:05 +05:30
Rajkumar Ayyasamy
692b869ea1 qcom: pci: Making pci-phy entry check applicable only for HK
As DK and AK does not have pci-phy entry making it as
applicable only for HK

Change-Id: I52d110f4012b867bb019859be9168b3aea68bfd4
Signed-off-by: Rajkumar Ayyasamy <arajkuma@codeaurora.org>
2017-11-28 02:59:34 -08:00
Gokul Sriram Palanisamy
bc7a78c941 ipq807x: Fix various KW warnings in drivers
Change-Id: I7c5c61beeeb00cb9266464a7a084e105a224357d
Signed-off-by: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
2017-09-07 04:17:21 -07:00
smuthayy
639c27e64e ipq807x: Fixed the PCIE linkup failure leads to crash
If the PCIE cards are not connected, executing the pci
commands lead to the crash.

Change-Id: Id68ab1a39bfc3319d17af2fe6a3c8d4c1af039b0
Signed-off-by: smuthayy <smuthayy@codeaurora.org>
2017-06-02 14:47:25 -07:00
smuthayy
7c309ca403 ipq807x: Added the PCIE phy support
Change-Id: I30212d0b82a28c131ec35ec8eeada3b91f8369a1
Signed-off-by: smuthayy <smuthayy@codeaurora.org>
2017-06-02 14:45:56 -07:00
Prabhu Jayakumar
97c3087906 qca: move ARM specific files to another sublevel
As the U-boot source is going to be common between ARM and MIPS
architecture , it is required to pick only the files specific
to the respective architectures during the build.

So, move the qca arm target specific common files to another
sub level by specifying the ARCH arm.

Change-Id: I06b538834109981f21fef6270bfb8e437a2f5a7e
Signed-off-by: Prabhu Jayakumar <pjayak@codeaurora.org>
2017-01-06 12:33:30 +05:30
Sham Muthayyan
dbc99acc0c qcom: pci: Enable PCI support for ipq40xx
Change-Id: I32506cf862a0ab83a05070fa9cfba9f09a96ddd3
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2016-09-29 14:29:01 +05:30
Sham Muthayyan
36af874980 qcom: pci: Rename the pci driver
Change-Id: Idbccf67a6c3cee631da75abfc80ee2eaa26599f8
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2016-09-28 00:37:31 -07:00
Sham Muthayyan
01560470d3 ipq40xx: pci: Add PCIE support
Change-Id: Ibf114efa7e6defb27c4c1a031516faa81448a046
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2016-09-28 00:37:23 -07:00
Bin Meng
7ba34ff09f pci: layerscape: Adjust the return value when ls_pcie_addr_valid() fails
When trying to access non-existent/unsupported PCI devices in
ls_pcie_read_config(), when ls_pcie_addr_valid() fails it returns
error code and fills in the result with 0xffffffff manually. But it
really should return zero to upper layer codes.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2016-01-08 10:15:49 -05:00
Bin Meng
9642b78cdf pci: imx: Adjust the return value when imx_pcie_addr_valid() fails
When trying to access non-existent/unsupported PCI devices in
imx_pcie_read_config(), when imx_pcie_addr_valid() fails it returns
error code and fills in the result with 0xffffffff manually. But it
really should return zero to upper layer codes.

Reported-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Fabio Estevam <fabio.estevam@nxp.com>
2016-01-08 10:15:49 -05:00
Bin Meng
789fa275b3 x86: Remove HAVE_ACPI_RESUME
These are currently dead codes. Until we have complete ACPI support,
we don't know if it works or not. Remove to avoid confusion.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
2015-12-09 17:44:56 +08:00
Simon Glass
3ba5f74a54 dm: pci: Disable PCI compatibility functions by default
We eventually need to drop the compatibility functions for driver model. As
a first step, create a configuration option to enable them and hide them
when the option is disabled.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2015-12-01 06:26:38 -07:00
Simon Glass
011e948295 dm: pci: Move common auto-config functions to a common file
Some functions will be used by driver model and legacy PCI code. To avoid
duplication, put these in a separate, shared file.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2015-12-01 06:26:37 -07:00
Simon Glass
76a8b6a58a dm: pci: Rename pci_auto.c to pci_auto_old.c
This file should not be used with driver model as it has lots of legacy/
compatibility functions. Rename it to make this clear.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2015-12-01 06:26:37 -07:00
Simon Glass
e81ca88451 dm: tegra: pci: Convert tegra boards to driver model for PCI
Adjust the Tegra PCI driver to support driver model and move all boards over
at the same time. This can make use of some generic driver model code, such
as the range-decoding logic.

Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Stephen Warren <swarren@nvidia.com>
2015-12-01 06:26:36 -07:00
Simon Glass
f9260336d0 dm: pci: Add a function to find the regions for a PCI bus
This function looks up the controller and returns a pointer to each region
type.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
2015-12-01 06:26:36 -07:00
Simon Glass
9f60fb0db4 dm: pci: Add a function to get the controller for a bus
A PCI bus may be a bridge device where the controller is the bridge's
parent. Add a function to return the controller device, given a PCI device.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
2015-12-01 06:26:36 -07:00
Simon Glass
9289db6c60 dm: pci: Add functions to emulate 8- and 16-bit access
Provide a few functions to support using 32-bit access to emulate 8- and
16-bit access.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
2015-12-01 06:26:36 -07:00