Commit graph

8360 commits

Author SHA1 Message Date
Sham Muthayyan
f3af149d5f ipq807x: SGMII mode settings for all the channels
SGMII channel 0 is used for uniphy instance 1 and 2,
so set the SG_MODE for uniphy instance 1 and 2. Channel 0,1
and 4 are used for instance 0. So set CH1_CH0_SGMII and
CH4_CH1_0_SGMII for channel 1 and 4 respectively.

Change-Id: Ie6f0afa6419a9895f730c89fa27fb80b122acf73
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-11-08 02:41:01 -08:00
Vasudevan Murugesan
7fd4f44ace ipq807x: mmc: Enabled SDHCI ADMA support
This patch enables SDHCI mode and also supports
data transfer using ADMA method.

Change-Id: Ia3187fec9024ad0972ca720cf0b9ddc6a59b906c
Signed-off-by: Vasudevan Murugesan <vmuruges@codeaurora.org>
2017-11-03 02:52:37 -07:00
Sham Muthayyan
2035a079c5 ipq807x: Download firmware only if board has AQ PHY
Change-Id: I4c375367137ffdc3de00fd26882835e47eca86c5
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-11-01 06:01:14 -07:00
Sham Muthayyan
db4516262a qcom: nand: Issue the Reset command before probe
Reset command must be the first command issued to all
targets after the NAND flash device is powered on.

Change-Id: I617dc5b0ad8d72705dcf20f1cb554134b166e533
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-10-25 23:45:34 -07:00
Sham Muthayyan
23f9381f86 ipq807x: Add 4byte mode support for Winbond nor flash
Change-Id: I4f31612091bff4f03527fbfd41f02f4a7267f248
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-10-25 04:25:04 -07:00
Sham Muthayyan
0ed8d4aa87 ipq807x: Fixed port mac for qsgmii mode
Change-Id: I190eb0e11ba17724b5bd6fa7ccf85c5dad9afb09
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-10-24 08:33:31 -07:00
Saravanan Jaganathan
6f9aa43a88 ipq807x : Added support for AQR111
Change-Id: I06ccac361c71d6bd9868fc4c3230c13088123e1f
Signed-off-by: Saravanan Jaganathan <sjaganat@codeaurora.org>
2017-10-21 07:04:36 -07:00
Ramesh Muthusamy
040da09949 IPQ807x: AQ Phy Fw download from flash
Change-Id: I55ecb7ab61476c497ae565597396556e4f074e8e
Signed-off-by: Ramesh Muthusamy <rmuthusa@codeaurora.org>
Signed-off-by: Saravanan Jaganathan <sjaganat@codeaurora.org>
2017-10-13 10:50:23 -07:00
Sham Muthayyan
e216c7f3ab ipq807x: Added the support for aquantia firmware download
Change-Id: Iebef6426e6ffdef7e3c5fb8c6a04c2c6f494a664
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
Signed-off-by: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
2017-10-12 04:46:10 -07:00
Gokul Sriram Palanisamy
0f0ae124bb ARM: QCA: Fast MDIO support for Aquantia port
MDIO clock divider is set to 0x7 (counts to 8)
to produce 12.5MHz (100MHz/8) MDC frequency.

Change-Id: Ic7969aebf9fcbb14601ba8e56563959ab0b25657
Signed-off-by: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
2017-10-12 04:45:52 -07:00
Sham Muthayyan
a5b2a4c4cb ipq807x: Padding minimum packets before send to EDMA
The EDMA HW is unable to process packets less than MIN_PKT_SIZE(33) bytes,
then the EDMA stalls. This is to pad the packets up to MIN_PKT_SIZE.

