aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm53xx
Commit message (Collapse)AuthorAgeFilesLines
...
* bcm53xx: backport early DT patches queued for 5.16Rafał Miłecki2021-09-2312-4/+642
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: drop DTS based workaround for serial support in procdRafał Miłecki2021-09-161-116/+0
| | | | | | | | | Specifying serial in bootargs is not needed since the commit ffeb37047e85 ("procd: update to git HEAD"). It's thanks to the procd commit 2cfc26f8456a ("inittab: detect active console from kernel if no console= specified"). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: bump 5.4 to 5.4.145John Audia2021-09-131-1/+1
| | | | | | | | | | | | Removed upstreamed: generic-backport/040-ARM-8918-2-only-build-return_address-if-needed.patch All other patches automatically rebased. Build system: x86_64 Build-tested: ipq806x/R7800 Signed-off-by: John Audia <graysky@archlinux.us>
* kernel: bump 5.10 to 5.10.64John Audia2021-09-131-1/+1
| | | | | | | | | | | | All patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B, ipq806x/R7800 Run-tested: bcm2711/RPi4B, ipq806x/R7800 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us>
* bcm53xx: specify switch ports for more devicesRafał Miłecki2021-09-072-0/+864
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: switch to the kernel 5.10Rafał Miłecki2021-08-311-1/+1
| | | | | | With PCI and USB regressions fixed it should be safe to switch now. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: fix kmod-i2c-bcm-iproc for kernel 5.10Rafał Miłecki2021-08-311-1/+3
| | | | | | | | | | | | | | | | | | | | | I2C_BCM_IPROC selects I2C_SLAVE which in turn makes two new symbols available: I2C_SLAVE_EEPROM and I2C_SLAVE_TESTUNIT. That was causing: I2C support (I2C) [M/n/y/?] m Enable compatibility bits for old user-space (I2C_COMPAT) [N/y/?] n I2C device interface (I2C_CHARDEV) [M/n/?] m I2C bus multiplexing support (I2C_MUX) [N/m/?] n Autoselect pertinent helper modules (I2C_HELPER_AUTO) [N/y/?] n SMBus-specific protocols (I2C_SMBUS) [N/m/?] n I2C/SMBus Test Stub (I2C_STUB) [N/m/?] n I2C slave support (I2C_SLAVE) [Y/?] y I2C eeprom slave driver (I2C_SLAVE_EEPROM) [N/m/?] n I2C eeprom testunit driver (I2C_SLAVE_TESTUNIT) [N/m/?] (NEW) Ideally I2C_SLAVE should probably be packaged as kmod-i2c-slabe. For now just modify kmod-i2c-bcm-iproc to fix kernel compilation. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: fix USB in kernel 5.10Rafał Miłecki2021-08-311-0/+41
| | | | | | | This makes USB controller driver work with USBs that are always powered on (don't require toggling any GPIO). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: backport missed DT patch cleaning up CRU blockRafał Miłecki2021-08-3014-22/+196
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: backport the latest upstream DT changesRafał Miłecki2021-08-2925-2/+2324
| | | | | | | | This includes: 1. BCM5301X changes from 5.14 and queued 5.15 stuff 2. NSP changes from 5.11 - 5.15 for kernel 5.10 Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: move two symbols to the generic kconfigsRui Salvaterra2021-08-292-4/+0
| | | | | | | CONFIG_RCU_{NEED_SEGCBLIST,STALL_COMMON} are set basically everywhere. Move them to the generic kconfigs. And resort the generic kconfigs while at it. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* kernel: bump 5.10 to 5.10.55Rui Salvaterra2021-08-084-5/+5
| | | | | | No deleted or manually refreshed patches. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* kernel: bump 5.4 to 5.4.136John Audia2021-07-311-1/+1
| | | | | | | | | | | | All patches automatically rebased. Build system: x86_64 Build-tested: ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us>
* bcm53xx: refresh kernel 5.10 configRafał Miłecki2021-07-291-76/+12
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: add testing support for kernel 5.10Rafał Miłecki2021-07-2932-1/+2357
| | | | | | | | | | | | | | | | It still requires fixing PCIe support: [ 6.644699] pcie_iproc_bcma bcma0:7: host bridge /axi@18000000/pcie@12000 ranges: [ 6.652217] pcie_iproc_bcma bcma0:7: No bus range found for /axi@18000000/pcie@12000, using [bus 00-ff] [ 6.661833] OF: /axi@18000000/pcie@12000: Missing device_type [ 6.667622] pcie_iproc_bcma: probe of bcma0:7 failed with error -12 [ 6.673985] pcie_iproc_bcma bcma0:8: host bridge /axi@18000000/pcie@13000 ranges: [ 6.681514] pcie_iproc_bcma bcma0:8: No bus range found for /axi@18000000/pcie@13000, using [bus 00-ff] [ 6.691137] pcie_iproc_bcma: probe of bcma0:8 failed with error -12 [ 6.697522] pcie_iproc_bcma bcma0:9: host bridge /axi@18000000/pcie@14000 ranges: [ 6.705048] pcie_iproc_bcma bcma0:9: No bus range found for /axi@18000000/pcie@14000, using [bus 00-ff] [ 6.714669] pcie_iproc_bcma: probe of bcma0:9 failed with error -12 Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: bump 5.4 to 5.4.118John Audia2021-05-231-2/+2
| | | | | | | | | | | | | | | | | | Manually rebased: ath79/patches-5.4/0033-spi-ath79-drop-pdata-support.patch Removed uneeded patch: ath79/patches-5.4/0050-spi-ath79-remove-spi-master-setup-and-cleanup-assign.patch All other patches automatically rebased. Build system: x86_64 Build-tested: ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us>
* treewide: switch the timer frequency to 100 HzRui Salvaterra2021-04-211-2/+0
| | | | | | | | Some targets select HZ=100, others HZ=250. There's no reason to select a higher timer frequency (and 100 Hz are available in every architecture), so change all targets to 100 Hz. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* treewide: remove redundant ubifs kconfig symbolsRui Salvaterra2021-04-211-4/+0
| | | | | | | For the targets which enable ubifs, these symbols are already part of the generic kconfigs. Drop them from the target kconfigs. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* bcm53xx: fix Luxul XWR-3150 LAN ports numberingRafał Miłecki2021-04-211-1/+1
| | | | | | | Port numbers were reverted. Fixes: c459a6bf482f ("bcm53xx: add support for Luxul FullMAC WiFi devices") Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: add pending TRX patch for "firmware" partitionRafał Miłecki2021-04-141-0/+43
| | | | | | | This fixes partitioning on Linksys EA9500. With this change only the currently used firmware MTD partition gets parsed. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: enhance support for Linksys EA9500Vivek Unune2021-04-014-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Add leds and configs 2. Add network configs 3. Add script to clear partial boot flag 4. Hack to use port 5 as cpu port as port 8 connected to eth2 wont pass any frames 5. Enable EA9500 image generation Hardware Info: - Processor - Broadcom BCM4709C0KFEBG dual-core @ 1.4 GHz - Switch - BCM53012 in BCM4709C0KFEBG & external BCM53125 - DDR3 RAM - 256 MB - Flash - 128 MB (Toshiba TC58BVG0S3HTA00) - 2.4GHz - BCM4366 4×4 2.4/5G single chip 802.11ac SoC - Power Amp - Skyworks SE2623L 2.4 GHz power amp (x4) - 5GHz x 2 - BCM4366 4×4 2.4/5G single chip 802.11ac SoC - Power Amp - PLX Technology PEX8603 3-lane, 3-port PCIe switch - Ports - 8 Ports, 1 WAN Ports - Antennas - 8 Antennas - Serial Port - @j6 [GND,TX,RX] (VCC NC) 115200 8n1 Flashing Instructions: 1. Connect a USB-TTL table to J6 on the router as well as a ethernet cable to a lan port and your PC. 2. Power-on the router. 3. Use putty or a serial port program to view the terminal. Hit Ctrl+C and interrupt the CFE terminal terminal. 4. Setup a TFTP server on your local machine at setup you local IP to 192.168.1.2 5. Start the TFTP Server 6. Run following commands at the CFE terminal flash -noheader 192.168.1.2:/openwrt.trx nflash0.trx flash -noheader 192.168.1.2:/openwrt.trx nflash0.trx2 nvram set bootpartition=0 && nvram set partialboots=0 && nvram commit 7. Reboot router to be presented by OpenWrt Note: Only installation method via serial cable is supported at the moment. The trx firmware has to be flashed to both the partitions using following commands from CFE prompt. This will cover US and Non-US variants. Signed-off-by: Vivek Unune <npcomplete13@gmail.com> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: use upstream Linksys EA9500 fixesRafał Miłecki2021-04-012-1/+30
| | | | | | One fix was accepted, one was added. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: fix Linksys EA9500 partitionsRafał Miłecki2021-03-291-0/+58
| | | | | | Use proper DT binding. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: backport 5.13 mtd partitioning changesRafał Miłecki2021-03-291-0/+1
| | | | | | | | 1. Use upstream accepted NVMEM patches 2. Minor fix for BCM4908 partitioning 3. Support for Linksys firmware partitions on Northstar Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: bump 5.4 to 5.4.106John Audia2021-03-211-1/+1
| | | | | | | | | | | | | | | | | | Ran update_kernel.sh in a fresh clone without any existing toolchains. Manually rebased: bcm27xx/950-0993-xhci-quirks-add-link-TRB-quirk-for-VL805.patch layerscape/701-net-0231-enetc-Use-DT-protocol-information-to-set-up-the-port.patch Build system: x86_64 Build-tested: ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> [remove accidental whitespace edit] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm53xx: backport first 5.13 DTS changesRafał Miłecki2021-03-143-1/+476
| | | | | | | This adds NVMEM bindings that are needed for proper booting on Linksys devices. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: initialize NVRAM from NVMEM driverRafał Miłecki2021-03-122-0/+92
| | | | | | | | | | | NVRAM access may be needed early in boot process. Reading it using mtd happens quite late in the init process. Add NVRAM initialization to the NVMEM driver which comes up early and depends on IO mapping only. This is required by Linksys devices which use NVRAM content for proper partitioning (detecting current firmware partition). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: backport NVMEM NVRAM driverRafał Miłecki2021-03-103-0/+181
| | | | | | | It supports NVRAM access described using DT binding. Right now NVRAM data is exposed using /sys/bus/nvmem/ only. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* Revert "bcm53xx: add support for reading NVRAM based on DT mapping"Rafał Miłecki2021-03-102-141/+0
| | | | | | | This reverts commit b0376462c164344d6be9fe1568a9f13ffd8fbb16. Those changes were rejected and were replaced with an NVMEM driver. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* treewide: remove execute bit and shebang from board.d filesAdrian Schmutzler2021-03-062-2/+0
| | | | | | | | | | | | | | | | So far, board.d files were having execute bit set and contained a shebang. However, they are just sourced in board_detect, with an apparantly unnecessary check for execute permission beforehand. Replace this check by one for existance and make the board.d files "normal" files, as would be expected in /etc anyway. Note: This removes an apparantly unused '#!/bin/sh /etc/rc.common' in target/linux/bcm47xx/base-files/etc/board.d/01_network Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm53xx: add support for reading NVRAM based on DT mappingRafał Miłecki2021-03-022-0/+141
| | | | | | | This is required for devices that use NVRAM data for detecting currently used firmware partition (e.g. Linksys devices). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: backport more upstream dts stuff from kernel 5.11Rafał Miłecki2021-02-257-0/+507
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: backport Linksys Panamera (EA9500) patchesVivek Unune2021-02-255-2/+230
| | | | | | | | | | | | | | | | These patches have been already accepted. 302-ARM-dts-BCM5301X-Update-Northstar-pinctrl-binding.patch had to be updated. [rmilecki: use actual upstream accepted patches replace v5.10 with v5.11 to match actual upstream kernel recover dropped part of the pinctrl compatible patch update filenames refresh patches] Signed-off-by: Vivek Unune <npcomplete13@gmail.com> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: group dts backports by upstream kernel versionRafał Miłecki2021-02-254-1/+6
| | | | | | It's a simple renaming thing. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* treewide: rename IMAGE_PREFIX/IMAGE_NAME to DEVICE_IMG_*Adrian Schmutzler2021-02-251-1/+1
| | | | | | | | | | | | | | We so far had two variables IMG_PREFIX and IMAGE_PREFIX with different content. Since these names are obviously quite confusing, this patch renames the latter to DEVICE_IMG_PREFIX, as it's a device-dependent variable, while IMG_PREFIX is only (sub)target-dependent. For consistency, also rename IMAGE_NAME to DEVICE_IMG_NAME, as that's a device-dependent variable as well. Cc: Paul Spooren <mail@aparcar.org> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: bump 5.4 to 5.4.97John Audia2021-02-111-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Ran update_kernel.sh in a fresh clone without any existing toolchains. Manually rebased: bcm27xx 950-0267-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch bcm53xx 180-usb-xhci-add-support-for-performing-fake-doorbell.patch layerscape 302-dts-0008-arm64-dts-ls1046a-accumulated-change-to-ls1046a-boar.patch 820-usb-0016-MLK-16735-usb-host-add-XHCI_CDNS_HOST-flag.patch 820-usb-0018-MLK-18794-1-usb-host-xhci-add-.bus_suspend-override.patch Build system: x86_64 Build-tested: bcm27xx/bcm2711, ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions/everything functional. Signed-off-by: John Audia <graysky@archlinux.us> [remove quilt comment, fix/adjust 820-usb-* layerscape patches] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* target: use SPDX license identifiers on MakefilesAdrian Schmutzler2021-02-104-15/+6
| | | | | | Use SPDX license tags to allow machines to check licenses. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm53xx: use default SUPPORTED_DEVICES for Meraki MR32Adrian Schmutzler2021-01-231-3/+1
| | | | | | | | Since the new global SUPPORTED_DEVICES are now available in bcm53xx as well, we do not need to specify an explicit value for the MR32 anymore. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: drop empty kmod-ledtrig-* packagesSungbo Eo2021-01-151-1/+1
| | | | | | | | | | | | | | The following four led triggers are enabled in generic config. * kmod-ledtrig-default-on * kmod-ledtrig-heartbeat * kmod-ledtrig-netdev * kmod-ledtrig-timer Drop the packages and remove them from DEVICE_PACKAGES. There's no other package depending on them in this repo. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* kernel: bump 5.4 to 5.4.86Adrian Schmutzler2021-01-011-1/+1
| | | | | | | | | | | | | | | | | Removed upstreamed patches: pending-5.4/499-mtd-parser-cmdline-Fix-parsing-of-part-names-with-co.patch Manually merged: pending-5.4/611-netfilter_match_bypass_default_table.patch layerscape/302-dts-0112-arm64-dts-fsl-ls1028a-prepare-dts-for-overlay.patch Build-tested: ipq806x/R7800, bcm27xx/bcm2711, ath79/{generic,tiny}, ipq40xx, octeon, ramips/mt7621, realtek, x86/64 Run-tested: ipq806x/R7800, realtek Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Tested-by: John Audia <graysky@archlinux.us> Tested-by: Stijn Segers <foss@volatilesystems.org>
* kernel: move some disabled symbols to genericAleksander Jan Bajkowski2020-12-221-2/+0
| | | | | | Move some disabled config options found in lantiq target to generic. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* bcm53xx: use correct case for TP-Link in DEVICE_VENDORMoritz Warning2020-12-191-2/+2
| | | | | | | | Adjust spelling of vendor names to what is used in other places. Signed-off-by: Moritz Warning <moritzwarning@web.de> [improve commit title/message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm53xx: MR32: fix DEVICE_VENODR typoChristian Lamparter2020-12-131-1/+1
| | | | | | DEVICE_VENDOR was misspelled as DEVICE_VENODR. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* kernel: bump 5.4 to 5.4.75John Audia2020-11-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Manually rebased patches: bcm27xx: patches-5.4/950-0267-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch bcm53xx: patches-5.4/180-usb-xhci-add-support-for-performing-fake-doorbell.patch layerscape: patches-5.4/802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch patches-5.4/808-i2c-0002-MLK-10893-i2c-imx-add-irqf_no_suspend.patch patches-5.4/820-usb-0016-MLK-16735-usb-host-add-XHCI_CDNS_HOST-flag.patch Removed since could be reverse-applied by quilt: mediatek: patches-5.4/0700-arm-dts-mt7623-add-missing-pause-for-switchport.patch All modifications made by update_kernel.sh Build system: x86_64 Build-tested: ipq806x/R7800, ath79/generic, bcm27xx/bcm2711, x86_64 Run-tested: ipq806x/R7800, x86_64 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> Tested-by: Curtis Deptuck <curtdept@me.com> [x86_64] Rebase of 802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* kernel: remove support for kernel 4.19Adrian Schmutzler2020-10-3025-2348/+0
| | | | | | | We use 5.4 on all targets by default, and 4.19 has never been released in a stable version. There is no reason to keep it. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: move kmod-i2c-bcm-iproc to I2C menuDaniel Golle2020-10-301-1/+1
| | | | | | | | A typo resulted in that module having it's own menu. Move it into the I2C menu as it was most likely intended. Fixes: 1291274335 ("kernel: package bcm53xx i2c module") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: bump 5.4 to 5.4.69John Audia2020-10-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | Seemingly unneeded based on new upstream code so manually deleted: layerscape: 820-usb-0007-usb-dwc3-gadget-increase-timeout-value-for-send-ep-c.patch Manually merged: generic-hack: 251-sound_kconfig.patch All other modifications made by update_kernel.sh Build system: x86_64 Build-tested: ipq806x/R7800, ath79/generic, bcm27xx/bcm2711 Run-tested: ipq806x/R7800, lantiq/Easybox 904 xDSL No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> [add lantiq test report, minor commit message clarification] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm53xx: add Cisco Meraki MR32Christian Lamparter2020-09-257-3/+380
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for Cisco Meraki MR32. The unit was donated by Chris Blake. Thank you! WARNING: Only the 1x1:1 abgn Air Marshal WIPS wifi is currently supported by b43: b43-phy2: Found PHY: Analog 9, Type 4 (N), Revision 16 b43-phy2: Found Radio: Manuf 0x17F, ID 0x2057, Revision 9, Version 1 b43-phy2: Loading firmware version 784.2 (2012-08-15 21:35:19) and only as 802.11ABG! while WIFI1 and WIFI2 (both BCM4352) are not: b43-phy0: Broadcom 4352 WLAN found (core revision 42) b43-phy0 ERROR: FOUND UNSUPPORTED PHY (Analog 12, Type 11 (AC), Revision 1) Hardware Highlights: SoC: Broadcom BCM53016A1 (1 GHz, 2 cores) RAM: 128 MiB NAND: 128 MiB Spansion S34ML01G2 (~114 MiB useable) ETH: 1GBit Ethernet Port - PoE WIFI1: Broadcom BCM43520 an+ac (2x2:2 - id: 0x4352) WIFI2: Broadcom BCM43520 bgn (2x2:2 - id: 0x4352) WIFI3: Broadcom BCM43428 abgn (1x1:1 - id: 43428) BLE: Broadcom BCM20732 (ttyS1) LEDS: 1 x Programmable RGB Status LED (driven by a PWM) 1 x White LED (GPIO) 1 x Orange LED Fault Indicator (GPIO) 2 x LAN Activity / Speed LEDs (On the RJ45 Port) BUTTON: one Reset button MISC: AT24C64 8KiB EEPROM (i2c - stores Ethernet MAC + Serial#!) ina219 hardware monitor (i2c) Kensington Lock SERIAL: WARNING: The serial port needs a TTL/RS-232 3V3 level converter! The Serial setting is 115200-8-N-1. The board has a populated right angle 1x4 0.1" pinheader. The pinout is: VCC, RX, TX, GND. (Use a multimeter) Flashing needs a serial adaptor (due to the lack of a working dropbear on the original firmware). This flashing procedure for the MR32 was tested with firmware: "r23-149867:150252-aacharya". 0. Create a seperate Ethernet LAN which does not have access to the internet. Ideally use 192.168.1.2 for your PC. Make sure to reserve 192.168.1.1 it will be used later on by the OpenWrt firmware. The original Meraki firmware will likely try to setup the network via DHCP Discovery, so make sure your PC is running a DHCP-Server (i.e.: dnsmasq) '# dnsmasq -i eth# -F 192.168.1.5,192.168.1.50 Furthermore, the PC needs a supported ssh/http/ftp server in order to retrieve the initramfs + dtb file 1. Disassemble the MR32 device by removing all screws (4 screws are located under the 4 rubber feets!) and prying open the plastic covers without breaking the plastic retention clips. Once inside, remove all the screws on the outer metal shielding to get to the PCB. It's not necessary to remove the antennas! 2. Connect the serial cable to the serial header. 3. Partially reassemble the outer metal shielding to ensure that the SoC has a proper heat sink. 4. Connect the Ethernet patch cable to the device and the power cable. 5. Wait for the device to boot and enter the root shell. (rooting is not discussed in detail here please refer to Chris Blake - "pwning the meraki mr18" blog post: <https://servernetworktech.com/2016/02/pwning-the-meraki-mr18/> (The same method works with the MR32's r23-149867:150252-aacharya) Wait for the MR32 to enter the "<Meraki>" prompt and enter: <Meraki> odm serial_num read (Verify that it matches what's on the S/N Sticker on the back!) <Meraki> odm serial_num write Q2XX-XXXX-XXXV <Meraki> odm serial_num read (Verify that the S/N has changed - and the LED start to flash) now to flash the firmware: <Meraki> odm firmware part.safe "http://192.168.1.2/mr32-initramfs.bin" Once OpenWrt booted use sysupgrade to permanently install OpenWrt. To do this: Download the latest sysupgrade.bin file for the MR32 to the device and use sysupgrade *sysupgrade.bin to install it. WARNING: DO NOT DELETE the "storage" ubi volume! To flash later MR32 Firmwares like r25-201804051805-G885d6d78-dhow-rel requires in-circut-i2c tools to access the I2C EEPROM AT24C64 next to the SoC. The idea is pretty much the same as from Step 5 from above: Change the serial number to Q2XXXXXXXXXV (should be around 0x7c), then attach a serial cable, ethernet (but make sure the device can't reach the internet!) hit "s" (the small s!) during boot to enter the root-shell and add the following commands to the /storage/config there: serial_allow_odm true serial_access_enabled true serial_access_check false valid_config true and then hit exit to let it finish booting. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* kernel: package bcm53xx i2c moduleChristian Lamparter2020-09-251-0/+15
| | | | | | | | The BCM5301x SoCs do have i2c. Since this is only being used by the Meraki MR32, this will be packaged as a module. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* bcm53xx: backport uart2 and pcie2 device-nodesChristian Lamparter2020-09-253-1/+57
| | | | | | | | | | These have made their way into -next. This patch also includes the portion of the bcm53xx kernel patch refreshes as the hunks in 302-ARM-dts-BCM5301X-Update-Northstar-pinctrl-binding.patch moved slightly due to the added nodes. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>