Commit graph

1447 commits

Author SHA1 Message Date
Selvam Sathappan Periakaruppan
4f92f7e93e drivers: net: ipq9574: Update Eth configurations
This patch updates the following:

1) Removes unnecessary TIMER and THRESHOLD configurations in EDMA
2) Adds Uniphy Clock deinit and init in eth_init (during each ping
& speed change)
3) Removes preheader configurations and calculations from EDMA
as there are no preheaders in ipq9574 platform (Instead there is
a secondary descriptor)
4) Add sufficient delay after uniphy reset
5) Remove CONFIG_IPQ9574_RUMI macro from network drivers
6) Change default mac_speed to 0
7) Fix the ppe sched. and tdm configuration
8) Reduce the block size to 1280 + headers for tftp (around 1326)
for timebeing without which timeouts were observed randomly during
TFTP (Note that the MTU is 1514 bytes)

Change-Id: I4004adfb2ae0dc98d65e458c15dafcff6523744b
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-08-11 10:28:21 -07:00
Selvam Sathappan Periakaruppan
ba61e78389 drivers: net: ipq9574: Add separate QCA8075 phy driver
Previous platforms assume qca8075 phy address starts from
0. This patch adds a separate qca8075 phy driver for ipq9574
platform and handles cases where qca8075 phy addr doesn't
start with 0.

Change-Id: I59a596d692b1663af638af358335056661bdf199
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-08-08 04:20:03 -07:00
Selvam Sathappan Periakaruppan
29c2f25f72 drivers: net: ipq9574: Clean up drivers
This patch does the following:

1) Removes unused macros and functions
2) Updates EDMA Reset address and assert/de-assert values
3) Updates Port5 and Port6 address in uniphy clock config
4) Reduces delay to 500 us in usxgmii uniphy mode set
5) Disable clearing of mac counters

Change-Id: I7cc9b20bbd4f2367d9f405ae2e5652d6236476a9
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-08-08 04:19:51 -07:00
Selvam Sathappan Periakaruppan
5e86f2cc7e drivers: net: ipq9574: Update edma driver
This patch does the following:

1) Adds support for AQR113C_B0 and AQR113C_B1 AQ PHY versions
which will be used in ipq9574 platform
2) Adds delay of 100 ms after FW download before calling phy
init which is necessary in ipq9574 platform without which the
init doesn't happen properly as expected

Change-Id: I50be933e68598ada5e3d9df71c3e3abcc79c52d2
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-08-01 04:15:32 -07:00
Selvam Sathappan Periakaruppan
d01203d912 drivers: net: ipq9574: Update to use ipq9574 macros
This patch updates the macro used for modes and also additionally
increases the delay between uniphy reset as needed for ipq9574
platform

Change-Id: Ide565e071963e17abd4f8f7e5d6270849d729b21
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-08-01 04:15:06 -07:00
Selvam Sathappan Periakaruppan
e5ba2c1988 drivers: net: ipq9574: Update ppe driver
This patch updates the following:
1) Updates per port port mac reset
2) Updates XGMAC based on port instead of based on Uniphy as needed
for ipq9574 platform
3) uniphy_port5_clock_source_set -> If uniphy1 is not used, then
it is assumed that the first uniphy supports 5 Malibu and so accordingly
clock source is set by calling this function in that scenario

Change-Id: I978043cfa277fa02dadee5070b94f7a77ed81a5f
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-08-01 04:14:32 -07:00
Selvam Sathappan Periakaruppan
a6631b0ee5 drivers: net: ipq9574: Update AQ Driver
This patch does the following:

1) Enables AQ Driver Compilation.
2) Updates malloc size to fixed value of 512 KB (size of ETHPHYFW Partition)
which is actually 1024 KB as per QSPI Nand Flash partition (considering the
bad block size also). While reading bad blocks will be skipped, and the
firmware size is not expected to exceed 512 KB and hence this size is updated.
Also note, the heap size is currently 1 MB and so if we try do malloc for 1 MB,
we might get failures during allocation.
3) Adds QSPI NAND Flash Support.

Change-Id: I5a6e19b1462b648523ce6b311128a447e34241b4
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-08-01 04:12:54 -07:00
Selvam Sathappan Periakaruppan
31ddb16d89 drivers: net: ipq9574: Fix ethernet for RDPs
This patch updates the following:
1) Removes unused/duplicate macro: NSS_CC_PORT1_RX_CBCR_ADDR
2) Remove CMN_BLK_INIT
3) Update MAX Ports to 6
4) Rename switch_mac_mode to switch_mac_mode0 in DTS and driver
5) Fix SYSNOC frequency configuration
6) Tx/Rx descs is initialized to 0 before use which is
needed because Alder DDR is not init to 0 by default.