Change-Id: I473831a759ad6a764fefa095cf7ab347ba95ee97
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-20 11:50:22 +05:30
Sham Muthayyan
da2e958e58 ipq807x: Added the W25Q256JW flash support
Change-Id: Iee648d783567ed2b6ff09addbb000709fa6461ff
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-14 01:56:40 -07:00
Sham Muthayyan
b89040defa ipq807x: Added the USXMII speed and clock
Change-Id: Ieb3e01eef27807091e0a1670d6b7c25334bed396
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-13 23:24:38 -07:00
Sham Muthayyan
92f52b796e ipq807x: Aquantia phy init support
Change-Id: I0f714e0862c8002aa49497af0b65e5d5e61a8b64
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-13 23:24:33 -07:00
Sham Muthayyan
f08292a724 ipq807x: Added the UXSGMII mode support
Change-Id: I69363bd2c8f2fcaf5a41f63b7d509799353ac686
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-13 23:24:26 -07:00
Sham Muthayyan
546ffbe6c8 ipq807x: Added the Aquantia phy support
Change-Id: I4c61cd57cf02a97b6410ac4488e2dbe6e6a3cfd3
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-13 23:24:20 -07:00
Sham Muthayyan
643f0acddf ipq807x: Enabled the 8033 phy support for DB-HK02
Change-Id: Ifa9fcb7ee3f9263e97d81dd8ea984a2c9923af2a
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-13 23:24:00 -07:00
Sham Muthayyan
a3abb0f382 ipq807x: Add the 8033 phy support
Change-Id: If834f2ec2424a05c7ec2b6b26224a1d753551af8
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-13 23:23:49 -07:00
Sham Muthayyan
6a012e63d6 ipq807x: Add the multiple phy support
Change-Id: I8d22e267ccad0f8f14532e46f379e45faf32bad5
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-13 23:23:44 -07:00
Sham Muthayyan
11d70f9af5 ipq: Fix the 8033 phy driver
Change-Id: I99462cf2cfe820bb2b59b186dd9c13317c780670
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-13 23:23:37 -07:00
Sham Muthayyan
37be3e378e ipq: Move qca8033 phy driver into common
ipq40xx, ipq807x hardware share the qca8033 phy. So the qca8033 phy
driver has been moved to common directory for use by both the
hardware.

Change-Id: Ic972f00770c9e3cbaf4d727df21f19cd926ddce2
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-13 23:23:29 -07:00
Sham Muthayyan
856945d0de ipq807x: Add the PPE interface mode support
This patch added the uniphy interface mode and port mux select
for PSGMII and SGMII.

Change-Id: I26f18a855b9972a358583d706d3f8a8bf09401cc
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-13 23:23:19 -07:00
Stefan Wahren
b77ce142bb mmc: add MMC_VERSION_5_1
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
(cherry picked from commit 1a3619cf82)

Change-Id: I7884f7b58cadb6935ffa266d35af64a4e5ca68cb
Signed-off-by: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
2017-09-12 15:25:15 +05:30
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
Abhishek Sahu
3813ce677b ubi: fix data aborts in case of NAND bit flips during block read
The UBI layer generates the following data aborts if any of the
NAND block contains bit flips

    ubi0: attaching mtd2
    ubi0: fixable bit-flip detected at PEB 149
    ubi0: scanning is finished
    ubi0: fixable bit-flip detected at PEB 149
    data abort
    pc : [<4a934cc8>]          lr : [<4a933aec>]
    reloc pc : [<4a934cc8>]    lr : [<4a933aec>]
    sp : 4a77f2e0  ip : 00000095     fp : 00000075
    r10: 000001b7  r9 : 4a77fea0     r8 : 00000001
    r7 : 0001f000  r6 : 0001f000     r5 : 4a785e40  r4 : 4a7c4180
    r3 : 00000000  r2 : 00000075     r1 : 4a7860b8  r0 : 4a7c49c0
    Flags: nzcv  IRQs off  FIQs off  Mode SVC_32
    Resetting CPU ...

UBI layer will move the data from original block to some other
block in case of bit flips in the function ubi_eba_copy_leb. This
function uses volume EBA table vol->eba_tbl. The current UBI code
calls ubi_wl_init followed by ubi_eba_init but the ubi_eba_init
only initializes the volume EBA table. In case of bit failure,
the ubi_wl_init calls function __schedule_ubi_work which will
call ubi_eba_copy_leb and triggers data abort.

ubi_attach() {
    ubi_wl_init ->  __schedule_ubi_work -> ubi_eba_copy_leb
    ubi_eba_init
}

