aboutsummaryrefslogtreecommitdiffstats
path: root/target
Commit message (Collapse)AuthorAgeFilesLines
* ramips: mt7620: use throughput trigger on HiWiFi HC5x61DENG Qingfang2019-12-314-8/+6
| | | | | | Throughput trigger support for MT7620 has been added, so switch to it Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: remove HiWiFi HC5661 non-existent 5GHz LEDDENG Qingfang2019-12-311-5/+0
| | | | | | | | HC5661 does not have 5GHz WiFi or LED. Fixes: e6e373d3480e ("ramips: Add DTS files for HiWiFi HC5x61 models") Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: add support for TP-Link RE200 v1Andreas Böhler2019-12-314-0/+198
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link RE200 v1 is a wireless range extender with Ethernet and 2.4G and 5G WiFi with internal antennas. It's based on MediaTek MT7620A+MT7610EN. Specifications -------------- - MediaTek MT7620A (580 Mhz) - 64 MB of RAM - 8 MB of FLASH - 2T2R 2.4 GHz and 1T1R 5 GHz - 1x 10/100 Mbps Ethernet - UART header on PCB (57600 8n1) - 8x LED (GPIO-controlled; only 6 supported), 2x button There are 2.4G and 5G LEDs in red and green which are controlled separately. The 5G LED is currently not supported, since the GPIOs couldn't be determined. Installation ------------ Web Interface ------------- It is possible to upgrade to OpenWrt via the web interface. However, the OEM firmware upgrade file is required and a tool to fix the MD5 sum of the header. This procedure overwrites U-Boot and there is not failsafe / recovery mode present! To prepare an image, you need to take the header and U-Boot (i.e. 0x200 + 0x20000 bytes) from an OEM firmware file and attach the factory image to it. Then fix the header MD5Sum1. Serial console -------------- Opening the case is quite hard, since it is welded together. Rename the OpenWrt factory image to "test.bin", then plug in the device and quickly press "2" to enter flash mode (no line feed). Follow the prompts until OpenWrt is installed. Unfortunately, this devices does not offer a recovery mode or a tftp installation method. If the web interface upgrade fails, you have to open your device and attach serial console. Since the web upgrade overwrites the boot loader, you might also brick your device. Additional notes ---------------- MAC address assignment is based on stock-firmware. For me, the device assigns the MAC on the label to Ethernet and the 2.4G WiFi, while the 5G WiFi has a separate MAC with +2. *:88 Ethernet/2.4G label, uboot 0x1fc00, userconfig 0x0158 *:89 unused userconfig 0x0160 *:8A 5G not present in flash This seems to be the first ramips device with a TP-Link v1 header. The original firmware has the string "EU" embedded, there might be some region- checking going on during the firmware upgrade process. The original firmware also contains U-Boot and thus overwrites the boot loader during upgrade. In order to flash back to stock, the first header and U-Boot need to be stripped from the original firmware. Signed-off-by: Andreas Böhler <dev@aboehler.at>
* ramips: fix switch setup for Xiaomi MiWiFi NanoSungbo Eo2019-12-312-2/+10
| | | | | | | MiWiFi Nano has two LAN ports, which are in reverse order. Add port numbers to them, and disable unused ports. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* mvebu: split interface configuration for clearfog pro and baseJosua Mayer2019-12-311-6/+10
| | | | | | | Handle both variants separately. This removes the need for calling swconfig to detect the switch, and simplifies future changes. Signed-off-by: Josua Mayer <josua.mayer@jm0.eu>
* ath79: generate firmware image for aircube-ispChristian Mauderer2019-12-311-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a "factory" image for the aircube-isp devices. Note that the firmware can't be uploaded without prior special preparation. For the most recent instructions on how to do that, visit the OpenWRT wiki page of the Ubiquiti airCube ISP for details: https://openwrt.org/toh/ubiquiti/ubiquiti_aircube_isp Current procedure: With the original firmware 2.5.0 it is possible to upload and execute a script via the configuration. To do that download and unpack the original configuration, adapt uhttpd config to execute another lua handler (placed in the config directory) and pack and upload it again. The lua handler can call a script that mounts an overlayfs and modifies the "fwupdate.real" binary so that an unsigned image is accepted. The overlayfs is necessary because a security system (called tomoyo) doesn't allow binaries in other locations than /sbin/fwupdate.real (and maybe some more) to access the flash when executed via network. A big thanks to Torvald Menningen (Snap) from the OpenWRT forum for finding out how to patch the binary so that it accepts an unsigned image. The current step-by-step procedure is: - Use a version 2.5.0 of the original firmware. This is important because a binary file will be modified. - Download a configuration. - Unpack it (it's just a tar gz file without an ending). - Add the following to uhttpd: `````` config 'uhttpd' 'other' list listen_http 0.0.0.0:8080 list listen_http [::]:8080 option 'home' '/tmp/persistent/config/patch/www' option lua_prefix '/lua' option lua_handler '/tmp/persistent/config/patch/handler.lua' `````` - Create a `patch` subfolder. - Create a `patch/www` subfolder. - Create a `patch/handler.lua` with the following content: `````` function handle_request(env) uhttpd.send("Status: 200 OK\r\n") uhttpd.send("Content-Type: text/plain\r\n\r\n") local command = "/bin/sh /tmp/persistent/config/patch/patch.sh 2>&1" local proc = assert(io.popen(command)) for line in proc:lines() do uhttpd.send(line.."\r\n") end proc:close() end `````` - Create a `patch/patch.sh` with the following content: `````` #!/bin/sh -x set -e set -u set -x UBNTBOX_PATCHED="/tmp/fwupdate.real" MD5FILE="/tmp/patchmd5" cat <<EOF > ${MD5FILE} c33235322da5baca5a7b237c09bc8df1 /sbin/fwupdate.real EOF # check md5 of files that will be patched if ! md5sum -c ${MD5FILE} then echo "******** Error when checking files. Refuse to do anything. ********" exit 0 fi # prepare some overlay functionality LOWERDIR="/tmp/lower_root" mkdir -p ${LOWERDIR} mount -t squashfs -oro /dev/mtdblock3 ${LOWERDIR} overlay_some_path() { PATH_TO_OVERLAY=$1 ALIAS=$2 UPPERDIR="/tmp/over_${ALIAS}" WORKDIR="/tmp/over_${ALIAS}_work" mkdir -p ${UPPERDIR} mkdir -p ${WORKDIR} mount -t overlay -o lowerdir=${LOWERDIR}${PATH_TO_OVERLAY},upperdir=${UPPERDIR},workdir=${WORKDIR} overlay ${PATH_TO_OVERLAY} } # patch the ubntbox binary. overlay_some_path "/sbin" "sbin" echo -en '\x10' | dd of=/sbin/fwupdate.real conv=notrunc bs=1 count=1 seek=24598 echo "******** Done ********" `````` - Repack the configuration. - Upload it via the normal web interface. - Wait about a minute. The webserver should restart. - Now there is a second web server at port 8080 which can call the lua script. Visit the page with a web browser. Link is for example http://192.168.1.1:8080/lua - You should see the output of the script with a "*** Done ***" at the end. Note that the patches are not permanent. If you restart the router you have to re-visit the link (but not re-upload the config). - Now you can upload an unsigned binary via the normal web interface. Signed-off-by: Christian Mauderer <oss@c-mauderer.de>
* toolchain: wrapper.sh: harmonize leading whitespacesAdrian Schmutzler2019-12-311-10/+10
| | | | | | | Convert leading spaces to tabs and generally harmonize leading whitespace indent in the file. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* toolchain: wrapper.sh: use /bin/sh instead of bashRosen Penev2019-12-311-1/+1
| | | | | | | | No bash features are actually used here. Signed-off-by: Rosen Penev <rosenp@gmail.com> [slightly adjust commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* apm821xx: mbl_gen_hdd_img.sh: switch to /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* arc770: gen_axs10x_sdcard_img.sh: switch to /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* archs38: gen_axs10x_sdcard_img.sh: switch to /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* at91: gen_at91_sdcard_img.sh: switch to /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* brcm2708: gen_rpi_sdcard_img.sh: use /bin/shRosen Penev2019-12-311-2/+2
| | | | | | | | | | Nothing here needs bash. While at it, remove trailing whitespace. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title, add whitespace comment] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* gemini: dns313_gen_hdd_img.sh: switch to /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* layerscape: gen_sdcard_head_img.sh: switch to /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mediatek: gen_mt7623_emmc_img.sh: use /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mxs: gen_sdcard_ext4_ext4.sh: use /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [adjust prefix of commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mxs: gen_sdcard_vfat_ext4.sh: use /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [change prefix of commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* omap: gen_omap_sdcard_img.sh: use /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* rb532: gen_image.sh: use /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | Nothing here needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [slightly adjust commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* sunxi: gen_sunxi_sdcard_img.sh: switch to /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | This has nothing that needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* zynq: gen_zynq_sdcard_img.sh: switch to /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | This has nothing that needs bash. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: gen_mvebu_sdcard_img.sh: use /bin/shRosen Penev2019-12-311-1/+1
| | | | | | | | There is nothing that needs bash anymore. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* toolchain/wrapper: replace legacy backticks with $()Rosen Penev2019-12-311-3/+3
| | | | | | | | | | This replaces deprecated backticks by more versatile $(...) syntax. Found with shellcheck. Signed-off-by: Rosen Penev <rosenp@gmail.com> [alter commit title, extend commit message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: gen_mvebu_sdcard_img.sh: don't use format directly in printfRosen Penev2019-12-311-1/+1
| | | | | | | | | | Enables proper checking. Matches printf behavior in C. Found with shellcheck. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: gen_mvebu_sdcard_img.sh: replace let with $(())Rosen Penev2019-12-311-1/+1
| | | | | | | | | | let is a bashism. Found with shellcheck. Signed-off-by: Rosen Penev <rosenp@gmail.com> [add prefix to commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: add LED trigger for TL-WR902AC v3 WAN LEDDavid Bauer2019-12-301-0/+1
| | | | | | | | | | | This adds an LED trigger for the WAN LED on top of the TP-Link TL-WR902AC v3. Currently, only the LED on the port itself shows the link state, while the LED on top of the device stays dark. The WAN port of the device is a hybrid LAN/WAN one, hence why the LED at the port was labled LAN. Signed-off-by: David Bauer <mail@david-bauer.net>
* brcm2708: image: stop using mkknlimg scriptÁlvaro Fernández Rojas2019-12-281-6/+1
| | | | Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* brcm2708: switch to upstream cpufreq driverÁlvaro Fernández Rojas2019-12-283-5/+14
| | | | Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* Revert "kernel: fix kmemleak warnings introduced in 305-mips_module_reloc.patch"Felix Fietkau2019-12-272-18/+12
| | | | | | This reverts commit a03afef7f2e8ae363a97357ec75ffbfef372a9ea. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* 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>
* ipq40xx: build DEVICE_DTS based on SOC and device nameAdrian Schmutzler2019-12-2715-41/+42
| | | | | | | | | | | | | | | | | | | 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, and rename the files not having followed it so far. Note that for some devices the kernel itself is inconsistent, leaving us with a manual overwrite for ap.dk01.1-c1 and ap.dk04.1-c1. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: remove bogus ralink,mtd-eeprom with offset 0x4Adrian Schmutzler2019-12-277-8/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several devices in mt76x8 subtarget use the following line to set up wmac in their DTS(I) files: ralink,mtd-eeprom = <&factory 0x4> This is strange for several reasons: - They should use mediatek,mtd-eeprom on this SOC - The caldata is supposed to start at 0x0 - The parent DTSI mt7628an.dtsi specifies mediatek,mtd-eeprom anyway, starting from 0x0 - The offset coincides with the default location of the MAC address in caldata Based on the comment in b28e94d4bfa1 ("ramips: MiWiFi Nano fixes"), it looks like the author for this device wanted to actually use mtd-mac-address instead of ralink,mtd-eeprom. A check on the same device revealed that actually the MAC address start at offset 4 there, so the correct caldata offset is 0x0. Based on these findings, and the fact that the expected location on this SOC is 0x0, we remove the "ralink,mtd-eeprom = <&factory 0x4>" statement from all devices in ramips (being only mt7628an anyway). Thanks to Sungbo Eo for finding and researching this. Reported-by: Sungbo Eo <mans0n@gorani.run> Fixes: b28e94d4bfa1 ("ramips: MiWiFi Nano fixes") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: fix kmemleak warnings introduced in 305-mips_module_reloc.patchFelix Fietkau2019-12-272-12/+18
| | | | | | | Physically allocated memory for modules needs to be registered with kmemleak, so it can track it as object. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ipq40xx: use ath10k-ct-smallbuffers for 128 MiB devicesPaul Fertser2019-12-261-1/+3
| | | | Signed-off-by: Paul Fertser <fercerpav@gmail.com>
* 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>
* ath79: tp-link: use ath10k-ct-smallbuffers for 64 MiB devicesPaul Fertser2019-12-251-5/+6
| | | | Signed-off-by: Paul Fertser <fercerpav@gmail.com>
* brcm2708: fix malformed patchÁlvaro Fernández Rojas2019-12-251-2/+2
| | | | Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* brcm2708: update to latest patches from RPi FoundationÁlvaro Fernández Rojas2019-12-24803-2031/+8999
| | | | | | Also removes reverted patches. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>