aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ipq806x
Commit message (Collapse)AuthorAgeFilesLines
* ipq806x: refresh kernel patchesÁlvaro Fernández Rojas2020-01-085-6/+6
| | | | Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ipq806x: add fab scaling supportAnsuel Smith2020-01-082-0/+252
| | | | | | Add fab scaling support and dtsi definition Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: refactor l2 freq scaling patchAnsuel Smith2020-01-083-40/+120
| | | | | | | | | Refactor l2 freq scaling patch to support voltage scaling and add support to base cache scaling on cpu freq scaling. Update the dtsi files with the new definition used in the new code. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: reorganize nand_pins mux definitionAnsuel Smith2020-01-089-44/+68
| | | | | | | | | | | | | | It's wrong set the mux to bias-disable. The best way to do this is by creating a separate group and disable the specific pins. By documentation, any subgroup with no bias definition is ignored so the mux definition is useless. Rework the definition by sremoving the mux subgroup and set the remaining subgroup with the mux function and drive-strength Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: opp/core: fix broken patch Handle opp voltage adjustAnsuel Smith2020-01-082-11/+4
| | | | | | | | | | The opp_notifier introduced with patch 0054-Handle-OPP-voltage adjust for some reason missed the actual registration in the opp struct, resulting in never being registred. This was present in kernel 4.9 patchset but dropped in the transition to 4.14. Reintroduce this and fix patch 0055 about L2 cache scaling. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: remove CONFIG_MDIO_IPQ8064 symbolChristian Lamparter2020-01-051-1/+0
| | | | | | This driver is not available on upstream. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* kernel: bump 4.19 to 4.19.93Hauke Mehrtens2020-01-052-4/+4
| | | | | | | | | | | | | | Refreshed all patches. The patch hack-4.19/550-loop-better-discard-for-block-devices.patch was replaced with an new version of the patch from: https://lore.kernel.org/patchwork/patch/1153625/ https://lore.kernel.org/patchwork/patch/1153626/ Compile-tested on: ipq40xx, lantiq Runtime-tested on: ipq40xx, lantiq Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ipq806x: build DEVICE_DTS based on SOC and device nameAdrian Schmutzler2019-12-271-11/+16
| | | | | | | | | | | | | | | | | | | | This patch uses the SOC variable to calculate DTS names automatically based on the SOC and the device definition node name. This reduces redundancy and (by having to choose DTS name appropriately) will unify the naming of a device in different places (image/Makefile, DTS name, compatible, image name). This is supposed to make life easier for developers and reviewers. Since the kernel uses a "soc-device.dts" scheme for this target, we use this for the derivation of DEVICE_DTS, too, leaving the DTS names unchanged for this target. Note that for some devices the kernel itself uses inconsistent names (DTS naming scheme vs. compatible), leaving us with a manual overwrite of DEVICE_DTS for those cases. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq806x: fix wrong definition for tsense calibAnsuel Smith2019-12-261-2/+2
| | | | | | | | | We have only 11 sensors on ipq806x. Fix the reg property to load the right amount of data instead of the entire space. Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: rework ipq806x specific tsense temp driverAnsuel Smith2019-12-261-0/+107
| | | | | | | | | | | | | | | | | | | | | | | | | | | Tsense driver for ipq806x have various problem. - Emit wrong error. On probing of this driver, nvmem driver can be not ready and this cause a EDEFER error. Actually this is not an error as the kernel will retry to probe the driver after the nvmem driver is loaded. - Use uninitialized value on trigger of critical temp - Doesn't free allocated memory Because of this, rework the driver and improve it by removing extra load of data. Change the logic of loading data. Use the backup calib data only when the calib data is not present. As the calibration is only needed to set the temp offset, we don't really need to read both calib data and set the offset based only on the backup one. Also change how the notifier function work. At times when we output the trigger message, we already have read the temp so remove the extra read and the wrong uninitialized data that probably caused a kernel panic for null pointer exception. (Think we never experience this bug because the router never reached that temp ever... So just lucky) Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: update kernel config with new driverAnsuel Smith2019-12-261-1/+1
| | | | | | | The config name for cpufreq driver has changed. Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: refresh new and changed patchesAnsuel Smith2019-12-269-212/+496
| | | | | | | Refresh patches to remove fuzz Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq8065: update dtsi with new opp tableAnsuel Smith2019-12-261-53/+91
| | | | | | | | The new driver use opp table to register frequency. Drop psv bindings as they are not used anymore. Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq8064: update dtsi with new opp tableAnsuel Smith2019-12-261-44/+80
| | | | | | | | | The new driver use opp table to register frequency. Drop psv bindings as they are not used anymore. Adds speedbin definition for nvmem driver Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: add patch to support krait cpu scaling driverAnsuel Smith2019-12-261-0/+351
| | | | | | | | | | This patch has been proposed but never actually merged to mainline. It was accepted but never re proposed by the creator. Rework it, fix kernel panic cause by double kfree. Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: backport qcom-cpufreq-kryo patchAnsuel Smith2019-12-263-0/+551
| | | | | | | | Backport patch applied to qcom-cpufreq-kryo driver as krait cpu will base on this driver. Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: drop old cpufreq patchAnsuel Smith2019-12-263-399/+0
| | | | | | | | Drop old cpufreq as now we have new driver that can use normal kernel opp definition Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: opp/core: update patch updating voltage tolerance on voltage adjustAnsuel Smith2019-12-261-12/+21
| | | | | | | | | | | Rework 0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t to reflect changes upstream. - Skip unnecessary allocation of buffer to set u_volt - Change opp u_volt directly Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: opp/core: update patch allowing adjusting of OPP voltages at runtimeAnsuel Smith2019-12-261-61/+71
| | | | | | | | Update 0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime with upstream version. Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: fix bug in L2 cache scalingAnsuel Smith2019-12-261-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It has been notice a buf in L2 cache scaling where the scaling is not done proprely if the frequency is set to the initial state before the new frequency. From: https://patchwork.kernel.org/patch/10565443/ * The clocks are set to aux clock rate first to make sure the * secondary mux is not sourcing off of QSB. The rate is then set to * two different rates to force a HFPLL reinit under all * circumstances. In the initial stage of boot to force a new frequency to apply, is needed to first set the frequency back to the lowest one (aux_rate) and then to the target one. This force and make sure the controller actually switch the frequency to the right one. Apply the same mechanism to L2 frequency scaling. Before scaling to the target frequency, first set the frequency to the aux_rate to force the transition, then scale it to the target frequency. Doing the wrong way can produce unexpected results and could lock the scaling mechanism until a full reboot is done (Causing a full reset by the krait-cc driver) From: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=77612720a2362230af726baa4149c40ec7a7fb05 When the Hfplls are reprogrammed during the rate change, the primary muxes which are sourced from the same hfpll for higher frequencies, needs to be switched to the 'safe secondary mux' as the parent for that small window. This is done by registering a clk notifier for the muxes and switching to the safe parent in the PRE_RATE_CHANGE notifier and back to the original parent in the POST_RATE_CHANGE notifier. This should apply also to L2 scaling... as we can't relly use the notifier, we manually do this on L2 scaling. Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* kernel: bump 4.19 to 4.19.91Hauke Mehrtens2019-12-246-12/+12
| | | | | | | | | Refreshed all patches. Compile-tested on: ipq40xx, apm821xx Runtime-tested on: ipq40xx Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: bump 4.14 to 4.14.159Koen Vandeputte2019-12-241-3/+3
| | | | | | | | | | | | | | | Refreshed all patches. Remove upstreamed: - 302-0002-dmaengine-dw-implement-per-channel-protection-contro.patch Fixes: - CVE-2019-19332 Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: Deactivate CONFIG_SFP in generic configHauke Mehrtens2019-12-231-1/+0
| | | | | | | | Deactivate CONFIG_SFP for kernel 4.19 in the generic configuration. The CONFIG_SFP configuration option was not set to anything in the ath79 build for me, set it to deactivated by default. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ipq806x: switch to 4.19 kernel versionAnsuel Smith2019-12-191-1/+1
| | | | | | | | | | | | It has been used by several people for some time already and feedback has been mostly positive. Ref: https://github.com/openwrt/openwrt/pull/2472 Tested-by: Hannu Nyman <hannu.nyman@iki.fi> [ipq8065, R7800] Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [ipq8065, NBG6817] Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [separate commit, commit subject and description facelift] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ipq806x: update USB3 modules for 4.19Ansuel Smith2019-12-191-1/+1
| | | | | | | | | - Use new dwc3-qcom usb driver. - Drop dwc3-of-simple as we have a dedicated driver now. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [split into separate commit, commit subject facelift] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ipq806x: add missing core1 voltage tolerancePavel Kubelun2019-12-191-0/+1
| | | | | | | | Voltage tolerance is accounted per core, not per cpu, so add missing DT entry. Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: fix tsens driver in 4.19Ansuel Smith2019-12-191-0/+20
| | | | | | | | | | | | | | | | | | | Added patch: - 063-3 Fix tsense shared memory problem Recent changes in ioremap_resource function are causing fails for the memory areas which are already mapped. This changes are causing tsense driver failures during initialization: qcom-tsens 900000.thermal-sensor: tsens init failed So this patch uses simple ioremap in order to use this shared memory space. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [commit subject and desciption facelitf] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ipq806x: improve mdio gpios listChristian Lamparter2019-12-199-9/+18
| | | | | | | | | Improve rediability of gpio mdio list. No functional change. Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [proper authorship of the patch] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ipq806x: ap161: fix wrong definition stdoutChristian Lamparter2019-12-191-1/+1
| | | | | | | | | | | From documentation https://www.kernel.org/doc/Documentation/devicetree/bindings/chosen.txt should be just stdout-path Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [proper authorship of the patch] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ipq806x: ap148: reorganize dtsChristian Lamparter2019-12-191-161/+155
| | | | | | | Reorganize dts to use tags from ipq8064 dtsi Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: d7800: fix warning on dtc compilationChristian Lamparter2019-12-191-2/+3
| | | | | | | | There is warning with "property has invalid length (4 bytes)" related to nand definition. Set size-cells to zero to fix this. Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: r7800: add missing wifi definition for pcieChristian Lamparter2019-12-191-0/+30
| | | | | | | Add missing wifi compatible definition for r7800 device. Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: use ipq8064 dedicated watchdogChristian Lamparter2019-12-191-1/+2
| | | | | | | Add missing watchdog to list of compatible timers Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: add nand and sata tagsChristian Lamparter2019-12-191-2/+2
| | | | | | | | Add some tags for nand and sata structure to easily reference them in other dts. Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: increase drive-strength for pinmuxChristian Lamparter2019-12-191-3/+3
| | | | | | | | | | | | | | | Increase drive-strength from https://lore.kernel.org/patchwork/patch/626885/ 2mA drive strength is not enough when we connect multiple i2c devices on the bus with different pull up resistors. This issue was detected when multiple i2c devices connected on the other side of level shifters on Linaro sensor board. Maxing up to 16mA made i2c much stable. Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: add missing gpio and gsbi declarationChristian Lamparter2019-12-191-0/+51
| | | | | | | Adds missing gpio and gsbi declaration. Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: disable spc on ipq8065 socAnsuel Smith2019-12-191-0/+8
| | | | | | | Spc is disabled in ipq8065 board as it does cause cpu lockup (probably caused by wrong register being set) Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: set apq8064 regulator to support cpuidleAnsuel Smith2019-12-191-2/+3
| | | | | | Set qcom,apq8064-saw2-v1.1-cpu as regulator to make cpuidle work. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: convert ipq8064 dtsi interruptsChristian Lamparter2019-12-191-27/+33
| | | | | | | | | | | | | Convert hardcoded interrupts value to types defined in gci include file. Interrupts sets to 0 are converted to IRQ_TYPE_LEVEL_HIGH to fix kernel warning. Same fix has been applied to arm64 dts. https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1797143 https://patchwork.kernel.org/patch/10367453/ https://patchwork.kernel.org/patch/10315315/ Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: use new usb3 implementationChristian Lamparter2019-12-1916-290/+64
| | | | | | | | | Use new usb3 implementation and refresh dts to the new dwc3 structure Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [proper authorship of the patch] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ipq806x: fix missing compatible and renameChristian Lamparter2019-12-192-2/+2
| | | | | | | | | | - ipq8064 compatible was missing from nbg6817. - Rename ap148 with a better descriptive name. Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [proper authorship of the patch] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ipq806x: convert ok to okay in dtsChristian Lamparter2019-12-1912-184/+184
| | | | | | | DT spec require okay instead of ok in dts files Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ipq806x: refresh 4.19 patchesChristian Lamparter2019-12-1948-12445/+1092
| | | | | | | | | | | | | | | | | | | | | | | | | | Reworked: - 0034 patchset update Added: - 080 Add support for pinctrl-msm framework Removed: - 0074-ipq806x-usb-Control-USB-master-reset.patch (we now have a dedicated driver for qcom usb) - 0047-mtd-nand-Create-a-BBT-flag-to-access-bad-block-marke (merged upstream) - 310-msm-adhoc-bus-support (it looks like it was never actually used in any dts) Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [commit subject and description facelift, SoB fix] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ipq806x: update 4.19 kernel configAnsuel Smith2019-12-191-46/+67
| | | | | | | | | | These changes are needed in order to migrate old kernel 4.14 config to the upcoming kernel version 4.19. Also add missing configuration options that comes up with this SoC. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [line wrap long commit description, add 4.19 to subject, soc->SoC] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ipq806x: copy files from 4.14 to 4.19Ansuel Smith2019-12-1970-0/+26575
| | | | | | | | | This copies files from files-4.14 to files-4.19 directory in order to get clear diffs for any changes done from now on. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [added missing commit description, refreshed ea8500 and wpq864 DTS] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: bump 4.14 to 4.14.158Koen Vandeputte2019-12-101-1/+1
| | | | | | | | | | | | Refreshed all patches. Altered patches: - 400-mtd-add-rootfs-split-support.patch Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.156Koen Vandeputte2019-11-294-5/+5
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.155Koen Vandeputte2019-11-224-5/+5
| | | | | | | | | | | | | | | | | Refreshed all patches. Altered patches: - 707-dpaa-ethernet-support-layerscape.patch Remove upstreamed: - 034-v4.20-MIPS-BCM47XX-Enable-USB-power-on-Netgear-WNDR3400v3.patch - 001-4.21-01-BCM63XX-fix-switch-core-reset-on-BCM6368.patch - 073-qcom-ipq4019-fix-cpu0-s-qcom-saw2-reg-value.patch Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.154Koen Vandeputte2019-11-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Refreshed all patches. Altered patches: - 902-debloat_proc.patch - 040-dmaengine-qcom-bam-Process-multiple-pending-descript.patch - 807-usb-support-layerscape.patch - 809-flexcan-support-layerscape.patch - 816-pcie-support-layerscape.patch Remove upstreamed: - 150-MIPS-bmips-mark-exception-vectors-as-char-arrays.patch - 303-spi-nor-enable-4B-opcodes-for-mx66l51235l.patch New symbols: X86_INTEL_MPX X86_INTEL_MEMORY_PROTECTION_KEYS X86_INTEL_TSX_MODE_OFF X86_INTEL_TSX_MODE_ON X86_INTEL_TSX_MODE_AUTO SGL_ALLOC Compile-tested on: cns3xxx, x86_64 Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* Revert "ipq806x: fix EA8500 switch control"Petr Štetiar2019-11-061-16/+4
| | | | | | | | | | | | | | | There is a problem with the EA8500, the switch will not work after soft reboot, the only way to get it working again is to power cycle it manually. There are probably several issues in the play, it's quite hard to fix it without having access to the actual device, so I don't see any other option now, then revert the offending commit. Ref: PR#2047 Fixes: FS#2168 ("Switch no longer work after restart on Linksys EA8500") Reported-by: Adam <424778940z@gmail.com> Signed-off-by: Petr Štetiar <ynezz@true.cz>