The UBI code has been written for Linux kernel and it has been
ported to UBOOT. Since UBOOT does not support threads so all the
thread functions are being called in uboot synchronously.
In Linux kernel, the UBI background thread starts
after the initialization, which is being controlled by
thread_enabled variable which will be set to true after all
initialization.

Now this patch checks for thread_enabled variable and call the
do_work only if the thread is enabled.

Change-Id: I4b2b40031dbd5f16ceefef541248973ca326cd9c
Signed-off-by: Abhishek Sahu <absahu@codeaurora.org>
2017-09-05 16:52:06 +05:30
Ramesh Muthusamy
0afdc8209b ipq807x : Enabling MDIO C45 and Uniphy3 support
Change-Id: I9236aa2861a004a030e7e88403302d5e09949ad7
Signed-off-by: Ramesh Muthusamy <rmuthusa@codeaurora.org>
2017-08-22 15:00:18 +05:30
Linux Build Service Account
9c30999bb6 Merge "qcom: nand: fix NAND dummy spare area programming" 2017-08-03 05:36:34 -07:00
Linux Build Service Account
16562b7f20 Merge "qcom: nand: fixed the 8 bit NAND ECC support" 2017-08-03 05:36:34 -07:00
xiaofeis
4077f42d0a uboot: make port 5 work on 1000Mhz speed
Change-Id: Ic7e2724ae2ce08895c779ed166fca2a9a0dd6868
Signed-off-by: xiaofeis <xiaofeis@codeaurora.org>
2017-07-31 00:28:35 -07:00
Vasudevan Murugesan
6ebedacfc5 ipq807x: Fixed flash ID for MX25U3235F
Change-Id: Ie9e2224b963428386f6970ef5950a9d04ac3cad8
Signed-off-by: Vasudevan Murugesan <vmuruges@codeaurora.org>
2017-07-27 02:15:14 -07:00
Sham Muthayyan
380e06a648 ipq807x: Set the NSS ports clock and MAC speed dynamically
Change-Id: If4cbff1a939fb165b2aef04d81e93b531789c8ed
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-07-24 07:52:00 -07:00
Sham Muthayyan
9841ffefc8 ipq807x: Added the baud rates support
Change-Id: I099488e7a0a74669b974c6892022922c3f14610a
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-07-06 23:57:02 -07:00
Sham Muthayyan
129c2856e1 qca: Add additional UART support
Change-Id: Iddcf30d232f1a7767e3523791b5f34d4d2cbcc0c
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-07-05 06:02:51 -07:00
Sham Muthayyan
6f1452c953 ipq807x: Deinit pcie before loading kernel
Change-Id: I22fe87dac2fd8f55978481fae71ee65281dfd204
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-06-29 08:53:06 -07:00
Abhishek Sahu
98c1c8e9db qcom: nand: fix NAND dummy spare area programming
NAND_CMD_PRG_PAGE_ALL uses the spare data from buffer itself
which is not applicable. The spare area in NAND page for
QPIC are dummy bytes so 0xff should be written to these
spare area. NAND_CMD_PRG_PAGE does the same thing and HLOS
driver uses this command for all page program
operations.  The actual spare data is being written along
with every codeword since the codewords size is 516 in which
512 bytes are user data and 4 bytes are spare data.

Change-Id: I5651caf5ea95f046570e8318f59e140398869ece
Signed-off-by: Abhishek Sahu <absahu@codeaurora.org>
2017-06-26 04:33:46 -07:00
Abhishek Sahu
25137add04 qcom: nand: fixed the 8 bit NAND ECC support
1. This driver is directly being registered with MTD
   layer so for OOB operations, the device OOB size will be
   passed. QPIC can’t handle the complete OOB so calculate QPIC
   supported OOB size and overwrite the device OOB size with
   QPIC supported OOB size.

2. OOB available calculation was wrong. The available OOB’s are
   4 bytes per codeword.

3. Raw configuration codeword size was hardcoded to 528 while 8
   bit ECC codeword size is 532.

Change-Id: Idc118e2fdd9882758da9dc6b1e977e04697a5640
Signed-off-by: Abhishek Sahu <absahu@codeaurora.org>
2017-06-26 04:33:36 -07:00
Abhishek Sahu
4d61ddbda3 qcom: nand: configure QPIC XFER STEPS registers
The QPIC XFER STEPS will not be configured in non NAND boot
mode and the data transfer speed will be very slow. Now this
patch reads the timing parameter from ONFI page and configures
the NAND XFER STEPS registers for highest supported ONFI mode.
For NON ONFI device, it will configure to default mode.

