aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm4908
Commit message (Collapse)AuthorAgeFilesLines
* bcm4908: add sysupgrade supportRafał Miłecki2021-04-081-0/+213
| | | | | | | | | | | It supports flashing OpenWrt images (bootfs & UBI upgrade) as well as vendor images (whole MTD partition write). Upgrading cferom is unsupported. It requires copying device specific data (like MAC) to target image before flashing. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit a6a0b252baa6c19dfc62611ea910b56527ce4fa5)
* bcm4908: pad firmware image bootfs JFFS2 partition to 8 MiBRafał Miłecki2021-04-081-1/+1
| | | | | | | | | | This way MTD "bootfs" partition will be always 8+ MiB. This should be enough for any custom / future firmware to fit its bootfs (e.g. big kernel) without having to repertition whole flash. That way we can preserve UBI and its erase counters during sysupgrade. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit ca9b1f15c424d68af0f372c37c8eee81b36ee7e1)
* bcm4908: rename bootfs dummy file to the 1-openwrtRafał Miłecki2021-04-081-1/+1
| | | | | | | | | | | | | The purpose of that dummy file is to make CFE work properly with OpenWrt bootfs. CFE for some reason ignores JFFS2 files with ino 0. Rename it to 1-openwrt so: 1. It's consistent with bcm63xx 2. It's OpenWrt specific so sysupgrade can distinguish it from vendor images Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 880c8b44223c9cbce3dd14da78c33676c6f1a8a6)
* bcm4908: enable JFFS2 supportRafał Miłecki2021-04-081-1/+0
| | | | | | | It's needed for accessing JFFS2 bootfs partition. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 180c4635265b4907221a62b3068ac89447cd83d7)
* bcm4908: backport DT patch adding Ethernet MAC addressRafał Miłecki2021-04-081-0/+82
| | | | | | | | This tells OS (Linux) where from MAC should be read (bootloader MTD partition). Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 1cc5eb45d5192b41d97d5da58c34353f4c3240f9)
* bcm4908: backport the latest bcm_sf2 commitsRafał Miłecki2021-04-086-111/+210
| | | | | | | | 1. CFP support for BCM4908 2. Upstream RGMII regs fix Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit a49fd9db0a2bfad8ea9a09f32fadbd3cc7e46205)
* bcm4908: backport DTS patch with Ethernet TX IRQRafał Miłecki2021-04-082-1/+31
| | | | | | | It allows bcm4908_enet Linux driver to work more efficiently. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 13d9904acdd24e002aab3d6c3dd7879826b54008)
* kernel: backport 5.13 mtd partitioning changesRafał Miłecki2021-04-081-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> (cherry picked from commit 3fd0a4222b6efbfbdb560c5b13e899ecda627494)
* kernel: bump 5.4 to 5.4.108Hauke Mehrtens2021-03-278-23/+23
| | | | | | | | | Refreshed all patches. Compile-tested on: x86_64, ath79, lantiq Runtime-tested on: x86_64, ath79 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* bcm4908: backport recent bcm_sf2 changesRafał Miłecki2021-03-177-8/+265
| | | | | | | One 5.12 link fix and 5.13 crossbar support. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit e1b4fd52a8efe1dfcad4f4fbe59f1c35a09be0bd)
* bcm4908: backport recent bcm4908_enet changesRafał Miłecki2021-03-174-0/+431
| | | | | | | This includes 5.12 fix and 5.13 improvements. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 7091e312307f4563d4a7afb5946140120cfa87fa)
* bcm4908: backport first PHY 5.13 patchesRafał Miłecki2021-03-172-3/+43
| | | | | | | | 1. Upstream accepted version of Kconfig change 2. Documentation binding fix Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit d7c8ca4d0b5c18c08e645f010fd0012f54c1c102)
* bcm4908: use accepted 5.13 DTS patchesRafał Miłecki2021-03-1712-50/+238
| | | | | | | | | | | | | Some patches were slightly cleaned up. One things worth mentioning is that adding: phy-mode = "rgmii" broke SF2 driver. It made it access random register breaking switch setup. That's why this commit also adds a quick sf2 fix. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 05dbfe616d551bce1a19d3846c8949c047325624)
* bcm4908: prepare to support TP-Link Archer C2300 V1Rafał Miłecki2021-03-175-0/+239
| | | | | | | | | | | It's a BCM4906 based device (2 CPU cores). It has 512 MiB of RAM, 4 LAN ports, 1 WAN port, 2 USB ports, NAND flash. WiFi unknown at this point. Flashing is possible using CFE only, proper image will be worked on later. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 8d24da14702b8da820bf2e3952d5691f77136018)
* kernel: add the latest mtd patch extending ofpart parserRafał Miłecki2021-03-171-650/+0
| | | | | | | | | | | | | This adds the latest version of ofpart commit. It hopefully 1. Doesn't break compilation 2. Doesn't break partitioning (this time). It's required to implement fixed partitioning with some quirks. It's required by bcm53xx, bcm4908, kirkwood, lantiq and mvebu. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 7a7b2fd809809fbd7045bd3dad4fc896a6fef06f)
* bcm4908: backport Ethernet driver fixes from the 5.12Rafał Miłecki2021-03-174-2/+103
| | | | | | | The most noticeable one is fix for RX stopping on high traffic. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit acbea54bc29a22d8fb171bc9da0f1b16fb0ec233)
* bcm4908: add bcm_sf2 fixes for the 5th GPHYRafał Miłecki2021-03-172-0/+76
| | | | | | | | This allows using the last integrated PHY (and so e.g. WAN port on the ASUS GT-AC5300). Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit ad8b759fd17bd31fdb7a026f247fd6ec81b372d3)
* bcm4908: fix GPIOs support by limiting them to 64Rafał Miłecki2021-02-151-0/+23
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: use DTS patches sent upstreamRafał Miłecki2021-02-155-33/+145
| | | | | | | | There are 2 new patches: 1. Netgear R8000P switch ports 2. Netgear R8000P LEDs Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: add USB packages to the DEFAULT_PACKAGESRafał Miłecki2021-02-151-0/+2
| | | | | | | All known 41 BCM4908 devices have USB ports so it makes sense to include those packages by default. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: fix backport of PMB driverRafał Miłecki2021-02-151-0/+8
| | | | | | | Missing Makefile change was preventing kernel from actually compiling the driver. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: drop ofpart patch dropped from upstream mtd treeRafał Miłecki2021-02-152-0/+651
| | | | | | It stopped ofpart_parser_init() from being called Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: backport "ofpart" mtd parser upstream quirks supportRafał Miłecki2021-02-153-393/+0
| | | | | | | | | | This adds quirks support to the "ofpart" parser. It's required to support fixed partitions that require some extra logic. Right now only BCM4908 binding is supported (BCM4908 requires detecting currently used "firmware" partition). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: refresh patchesAdrian Schmutzler2021-02-132-503/+1534
| | | | | | | | | | Our patch refresh tool creates quite a big diff for these patches, as it does not use rename syntax. Push the refresh separately so it does not pollute the next kernel bump. This is a purely cosmetic change. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm4908: fix handling Ethernet frames of size 1506 - 1514Rafał Miłecki2021-02-121-0/+113
| | | | | | MTU needs to be explicitly set as default value is too low. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: use upstream accepted Ethernet driver patchesRafał Miłecki2021-02-1212-156/+1128
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: update Ethernet driverRafał Miłecki2021-02-104-178/+179
| | | | | | Use the latest version sent upsteram. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: bump 5.4 to 5.4.96John Audia2021-02-081-3/+3
| | | | | | | | | | | | Ran update_kernel.sh in a fresh clone without any existing toolchains. Build system: x86_64 Build-tested: ipq806x/R7800, bcm27xx/bcm2711 Run-tested: ipq806x/R7800 Run-tested [*]: ramips/mt7621 (R6800, DIR-878 A1, EAP235-Wall) Signed-off-by: John Audia <graysky@archlinux.us> Tested-by: Stijn Segers <foss@volatilesystems.org> [*]
* bcm4908: add board.d network setupRafał Miłecki2021-02-081-0/+26
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: add Ethernet driverRafał Miłecki2021-02-085-0/+1020
| | | | | | This commit picks up pending netdev patches. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: sort and wrap build recipesAdrian Schmutzler2021-01-271-12/+16
| | | | | | | | | | This sorts the Build recipes alphabetically, wraps some long lines and moves the DEVICE_VARS to the top like common on several other targets. Cc: Rafał Miłecki <rafal@milecki.pl> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: add parser finding rootfs after CFE bootfsRafał Miłecki2021-01-221-1/+2
| | | | | | | | | | | | | | It's required for BCM4908. It cannot use "bcm-wfi-fw" parser because that one requires *two* JFFS2 partitions which is untested / unsupported on the BCM4908 architecture. With a single JFFS2 partition "bcm-wfi-fw" parser will: 1. Fail to find "vmlinux.lz" as it doesn't follow "1-openwrt" file 2. Create partitions that don't precisely match bootfs layout The new parser is described in details in the MTD_SPLIT_CFE_BOOTFS symbol help message. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: build valid Asus GT-AC5300 firmware imageRafał Miłecki2021-01-221-1/+11
| | | | | | Insert Asus specific tail that is required for image identification. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: workaround NAND controller #WP issueRafał Miłecki2021-01-211-0/+34
| | | | | | | There seems to be a problem with setting #WP. On the other hand ignoring the #WP seems to work. rootfs_data UBI volume seems to persist changes. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: append UBI with rootfs to device imagesRafał Miłecki2021-01-212-3/+29
| | | | | | Also enable UBI kernel support. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: build flashable & bootable firmware imagesRafał Miłecki2021-01-215-0/+23
| | | | | | | | | | | | | BCM4908 bootloader requires firmware with JFFS2 image containing: 1. cferam.000 2. 94908.dtb 3. vmlinux.lz 4. device custom files cferam.000 can be obtained from the bcm63xx-cfe repository. device custom files are stored in images dir. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: set console in the CONFIG_CMDLINERafał Miłecki2021-01-211-1/+1
| | | | | | | | procd doesn't work with just serial specified in the DT (using chosen & stdout-path). It requires tty device to be explicitly specified in the cmdline. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: add DTS patches for USB PHY and partitionsRafał Miłecki2021-01-202-0/+201
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: use backported brcmstb soc stubs patchRafał Miłecki2021-01-201-8/+21
| | | | | | Final version differs slightly - uses IS_ENABLED() Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: use backported switch & PMB DTS patchesRafał Miłecki2021-01-202-10/+8
| | | | | | Final versions differ slightly from what was used initially. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: add pending mtd patches for BCM4908 partitioningRafał Miłecki2021-01-203-0/+393
| | | | | | | BCM4908 can have multiple firmware partitions. MTD needs to detect which one is currently used. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: prepend kernel images with a custom headerRafał Miłecki2021-01-151-2/+7
| | | | | | It's required for CFE to accept kernel. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: backport brcmstb USB PHY driver changesRafał Miłecki2021-01-1424-0/+3746
| | | | | | This includes BCM4908 support Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: backport BCM4908 integrated switch initial supportRafał Miłecki2021-01-134-0/+225
| | | | | | | Upstream driver supports bridging ports. There is no support for crossbar setup or CPU port(s) yet. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: backport PMB (Power Management Bus) driverRafał Miłecki2021-01-133-0/+502
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: add simple PCIe reset controller supportRafał Miłecki2021-01-121-0/+40
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: backport upstream DTS patchesRafał Miłecki2021-01-129-0/+501
| | | | | | | | | | 1. Netgear R8000P DTS file 2. NAND fix 3. PCIe reset block 4. Integrated switch 5. PMB block Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: initial work on the Broadcom BCM4908 targetRafał Miłecki2021-01-127-0/+623
BCM4906, BCM4908 and BCM49408 are SoCs with 64 bit ARMv8 B53 CPUs. Upstream Linux is slowly getting support for that SoCs family so it makes sense to add target for it. This prepares initial support for: 1. Asus GT-AC5300 BCM4908 based device (4 CPUs) with 1024 MiB RAM, NAND, 8 LAN ports. 2. Netgear R8000P BCM4906 based device (2 CPUs) with 512 MiB RAM, NAND, 4 LAN ports. Flashing info will come later as we learn how to generate proper images. It isn't usable yet (it only produces a bootable kernel) so "source-only" is used. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>