Change-Id: Ide22e146f9c8ecb75585d0a8d04e426c463ad8c9
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-07-26 09:22:04 -07:00
Selvam Sathappan Periakaruppan
9dc52fbd6b drivers: net: ipq9574: Update PPE configurations
This patch updates the following:
1) Update speed clock, port mac clock reset for ipq9574
platform.
2) Handle PPE init for all 3 switch mac modes.
3) Handle port mux config when port5 is part of Uniphy0
during when Uniphy1 won't be used.

Change-Id: I23b04b00036ab139cd5877bcf913dbecb7fb7fa2
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-07-19 11:25:01 +05:30
Selvam Sathappan Periakaruppan
870b38b697 drivers: net: ipq9574: Update Uniphy configurations
This patch updates the following:
1) Add support for 3 switch_mac_modes in ipq9574 platform.
2) Update xpcs and soft_reset as needed for ipq9574 platform.
3) Support usecase where 5*1G ports can be supported as part
of Uniphy0 during when Uniphy1 won't be used.

Change-Id: I949db117fa3c8adb937c5c055eedcaa6ead0da07
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-07-19 11:24:07 +05:30
Selvam Sathappan Periakaruppan
0698626570 drivers: net: ipq9574: Update EDMA configurations
This patch updates the following:
1) Handle 2 aquantia ports during ping
2) Remove SFP Port Support Temporarily
3) Update clocks for different port speeds and different
ethernet port types as needed.
4) Update number of ports to 7 since 7 is the MAX ports
supported in ipq9574 platform.

Change-Id: I2d9040227b9c8a11cddc0d00e835ac64d3a4940d
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-07-19 10:50:44 +05:30
anusha
eed8fc7b0d Merge remote-tracking branch 'origin/win.coretech.1.0' into HEAD
Change-Id: I2893089a3b0ca91ea22d49417934f126398a6a58
Signed-off-by: anusha <anusharao@codeaurora.org>
2021-06-30 13:11:44 +05:30
Selvam Sathappan Periakaruppan
580d877a56 drivers: net: ipq9574: Add AQR113 support
Change-Id: I77ec2d03cc280b819ab4874bf14614cde091c416
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-06-07 11:49:15 +05:30
Selvam Sathappan Periakaruppan
6b2af69e7a drivers: net: ipq9574: Make Port MUX info as debug prints
Change-Id: Ie80ed1992719ad71a3199785760fd0d9ad4f9009
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-06-07 11:38:52 +05:30
Vandhiadevan Karunamoorthy
b3de3b7abf ipq50xx: update gephy debug register RW
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: Id179a343a93b465941630ba6613930c29d5ffcdd
2021-05-21 15:43:05 +05:30
Selvam Sathappan Periakaruppan
383f82f1c9 drivers: net: ipq9574: Disable Uniphy in EMU Platform
This patch moves the entire Uniphy configurations to
!CONFIG_IPQ9574_RUMI as there is no PHY/UNIPHY in EMU
Platform.

Change-Id: I404916d10caed87e4825172345195bf92df1b725
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-05-18 18:25:17 +05:30
Selvam Sathappan Periakaruppan
4db507bac7 drivers: net: ipq9574: Update PPE Driver
This patch updates the VSI settings. The VSI Table size has
now changes from 3 word to 4 word and the same has been
accomodated. Without writing 4 words to that Table, the VSI
writes won't be processed by the H/W.

This patch updates the scheduling, TDM configuration
and the ppe port mux configuration as required for ipq95xx.

This patch also moves the configurations not required
for EMU Platform to !CONFIG_IPQ9574_RUMI.

Change-Id: Id54e40d26e80c36e7a61642d8494c30bbd3ea2a5
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-05-13 05:36:19 -07:00
Selvam Sathappan Periakaruppan
48298857ba drivers: net: ipq9574: Update EDMA Driver
This patch updates the address of the EDMA registers, removes
registers which are not used and then does the required changes
to accomodate the new EDMA Descriptor format.

This patch also does the required changes to accomodate Secondary
Descriptor which is added instead of preheaders in ipq95xx.

We have also updated the number of descriptors per ring to 128
with this patch and have also moved the configs not required for
EMU Platform to !CONFIG_IPQ9574_RUMI.