Change-Id: I2daf4a92255307efc53db9bb7fe2f02e8c00c3fa
Signed-off-by: Abhishek Sahu <absahu@codeaurora.org>
2017-06-22 23:48:48 -07:00
Varadarajan Narayanan
3d9a317333 spi: qcom: Fix spi probe issue
Cleared dynamically allocated region for spi global data
to avoid garbage values causing data abort.

Change-Id: Ie278cb3a1374d347d7dfb20b59059dfbf9a7ae42
Signed-off-by: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
2017-06-15 15:34:37 +05:30
Gokul Sriram Palanisamy
3a93d3ccb9 ARM: qup_spi: Enabled bam support for spi-nor
Change-Id: I7bf9335ed5c0e6a439c5a4169319f1d422e1ae7d
Signed-off-by: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
Signed-off-by: Gopinath Sekar <gsekar@codeaurora.org>
2017-06-08 12:45:42 +05:30
Gokul Sriram Palanisamy
f5993e4346 ARM: qca: Added bam support for spi devices
Change-Id: I7f43c4a4d817fd727a43eb767aeae3fc001ca37c
Signed-off-by: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
2017-06-07 06:26:13 -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
Jaiganesh Narayanan
c4a6f7d62f ipq807x: enable ethernet address assignment from ART partition
Change-Id: I37541ff581f677d5a6c04adedb68bb0e2416b4ac
Signed-off-by: Jaiganesh Narayanan <njaigane@codeaurora.org>
2017-06-01 06:16:04 -07:00
Jaiganesh Narayanan
6fe9db26ac ipq807x: enable net, qca8075 phy reset and link detection code
Change-Id: I978f5a16da7ecf56f006e0e7757a52c7d31b22cf
Signed-off-by: Jaiganesh Narayanan <njaigane@codeaurora.org>
2017-05-29 20:15:48 -07:00
Jaiganesh Narayanan
428fc1d379 ipq: move qca8075 mdio, phy driver into common directory
ipq40xx, ipq807x hardware share the qca8075 phy. So the qca8075 phy
mdio, driver has been moved to common directory for use by both the
hardware.

Change-Id: Id6e9342438ffbdf8599860df6fbb39bba30429b3
Signed-off-by: Jaiganesh Narayanan <njaigane@codeaurora.org>
2017-05-29 08:02:40 -07:00
Sham Muthayyan
cad4eba461 mmc: eMMC add Secured Trim command support
Secured Trim command does eMMC erase for  unalligned block size.

Change-Id: I4dc7bea15c8fcb57e07d19c398b1c8e2289da100
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-04-11 23:55:40 -07:00
Gokul Sriram Palanisamy
674e652750 ARM: qca: qup-spi: Removed unused registers from structure
Change-Id: I028018a6d9bc237ce257ee9f60bbe1ebc662eca7
Signed-off-by: Gokul Sriram Palanisamy <gpalan@codeaurora.org>
2017-03-14 22:51:51 +05:30
Linux Build Service Account
457fb80fcc Merge "qca: ipq806x: Fix SPI-NOR flash option value." 2017-03-10 18:10:45 -08:00
Aditya Kumar Patra S
35f3264a1e qca: ipq806x: Fix SPI-NOR flash option value.
SPI-NOR flash option field was uninitialized which was
giving improper flash information during sf probe.
Initialized to zero during spi initialization.

Change-Id: I26df0a491e96071d598cc281c42e32408f34d29f
Signed-off-by: Aditya Kumar Patra S <apatr@codeaurora.org>
2017-02-21 17:39:02 +05:30
Aditya Kumar Patra S
335c21b1a2 ipq807x: Added ethernet support
Added the ipq807x ethernet edma, ppe driver support

Change-Id: Ibcac04d8a60c1ca74549834b70735a6f15b58358
Signed-off-by: Aditya Kumar Patra S <apatr@codeaurora.org>
2017-02-09 10:25:56 +05:30