Commit graph

8623 commits

Author SHA1 Message Date
Rajkumar Ayyasamy
86e3d52362 ipq6018: add UART clock settings
Change-Id: Ifb80b67e961ae2cde93bc5709330c5df932d0b4b
Signed-off-by: Rajkumar Ayyasamy <arajkuma@codeaurora.org>
2020-04-15 10:30:05 +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
Md Sadre Alam
599391c231 driver: mtd: qpic: Enable support for page_scope & multi_page read command.
This change will enable page_scope_read & multipage_read support for
QPIC.
QPIC version 2.0 onwards , QPIC support page_scope_read &
multipage_read command to enhance the read performance.
In normal page read command SW is needed to write EXEC_CMD register
for each Code word and collect any Status related to that CW before
issueing EXEC_CMD for next CW.

For page_scope read command SW is required to issue EXEC_CMD
only once for a page. Controller HW takes care of Codeword specific
details and automatically returns status associated with each CW to
BAM pipe, dedicated for status deposition.

enabling all bits in NAND_AUTO_STATUS_EN will require 4 data
descriptors of 24 bytes each. This will publish all NANDc status
registers in system memory.

For multipage_read command SW is required to issue EXEC_CMD only
once for all the pages which configured in QPIC_NAND_MULTI_PAGE_CMD
register.
All interrupts will be operational and valid in these modes.

To check the status for each codeword, it is not possible to access
the status registers while the read command is operational in
page_scope & multi_page read  modes. Hence, another feature to publish the
status data (for all NAND status registers) by programming the
NAND_AUTO_STATUS_EN register.

For serial NAND:
Read command for page_scope_read = 0x78800032 (QPIC_NAND_FLASH_CMD)
Read command for multi_page_read = 0x78400032 (QPIC_NAND_FLASH_CMD)

For Parallel NAND:
Read command for page_scope_read = 0x00800032 (QPIC_NAND_FLASH_CMD)
Read command for multi_page_read = 0x00400032 (QPIC_NAND_FLASH_CMD)

Now we fixed maximum data bytes read in one go 128KiB(2KiB page),
256KiB (4KiB page), 512 KiB (8kiB page), because from upper layer
we are getting more than 128KiB data bytes request in one go. if so
just changing the value of "MAX_MULTI_PAGE" macro will increase the
maximum data bytes in one go.

Change-Id: I48eea51ff8f5f79f3490d8a538c295ecc3eeee19
Signed-off-by: Md Sadre Alam <mdalam@codeaurora.org>
2020-03-06 15:52:15 +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
Gokul Sriram Palanisamy
7f77903353 ipq: Moved board params structure to qca common
Change-Id: I58ac138f4585a64bf1a89302ec212afe133c2101
Signed-off-by: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
2020-02-10 11:42:21 +05:30
Gokul Sriram Palanisamy
b8b1da8bfd nand: ipq807x: Removed nand_gpio entries from dts
Since nand configuration is fixed across all HK boards,
removing the nand gpio_entries from device tree and
adding static board param entries. This helps reduce
image footprint and opens up space for new board support.

Change-Id: I89bc11165a6cdfcdb3b4650a73cbeea17895f991
Signed-off-by: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
2020-02-07 16:54:10 +05:30
Vandhiadevan Karunamoorthy
db70e98a74 board: ipq5018: Enable gcc cbcr clk for qpic.
Change-Id: Id30214131b0ef5476437597aba70d81e48fe7c8d
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Signed-off-by: Md Sadre Alam <mdalam@codeaurora.org>
2020-01-23 00:38:21 -08:00
Linux Build Service Account
27e1d77810 Merge "ipq5018: Enable GMAC support" 2020-01-08 06:39:23 -08:00
Kathiravan T
3a8f8f7b4b spi_nand: ipq40xx: enable support for Fidelix SPI NAND
Fidelix SPI NAND FM35X2GA has two planes namely plane 0 and plane 1.
This change adds the support to calculate the plane bit accordingly
and use the same for command formation.

Change-Id: I6fb4b652e1c897f248cb9ad8914f67be7a7365f3
Signed-off-by: Kathiravan T <kathirav@codeaurora.org>
2020-01-06 21:09:01 -08: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
Linux Build Service Account
5d3735cfac Merge "ipq5018: Enable support for serial nand in qpic" 2019-12-25 18:31:09 -08:00
Md Sadre Alam
2c13362d84 ipq5018: Enable support for serial nand in qpic
This change will add support for serial nand.

QPIC-2.1.1 supports parallel nand as well as serial nand.

QPIC will operate either in parallel configuration or
serial nand. Both can't work together.

This change will support initially four serial nand parts.

MT29F1G01ABBFDWB-IT (Micron-0x2C,0x15, 2K + 128)

GD5F1GQ4RE9IG (Giga Device-0xC8,0xC1, 2K + 128)

GD5F2GQ5REYIH (Giga Device-0xC8,0x22, 2K + 64)

GD5F1GQ4RE9IH (Giga Device-0xC8, 0xC9, 2K + 64)

Device Internal ECC is disabled for all three devices. This change will
enabele QPIC ECC engine.

For MT29F1G01ABBFDWB-IT 4-bit ECC as well 8-bit ECC will be supported.

For  GD5F1GQ4RE9IG 4-bit ECC as well 8-bit ECC will be supported.

For GD5F2GQ5REYIH only 4-bit ECC will be supported due to 64-bytes spare.

For GD5F1GQ4RE9IH only 4-bit ECC will be supported due to 64-bytes spare.