Change-Id: I6e98c457d76c66f87b74cc0eafa7088d0081f533
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-05-13 05:36:14 -07:00
Selvam Sathappan Periakaruppan
06c8e8eac3 drivers: net: ipq9574: Add base files from ipq6018
Change-Id: Ia40182ad332955c73b6a904081cc45cfabc10673
Signed-off-by: Selvam Sathappan Periakaruppan <speriaka@codeaurora.org>
2021-04-20 12:42:53 +05:30
Karthick Shanmugham
688ca8069d ipq6018: Modified the ppe ports to support 2.5G link in PHY3
Signed-off-by: Karthick Shanmugham <kartshan@codeaurora.org>
Change-Id: Iab6a8f81213cdd1013d22597e623cda5be5cd041
2021-03-10 03:24:54 -08:00
Vandhiadevan Karunamoorthy
a08592083b ipq50xx: net: Update UNIPHY_MISC register address
This changes enable proper uniphy soft reset for mode setting.

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: Iebafa56ec4aecee98ba2f124d6140ee15083d317
2020-12-28 17:17:16 +05:30
Vandhiadevan Karunamoorthy
7fff6b863d ipq5018: update ethernet initialization sequence
This change make the qca_8337 switch initialization generic based on
dts irrespective of gmac controller.

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: I292992307ead2cd7bbb0763ff483dc16c266d417
2020-10-22 12:13:32 +05:30
Vandhiadevan Karunamoorthy
cec29b5195 ipq5018: Add 8033 phy support in MP02.1 RDP
This changes add 8033 phy support in MP02.1(Ap & Db) RDP
in tiny nor flash

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: Ib35faba4321c70fed007c923ff0f5e618fad0276
2020-07-20 14:51:05 +05:30
Vandhiadevan Karunamoorthy
d15814b9f3 ipq5018: remove phy_name from dts
This changes remove the phy_name from all mpXX dts and
handle by driver itself.

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: Ia2d0379151db0c68a0b28f5062e83f80579d37c1
2020-07-04 15:47:56 +05:30
Vandhiadevan Karunamoorthy
4ee702eff9 ipq5018: Add Napa phy support in mp03.3 RDP
This changes removes NAPA support from tiny U-boot config

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: I057064d63a3ac0788275a4572242cc251a445a98
2020-07-04 14:52:02 +05:30
Vandhiadevan Karunamoorthy
82c05e91fa ipq5018: Fix S17C auto-negotiation issue
This changes enable s17c link upto 1Gbps speed.

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: I78e3efbbfd1bad58ab2abcba87c06cb9d4ffcd18
2020-06-26 15:54:19 +05:30
Sham Muthayyan
eb5312c9d4 ipq807x: Fix SFP port for HK10
Change-Id: Idca83bd96b6cd4cdcad45d15046805d251e7ea0d
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2020-06-15 00:40:44 -07:00
Vandhiadevan Karunamoorthy
ef78642323 ipq5018: Add support for Gephy
This Gephy is internal phy driver for ethernet

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: Ia4e744c0fbd990bdc94fe93263ac2ddbe4cecf61
2020-06-04 22:06:22 +05:30
Vandhiadevan Karunamoorthy
d42f5e0c52 ipq5018: Add support S17C switch support
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: Ia3877ba97bc9cbe3b853c6f72ce6e5970395b43f
2020-06-04 22:06:21 +05:30
Vandhiadevan Karunamoorthy
699e92652f ipq5018: ethernet: update clock configuration
This changes initialize clock and enable the block of
Gephy, Uniphy, GMAC0 & GMAC1 and also udpate Rx & Tx clock
based on speed.

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: Ia2627e17f7029c2d0d1cbb9eff26afb27aa1c057
2020-05-15 12:28:16 +05:30
Vandhiadevan Karunamoorthy
577c8ba9dc ipq5018: Update GMAC ethernet driver
This code changes update gmac configuration and
add Gephy, internal Mdio, uniphy and s17c switch.

Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: I1759b5edf91de9a48f6d8ae46b3481f3a87f10eb
2020-05-07 13:27:01 +05:30
Sham Muthayyan
08d0424ac7 ipq807x: Remove the Aquantia autoneg
Change-Id: I46ab6c39d2d4e9a86cedb7756799a5834a3c23b1
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2020-03-23 01:59:40 -07:00
Vandhiadevan Karunamoorthy
28f53ee94c ipq5018: Enable GMAC support
Change-Id: I5505d65292cf38aeda0602d9f8d1ad703d8efedb
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
2020-01-06 00:24:58 -08:00
Rajkumar Ayyasamy
970617c1a6 ipq40xx: Added support for DK05-C1 board
Change-Id: Ia8bcb3a022611b3cfa6f58e10fcdc70a8f85a41f
Signed-off-by: Rajkumar Ayyasamy <arajkuma@codeaurora.org>
2019-11-28 11:54:23 +05:30
speriaka
32d259be7a Revert "drivers: net: ipq6018: Remove 8033 port support"
This reverts commit 28be68e3b7.

