openwrtv4/target/linux/ipq806x/patches-4.9
Christian Mehlis 0c7e78930b ipq806x: add support for Compex WPQ864
Hardware highlights:
- SoC: Qualcomm Atheros IPQ8064/5 ARM Dual Core CPU
- RAM: (512MB or 1GB) DDR3 System Memory
- Storage: 32MB NOR (Cypress S25FL256S1)
           256MB NAND (Micron MT29F2G08ABBEAH4)
- Ethernet: 5 x 1G via QCA8337N
- USB: 1 x USB 2.0/3.0 + 1 x USB 2.0 on mini PCIe3 socket
- PCIe: 3x mini PCIe (third mini PCIE3 is PCIe/USB shared)
- SIM Card Slot: 2 x Slot
- Buttons: Reset Button
- LEDs: 18x, 8x GPIO controllable
- Buzzer

The correct amount of RAM will be passed by the bootloader.

In contrast to the documentation provided by Compex, the third PCIe
doesn't use GPIO16 for PERST. Instead, GPIO3 is shared and used as PERST
for PCIe0 and PCIe2.

So far, no one was able to get USB 3.0 working with the 1GB RAM version,
while it works fine for my 512MB version. Since USB 3.0 doesn't work with
the Compex firmware for the 1G variant either, it could be a hardware
issue with these boards.

OpenWrt will be installed to the NAND flash. Make sure to have a full
working image on the NOR flash. It will be the backup in case anything
goes wrong.

It has been observed that an image loaded via tftpboot might have
bitflips. Hence the extra step to create a crc32 checksum to allow to
compare the checksum with the one from the source file prior to flashing.

In all cases it is necessary to set the following u-boot parameter to an
empty (whitespace) value, to ensure that the chosen bootargs of the dts
isn't overwritten or set to bogus - not working - values:

  (IPQ) # set bootargs " "
  (IPQ) # set fsbootargs " "
  (IPQ) # saveenv

The sysupgrade image can be installed directly on flash using u-boot (put
jumper in JP13 (leave JP9 open) to boot from nand):

  (IPQ) # set serverip 192.168.1.20
  (IPQ) # set ipaddr 192.168.1.1

  (IPQ) # tftpboot 0x42000000 openwrt-ipq806x-compex_wpq864-squashfs-nand-factory.bin
  (IPQ) # crc32 0x42000000 $filesize

  (IPQ) # nand erase 0x1340000 0x4000000
  (IPQ) # nand write 0x42000000 0x1340000 $filesize

The initramfs image can be started using:

  (IPQ) # set fdt_high 0x48000000
  (IPQ) # tftpboot 0x44000000 openwrt-ipq806x-compex_wpq864-initramfs-fit-uImage.itb
  (IPQ) # bootm 0x44000000

