aboutsummaryrefslogtreecommitdiff
path: root/target/linux/ipq806x/image/chromium.mk
Commit message (Collapse)AuthorAge
* ipq806x: convert each device to DSA implementationChristian Marangi2023-09-30
| | | | | | | | | | | Convert each ipq806x device to DSA implementation using the qca8k driver. Rework 02_network to follow the new naming scheme. Update 01_leds to use netdev trigger with correct DSA port and drop now unused switch trigger. Currently secondary CPU is disabled and will be reneabled later. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ipq806x: chromium: Enable kmod-ramoops by defaultBrian Norris2023-02-18
| | | | | | | | Chromium devices (like OnHub) have ramoops memory reserved by the bootloader. Let's enable the ramoops kernel module by default, so we get better crash logging. Signed-off-by: Brian Norris <computersforpeace@gmail.com>
* ipq806x: onhub: Enable fstools_partname_fallback_scanBrian Norris2023-02-04
| | | | | | | | | | | | | | | | | | | | When fstools is unable to parse our root=<...> arg correctly, it can fall back to scanning all block devices for a 'rootfs_data' partition. This fallback was deemed wrong (or at least, a breaking/incompatible change) for some targets, so we're forced to opt back into it with fstools_partname_fallback_scan=1. Without this, OnHub devices will use a rootfs-appended loop device for rootfs_data instead of the intended 3rd partition. While I'm at it, just move all the boot args into the 'cros-vboot' build rule, instead of using the custom bootargs-append. All cros-vboot subtargets here are using the same rootwait (to support both eMMC and USB boot) and root/partition args. Signed-off-by: Brian Norris <computersforpeace@gmail.com> [ drop unrelated comments in commit description ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ipq806x: Initial TP-Link and ASUS OnHub supportBrian Norris2023-01-21
TP-Link and ASUS OnHub devices are very similar, sharing many of the same characteristics and much of their Device Tree. They both run a version of ChromeOS for their factory firmware, and so installation instructions look very similar to Google Wifi [1]. Things I've tested, and are working: * Ethernet * WiFi (2.4 and 5 GHz) * LEDs * USB * eMMC * Serial console (if you wire it up yourself) * 2x CPU * Speaker == Installation instructions summary == 1. Flash *-factory.bin to a USB drive (e.g., with `dd`) 2. Insert USB drive, to boot OpenWrt from USB 3. Copy the same *-factory.bin over to device, and flash it to eMMC to make OpenWrt permanent == Developer mode, booting from USB (Step 2) == To enter Developer Mode and boot OpenWrt from a USB stick: 1. Unplug power 2. Gain access to the "developer switch" through the bottom of the device 3. Hold down the "reset switch" (near the USB port / power plug) 4. Plug power back in 5. The LED on the device should turn white, then blink orange, then red. Release the reset switch. 6. Insert USB drive with OpenWrt factory.bin 7. Press the hidden developer switch under the device to boot to USB; you should see some activity lights (if you have any) on your USB drive 8. Depending on your configuration, the router's LED(s) should come on. You're now running OpenWrt off a USB stick. These instructions are derived from: https://www.exploitee.rs/index.php/Rooting_The_Google_OnHub#Enabling_%22Developer_Mode%22_on_the_OnHub https://www.exploitee.rs/index.php/Asus_OnHub#Enabling_%22Developer_Mode%22_on_the_OnHub ~~Finding the developer switch:~~ for TP-Link, the developer switch is on the bottom of the device, underneath some of the rubber padding and a screw. For ASUS, remove the entire base, via 4 screws under the rubber feet. See the Exploitee instructions for more info and photos. == Making OpenWrt permanent (on eMMC) (Step 3) == Once you're running OpenWrt via USB: 1. Connect Ethernet to the LAN port; router's LAN address should be at 192.168.1.1 2. Connect another system to the router's LAN, and copy the factory.bin image over, via SCP and SSH: scp -O openwrt-ipq806x-chromium-tplink_onhub-squashfs-factory.bin root@192.168.1.1: ssh root@192.168.1.1 -C "dd if=/dev/zero bs=512 seek=7552991 of=/dev/mmcblk0 count=33 && \ dd if=/root/openwrt-ipq806x-chromium-tplink_onhub-squashfs-factory.bin of=/dev/mmcblk0" 3. Reboot and remove the USB drive. == Developer mode beep == Note that every time you boot the OnHub in developer mode, the device will play a loud "beep" after a few seconds. This is described in the Chromium docs [2], and is intended to make it clear that the device is not running Google software. It is nontrivial to completely disable this beep, although it's possible to "acknowledge" developer mode (and skip the beep) by using a USB keyboard to press CTRL+D every time you boot. [1] https://openwrt.org/toh/google/wifi [2] https://chromium.googlesource.com/chromiumos/docs/+/HEAD/developer_mode.md Signed-off-by: Brian Norris <computersforpeace@gmail.com>