Change-Id: I3f38f9c76b7bb235bb335a481fbc42ae1bd00395
Signed-off-by: Md Sadre Alam <mdalam@codeaurora.org>
2019-12-23 11:54:23 +05:30
Antony Arun T
687d46c783 ipq807x: fix nand flash size issue
This patch fixes the nand flash size access issue
found in flash with two logical units

Change-Id: Ifcbaa40709c4ac5d508b629fcc6cf7006f167628
Signed-off-by: Antony Arun T <antothom@codeaurora.org>
2019-12-12 17:26:53 +05:30
Linux Build Service Account
fe27a88a40 Merge "ipq5018: Update TLMM gpio configuration" 2019-11-29 11:06:28 -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
Vandhiadevan Karunamoorthy
790fe61455 ipq5018: Update TLMM gpio configuration
Change-Id: Ic084abb39bd693b8f2cb23ea39d9c2062863553e
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
2019-11-27 12:29:14 +05:30
Vandhiadevan
4ae7d14b9d ipq5018: Enable eMMC support.
This eMMC flash controller support only 4-bit
Update sdhci driver to support 4-bit mode.

Change-Id: Iddaa0807b7cf339fcfa5add0b96955757b33c716
Signed-off-by: Vandhiadevan <vkarunam@codeaurora.org>
2019-11-21 19:58:18 +05:30
Vandhiadevan Karunamoorthy
a13842f5cf ipq5018: spi-nor: Add offset 0x0 erase support for S25FL128S_64K
Note : This S25FL128S_64K chip has Hybrid sector's
First 64Kb (4Kb * 8 + 32Kb) and rest all 64Kb sectors

Change-Id: Ibac9bd9dbd7b5a4eb1c31427b4d315fc5353ec62
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
2019-11-05 10:32:27 +05:30
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
Vandhiadevan Karunamoorthy
73712e5b7d ipq5018: Add spi nor support
Change-Id: I1191f2cab63f09fa9c69f417d9cd3050e7a928e3
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
2019-10-17 23:08:48 +05:30
Vandhiadevan Karunamoorthy
474077431c qca: ipq5018: Adding support for IPQ5018
Added config, dts and initial board support code for ipq5018

Change-Id: I70c0432623e57430187a7f432033056e19be8e5b
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
2019-10-10 21:55:42 +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
Linux Build Service Account
3e818cbdf1 Merge "ipq6018: net: Fix compiler warning" 2019-07-02 12:34:44 -07:00
Linux Build Service Account
a54c74bd89 Merge "drivers: net: ipq6018: Add support for AQ and SFP" 2019-07-02 12:34:43 -07:00
speriaka
c0eefc1e4a drivers: net: ipq6018: Add support for AQ and SFP
This patch adds support for AQ and SFP Ports.

Change-Id: I9bb597007b84a7b24608bd2d225b9a9bae551706
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-07-02 02:32:01 -07:00
Dineshkumar Loganathan
9895280db3 ipq807x: added malloc for loading ethphyfw
Added malloc for loading aquantia ethphyfw instead of
loading it in RAM Address

file: drivers/net/ipq807x/ipq807x_aquantia_phy.c

Change-Id: I3c51479487c879e493a045d53ad8e64490d5f217
Signed-off-by: Dineshkumar Loganathan <logana@codeaurora.org>
2019-07-02 13:11:16 +05:30
Balaji Prakash J
fb9474ea0f ipq6018: net: Fix compiler warning
Change-Id: I350b49624d6c3b5bccb2652225076ee8ca5ed511
Signed-off-by: Balaji Prakash J <bjagadee@codeaurora.org>
2019-07-02 12:31:53 +05:30
Linux Build Service Account
37c8c2403e Merge "ipq6018: fixing "reset never completed issue"" 2019-06-27 22:04:20 -07:00
Sham Muthayyan
c342b103ad ipq806x: Reset all PHYs and wait for settling down
Allow some time for the phy reset to finish and ready for link negotiation.

Change-Id: I72474b7e55ed0d8a091b2b454fe9c3d24c80786b
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2019-06-27 01:04:44 -07:00
Antony Arun T
6dded97c74 ipq6018: fixing "reset never completed issue"
As per the SD controller hardware design document
the SD bus power should be turned off and the iopad
voltage has to be set to 3V (default), before
doing reset for all in SD host controller.

Change-Id: Ia77bb0acefe1e619c8ae7a2bc60024bf1ac5c6cd
Signed-off-by: Antony Arun T <antothom@codeaurora.org>
2019-06-26 18:15:32 +05:30
speriaka
643b6d5eb5 u-boot: ipq6018: Fix i2c and net driver compile time warnings
Change-Id: I269d0bd681d2a9e4042eb3943b0060e36d9b3758
Signed-off-by: speriaka <speriaka@codeaurora.org>
2019-06-18 21:39:03 -07:00
Linux Build Service Account
6a7c325c8d Merge "ipq806x: Fix compiler warnings in uboot-2016" 2019-06-18 14:35:23 -07:00
Linux Build Service Account
f1722570f2 Merge "driver: mtd: Add support to read entire ONFI parameter page structure." 2019-06-18 14:35:23 -07:00
sameeruddin shaik
6d35c71cfc ipq806x: Fix compiler warnings in uboot-2016
This change will fix the following warning
1.Wint-conversion

Change-Id: Ieb23517197742bd587cc63096477f5e0bacb89c0
Signed-off-by: sameeruddin shaik <samesh@codeaurora.org>
2019-06-18 16:58:07 +05:30
Sham Muthayyan
da7ff0332a ipq806x: Add MII RESET and AUTONEG for all phy devices
Change-Id: I63972ccc1e9dc139ab282ee4ac66b1884ba5e4dc
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2019-06-13 01:03:49 -07:00