Change-Id: Ie93dfa039e41c3eb9db6fecbfe0449832422c189
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-23 14:50:10 +05:30
speriaka
d99e73cef8 drivers: net: ipq6018: Update AQ ETHPHYFW loading method
This patch adds malloc for loading ethphyfw instead
of loading it in RAM Address.

Change-Id: I0f39d7b61b7675667201a218e5e7830910472b9c
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-18 22:06:11 -07:00
speriaka
28be68e3b7 drivers: net: ipq6018: Remove 8033 port support
8033 PHY is not supported in ipq6018 platform.

Change-Id: I54985e43b9c3a35386ec320644b0a53f3cdb378d
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-05 10:16:27 +05:30
speriaka
5f76e5ec94 drivers: net: ipq6018: Fix uniphy soft reset
This patch updates the uniphy soft reset function
to do the reset based on uniphy index only for the
required ports.

Change-Id: I7078b7f1e53fd86f32ec213dffe1eeebd5c702ad
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:50 -07:00
speriaka
a19e4580c5 drivers: net: ipq6018: config mode only if link speed changes
Change-Id: Id8b1d409f8f40de9d23c8e6693981aac68c02be2
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:46 -07:00
speriaka
297cd27a28 drivers: net: ipq6018: Config port only if link up
Without this change, even during link down, all
the ports were getting configured. This introduces
unnecessary delay.

This patch changes this behaviour and does the
configurations based on link speed, only when link
is up.

Change-Id: Ideed015ab087b317d2617369496c46abf21979f9
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:39 -07:00
speriaka
4fae338f6f drivers: net: ipq6018: Reset EDMA HW during init
This patch adds EDMA HW reset during EDMA init
before disabling interrupts and rings.

Change-Id: I8cf07c0ee35f7efa799037c3b0c22317e248701a
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:34 -07:00
speriaka
7b35e677c1 drivers: net: ipq6018: Support SFP at both 1G and 10G link speeds
Change-Id: Idfa1e2cd333f046de2ca66bdeb13bd91caf41b95
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:30 -07:00
speriaka
3c59e36a25 drivers: net: ipq6018: Update edma recv and alloc
This patch updates the edma eth_recv by disabling
the interrupts for txcmpl and rxfill. These interrupts
are again enabled as and when needed.

This patch also updates the alloc_rx_buffer next
pointer based on currently filled rx buffers.

Change-Id: I84aaba61132d683dc91e8e7156b3919570e4a0d1
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:26 -07:00
speriaka
c19196d8b9 driver: net: ipq6018: Move EDMA config to init
This patch removes EDMA config during each ping
and moves it to init code which is executed once
during boot

Change-Id: I0e988ac176386b1b95f1964be02f33a22f8113c3
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:21 -07:00
speriaka
823e51741c drivers: net: ipq6018: Remove TX and RX threshold config
Change-Id: If797ee08bbba04aab8c304739f2d1479b7e15375
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:16 -07:00
speriaka
a49455246d drivers: net: ipq6018: NSS Port MAC Reset
This patch adds port mac reset during link
speed change.

This patch also adds 100 ms delay after
full reset of NSS PPE and also updates
the comment for gmac disable.

Change-Id: I9c17ff1d0ad47d301094ce06cec07a478f48b1f0
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:12 -07:00
speriaka
1cb6f11406 drivers: net: ipq6018: Update XPCS reset
This patch updates the XPCS reset function. It
makes sure only the 2nd bit is modified and not the
entire register. Only 2nd bit needs to be toggled
for XPCS assert and deassert.

Change-Id: I7d11674f253d9b55825d1b285572e824ca218b95
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:08 -07:00
speriaka
97685862ea drivers: net: ipq6018: Add delay for uniphy settledown
Change-Id: I0dd89826a696c46b6f29b5642bcd6bd74b688bf2
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:40:03 -07:00
speriaka
b76bed491a drivers: net: ipq6018: Support QSGMII,SGMII,SGMII_FIBER modes
Change-Id: I19c30a8054ac092e69c0e91ad2a6fc1d1cfa62eb
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-08-04 21:39:58 -07:00
speriaka
07d7071ed1 drivers: net: ipq: Fix 100M linking up as 10M issue
Change-Id: I0910d3ee001c1daa2a7b70b5d5ffba8950e810a9
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-07-22 18:21:28 +05:30