Signed-off-by: Christian Mehlis <christian@m3hlis.de>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-15 08:17:10 +01:00
..
0001-dtbindings-qcom_adm-Fix-channel-specifiers.patch
0002-dmaengine-Add-ADM-driver.patch
0003-spi-qup-Make-sure-mode-is-only-determined-once.patch
0004-spi-qup-Fix-transaction-done-signaling.patch
0005-spi-qup-Fix-DMA-mode-to-work-correctly.patch
0006-spi-qup-Fix-block-mode-to-work-correctly.patch
0007-spi-qup-properly-detect-extra-interrupts.patch
0008-spi-qup-don-t-re-read-opflags-to-see-if-transaction-.patch
0009-spi-qup-refactor-spi_qup_io_config-in-two-functions.patch
0010-spi-qup-call-io_config-in-mode-specific-function.patch
0011-spi-qup-allow-block-mode-to-generate-multiple-transa.patch
0012-spi-qup-refactor-spi_qup_prep_sg-to-be-more-take-spe.patch
0013-spi-qup-allow-mulitple-DMA-transactions-per-spi-xfer.patch
0014-spi-qup-Fix-sg-nents-calculation.patch
0027-clk-qcom-Add-support-for-SMD-RPM-Clocks.patch
0028-clk-qcom-Add-support-for-RPM-Clocks.patch
0029-clk-qcom-clk-rpm-Fix-clk_hw-references.patch
0030-clk-Disable-i2c-device-on-gsbi4.patch
0031-mtd-add-SMEM-parser-for-QCOM-platforms.patch
0032-phy-add-qcom-dwc3-phy.patch kernel: bump 4.9 to 4.9.77 2018-01-20 20:22:01 +01:00
0033-ARM-qcom-automatically-select-PCI_DOMAINS-if-PCI-is-.patch
0034-ARM-Add-Krait-L2-register-accessor-functions.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0035-clk-mux-Split-out-register-accessors-for-reuse.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0038-clk-qcom-Add-support-for-High-Frequency-PLLs-HFPLLs.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0039-clk-qcom-Add-HFPLL-driver.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0040-clk-qcom-Add-IPQ806X-s-HFPLLs.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0041-clk-qcom-Add-support-for-Krait-clocks.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0042-clk-qcom-Add-KPSS-ACC-GCC-driver.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0043-clk-qcom-Add-Krait-clock-controller-driver.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0044-clk-Add-safe-switch-hook.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0045-cpufreq-Add-module-to-register-cpufreq-on-Krait-CPUs.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0046-cpufreq-qcom-independent-core-clocks.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0047-mtd-nand-Create-a-BBT-flag-to-access-bad-block-marke.patch
0048-PM-OPP-HACK-Allow-to-set-regulator-without-opp_list.patch
0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime.patch
0050-OPP-Allow-notifiers-to-call-dev_pm_opp_get_-voltage-.patch
0051-PM-OPP-Add-a-helper-to-get-an-opp-regulator-for-devi.patch
0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch
0053-regulator-add-smb208-support.patch
0054-cpufreq-dt-Handle-OPP-voltage-adjust-events.patch
0055-cpufreq-dt-Add-L2-frequency-scaling-support.patch
0056-cpufreq-dt-Add-missing-rcu-locks.patch
0058-clk-qcom-Always-add-factor-clock-for-xo-clocks.patch
0059-ARM-cpuidle-Add-cpuidle-support-for-QCOM-cpus.patch
0060-HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch
0061-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch
0062-ipq806x-gcc-Added-the-enable-regs-and-mask-for-PRNG.patch ipq806x: update clk and cpufreq drivers 2018-01-17 11:02:05 +01:00
0063-1-ipq806x-tsens-driver.patch
0063-2-tsens-support-configurable-interrupts.patch
0064-clk-clk-rpm-fixes.patch
0065-arm-override-compiler-flags.patch
0066-GPIO-add-named-gpio-exports.patch
0067-generic-Mangle-bootloader-s-kernel-arguments.patch kernel: bump 4.9 to 4.9.75 2018-01-10 00:11:39 +02:00
0068-spi-add-gpio-cs-support.patch
0069-arm-boot-add-dts-files.patch ipq806x: add support for Compex WPQ864 2018-03-15 08:17:10 +01:00
0070-qcom-spm-fix-probe-order.patch
0071-1-PCI-qcom-Fixed-IPQ806x-specific-clocks.patch ipq806x: fix wireless regression 2018-01-17 11:02:05 +01:00
0071-2-PCI-qcom-Fixed-IPQ806x-PCIE-reset-changes.patch ipq806x: fix wireless regression 2018-01-17 11:02:05 +01:00
0071-3-PCI-qcom-Fixed-IPQ806x-PCIE-init-changes.patch ipq806x: fix wireless regression 2018-01-17 11:02:05 +01:00
0071-4-PCIE-designware-Fixed-PCI-host-init.patch ipq806x: fix wireless regression 2018-01-17 11:02:05 +01:00
0071-5-PCI-qcom-Programming-the-PCIE-iATU-for-IPQ806x.patch ipq806x: fix wireless regression 2018-01-17 11:02:05 +01:00
0071-6-PCI-qcom-Force-GEN1-support.patch ipq806x: fix wireless regression 2018-01-17 11:02:05 +01:00
0071-7-pcie-Set-PCIE-MRRS-and-MPS-to-256B.patch ipq806x: fix wireless regression 2018-01-17 11:02:05 +01:00
0071-8-pcie-qcom-Fixed-pcie_phy_clk-branch-issue.patch ipq806x: fix wireless regression 2018-01-17 11:02:05 +01:00
0071-9-pcie-qcom-change-duplicate-pci-reset-to-phy-reset.patch ipq806x: fix wireless regression 2018-01-17 11:02:05 +01:00
0072-ipq-scm-TZ-don-t-need-clock-to-be-enabled-disabled-for-ipq.patch
0073-pinctrl-qom-use-scm_call-to-route-GPIO-irq-to-Apps.patch
0074-ipq806x-usb-Control-USB-master-reset.patch kernel: bump 4.9 to 4.9.85 2018-03-03 12:58:55 +01:00
104-mtd-nand-add-Winbond-manufacturer-and-chip.patch ipq806x: make patches apply again 2018-01-20 23:24:02 +01:00
105-mtd-nor-add-mx25l25635f.patch
310-msm-adhoc-bus-support.patch
850-soc-add-qualcomm-syscon.patch