aboutsummaryrefslogtreecommitdiff
path: root/target/linux/rockchip/armv8/base-files/etc
Commit message (Collapse)AuthorAge
* rockchip: set network IRQ affinity to fast CPU coresMichel Lespinasse2025-03-15
| | | | | | | | | | | The nanopi R6S, R6C and nanopc T6 platforms are based on rk3588(s) SoC, which has fast and slow CPU cores. Set up network interrupt affinity to be on the fast CPU cores by default. This is similar to the way this was already configured on nanopi R4S. Signed-off-by: Michel Lespinasse <michel@lespinasse.org> Link: https://github.com/openwrt/openwrt/pull/17638 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* rockchip: Add support for RK3566 FriendlyElec NanoPi R3SKevin Zhang2024-10-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the FriendlyElec NanoPi R3S. CPU: Rockchip RK3566, Quad-core Cortex-A55 RAM: 2GB LPDDR4X Ethernet: GMAC RTL8211F GbE, PCIe R8111H GbE USB3.0 Host: Type-A x1 Storage: MicroSD Slot x 1, and optional on-board 32GB eMMC Debug Serial Port: 3.3V TTL, 3-pin 2.54mm pitch connector, 1500000 bauds LED: LED x 3 RTC: One low-power RTC, supports backup battery input Both GbE controllers are working (WAN eth0, LAN eth1). Appropriate LAN/WAN interface assignments and MAC address generation. All three LEDs are working. USB appears to be working and has been tested with mass storage. Installation - microSD: -Uncompress the OpenWRT sysupgrade.img.gz -Write image to microSD card using dd or similar tool Installation - eMMC: -Boot from microSD -Uncompress the OpenWRT sysupgrade.img.gz -Flash to eMMC : dd if=x.img of=/dev/mmcblk0 -sync -Remove microSD card -Reboot Signed-off-by: Kevin Zhang <kevin@kevinzhang.me> Link: https://github.com/openwrt/openwrt/pull/16738 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* rockchip: add ArmSoM Sige7 supportTianling Shen2024-09-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | This board is also as known as Bananapi BPi-M7. Hardware -------- RockChip RK3588 ARM64 (8 cores) 8/16/32GB LPDDR4/LPDDR4x RAM 2x 2500 Base-T (PCIe, rtl8125b) 2 LEDs (RED / GREEN) 16GB/32GB/64GB/128GB eMMC on-board Micro-SD Slot USB 2.0 Port USB 3.0 Port M.2 M-Key 40-Pin Header USB PD 2.0 9/12/15V Power Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card or internal eMMC using dd. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org> Link: https://github.com/openwrt/openwrt/pull/16462 Signed-off-by: Nick Hainke <vincent@systemli.org>
* rockchip: rework LED configurations for the NanoPi R6C/R6SAntonio Flores2024-09-22
| | | | | | | | | | | This commits fixes the LED on the NanoPi R6 series after changes in the DTS https://lore.kernel.org/all/20240612205056.397204-4-seb-dev@mail.de Reported by Github user: gSpotx2f Signed-off-by: Antonio Flores <antflores627@gmail.com> Link: https://github.com/openwrt/openwrt/pull/16275 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* rockchip: add FriendlyElec NanoPi R6CAntonio Flores2024-09-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware Spec -SoC: Rockchip RK3588S CPU: Quad-core ARM Cortex-A76(up to 2.4GHz) and quad-core Cortex-A55 CPU (up to 1.8GHz) GPU: Mali-G610 MP4, compatible with OpenGLES 1.1, 2.0, and 3.2, OpenCL up to 2.2 and Vulkan1.2 VPU: 8K@60fps H.265 and VP9 decoder, 8K@30fps H.264 decoder, 4K@60fps AV1 decoder, 8K@30fps H.264 and H.265 NPU: 6TOPs, supports INT4/INT8/INT16/FP16 -RAM: 64-bit 4GB/8GB LPDDR4X at 2133MHz -Flash: 32GB/None eMMC, at HS400 mode -Ethernet: one Native Gigabit Ethernet, and one PCIe 2.5G Ethernet -USB: one USB 3.0 Type-A and one USB 2.0 Type-A -PCIe: one M.2 Key M connector with PCIe 2.1 x1 -HDMI: compatible with HDMI2.1, HDMI2.0, and HDMI1.4 operation support up to 7680x4320@60Hz Support RGB/YUV(up to 10bit) format -microSD: support up to SDR104 mode -GPIO: 30-pin 2.54mm header connector up to 1x SPI, 3x UARTs, 3x I2Cs, 2x SPDIFs, 1x I2Ss, 3x PWMs, 20x GPIOs -Debug: UART via 3-Pin 2.54mm header, or on-board USB-C to UART -LEDs: 4 x GPIO Controlled LED (SYS, WAN, LAN, LED1) -others: 2 Pin 1.27/1.25mm RTC battery input connector for low power RTC IC HYM8563TS MASK button for eMMC update one user button -Power supply: USB-C, support PD, 5V/9V/12V/20V input -PCB: 8 Layer, 62x90x1.6mm -Ambient Operating Temperature: 0℃ to 70℃ Installation: Uncompress the OpenWrt sysupgrade and write image to the SD card using dd (dd if=*.img of=/*) eMMC Installation: Boot from the SD card Uncompress the OpenWrt sysupgrade image fash to eMMC : dd if=*.img of=/dev/mmcblk1 sync remove SD card reboot Signed-off-by: Antonio Flores <antflores627@gmail.com> Link: https://github.com/openwrt/openwrt/pull/16275 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* rockchip: add support for Radxa ROCK 3BFUKAUMI Naoki2024-08-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Radxa ROCK 3B is a Pico-ITX form factor SBC[1] using the Rockchip RK3568(J). Hardware -------- - Rockchip RK3568(J) SoC - Quad A55 CPU - Mali-G52 GPU - 1 TOPS @ INT8 NPU - 2GB/4GB/8GB LPDDR4 RAM - eMMC connector - Micro SD Card slot - NVMe SSD through the M.2 M Key (2-lane PCIe 3.0) - SPI Flash for bootloader - 2x Gigabit ethernet port (one supports PoE with add-on PoE HAT) - 1x M.2 E Key socket with SDIO, UART and USB interfaces - 1x M.2 B Key socket with PCIe, SATA, and USB interfaces - 1x SIM card socket - 1x USB 3.0 Type-A HOST port - 1x USB 3.0 Type-A OTG port - 2x USB 2.0 Type-A HOST ports - 40 Pin GPIO header [1] https://radxa.com/products/rock3/3b Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card or internal eMMC using dd. Signed-off-by: FUKAUMI Naoki <naoki@radxa.com> Link: https://github.com/openwrt/openwrt/pull/16185 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* rockchip: add support for nanopc t6xiaobo tian2024-08-24
| | | | | | | | | | | | | | | | SoC: Rockchip RK3588 CPU: Quad-core ARM Cortex-A76(up to 2.4GHz) and quad-core Cortex-A55 CPU (up to 1.8GHz) GPU: Mali-G610 MP4, compatible with OpenGLES 1.1, 2.0, and 3.2, OpenCL up to 2.2 and Vulkan1.2 VPU: 8K@60fps H.265 and VP9 decoder, 8K@30fps H.264 decoder, 4K@60fps AV1 decoder, 8K@30fps H.264 and H.265 encoder NPU: 6TOPs, supports INT4/INT8/INT16/FP16 RAM: 64-bit 4GB/8GB/16GB LPDDR4X at 2133MHz Flash: 32GB/64GB/256GB eMMC, at HS400 mode microSD: support up to SDR104 mode Ethernet: 2x PCIe 2.5G Ethernet Signed-off-by: xiaobo tian <peterwillcn@gmail.com> Link: https://github.com/openwrt/openwrt/pull/16158 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* rockchip: add led and network config to nanopi r6sBen Whitten2024-08-11
| | | | | | | | | We need to configure the led and network config for this board on start as per the others Signed-off-by: Ben Whitten <ben.whitten@gmail.com> Link: https://github.com/openwrt/openwrt/pull/15607 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* rockchip: add support for Radxa ROCK Pi E v3.0FUKAUMI Naoki2024-07-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Radxa ROCK Pi E v3.0 is a compact networking SBC[1] using the Rockchip RK3328 SoC. Hardware -------- - Rockchip RK3328 SoC - Quad A53 CPU - 512MB/1GB/2GB DDR4 RAM - 4/8/16/32GB eMMC - Micro SD Card slot - WiFi 4 and BT 4, or WiFi 5 and BT 5 (not supported yet) - 1x 1000M Ethernet with PoE support (additional PoE HAT required) - 1x 100M Ethernet - 1x USB 3.0 Type-A port (Host) - 1x 4-ring 3.5mm headphone jack - 40 Pin GPIO header [1] https://radxa.com/products/rockpi/pie Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card or internal eMMC using dd. Signed-off-by: FUKAUMI Naoki <naoki@radxa.com> Link: https://github.com/openwrt/openwrt/pull/15984 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* rockchip: add Bananapi-R2 Pro board supportAntonio Flores2024-05-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware spec: - Rockchip RK3568 Quad-core ARM Cortex-A55 CPU 2GHz - GPU Mali-G52 1-Core-2EE OpenGL ES3.2 Vu1kn 1.1 OpenCL 2.0 - Memory2G DDR3 SDRAM (option 4G) - Storage Onboard 16GB eMMC Flash, Micro SD-Card slot, SATA 3.0 Port,SPI flash - Network 5 x 10/100/1000 Mbit/s Ethernet MT7531 - Display 1 HDMI port, 2 DSI interface(1 DSI can change to LVDS by software) - Camera 1 CSI camera interface - Audio Output HDMI & I2S & Speaker & Headphone - USB port USB 3.0 PORT (x2), micro USB OTG (x1) - PCIE 1 mini pcie interface & 1 M.2 key-e interface - Remote IR Receiver (x1) - GPIO 40 Pin Header : GPIO (x28) and Power (+5V, +3.3V and GND). - Switches Reset button, Power button, U-boot button - LED Power Status - Power Source 12 volt 2A via DC Power Installation: Uncompress the OpenWrt sysupgrade and write image to the SD card using dd (dd if=*.img of=/*) Boot from the SD card 1-hold down the MaskRom button 2-Connect DC power 3-Wait 5 seconds, release the button. eMMC Installation: 1-Uncompress the OpenWrt sysupgrade image 2-fash to eMMC dd if=openwrt-rockchip-armv8-sinovoip_bpi-r2-pro-squashfs-sysupgrade.img of=/dev/mmcblk1 sync 3-remove SD card reboot Signed-off-by: Antonio Flores <antflores627@gmail.com>
* rockchip: add Radxa E25 board supportMarius Durbaca2024-03-23
| | | | | | | | | | | | | | | | | | | | | | Radxa E25 is a network application carrier board for the Radxa CM3 Industrial (CM3I) SoM, which is based on the Rockchip RK3568 SoC. It has the following features: - MicroSD card socket, on board eMMC flash - 2x 2.5GbE Realtek RTL8125B Ethernet transceiver - 1x USB Type-C port (Power and Serial console) - 1x USB 3.0 OTG port - mini PCIe socket (USB or PCIe) - ngff PCIe socket (USB or SATA) - 1x User LED and 16x RGB LEDs - 26-pin expansion header Installation: Uncompress the OpenWrt sysupgrade and write it to a micro SD card or internal eMMC using dd. Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
* rockchip: remove LED label hackTianling Shen2024-02-22
| | | | | | | Now we support parsing the color and function properties. Ref: e814acc59948 ("base-files: support parse DT LED color and function") Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* rockchip: add Radxa CM3 IO board supportMarius Durbaca2024-02-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- RockChip RK3566 ARM64 (4 cores) - up to 8GB LPDDR4X - 1x HDMI, - 2x MIPI DSI - 2x MIPI CSI2 - 1x eDP - 1x PCIe card - 2x SATA - 2x USB 2.0 Host - 1x USB 3.0 - 1x USB 2.0 OTG - 10/100/1000 Base-T - microSD slot - 40-pin GPIO expansion header - 12V DC Radxa CM3 needs to mount on top of this IO board in order to create complete Radxa CM3 IO board platform. Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card or internal eMMC using dd. Reviewed-by: Tianling Shen <cnsztl@immortalwrt.org> Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
* rockchip: add NanoPi R4S Enterprise Edition buildTianling Shen2024-02-19
| | | | | | | | | | | FriendlyElec renamed the NanoPi R4S board with EEPROM (mac address) to "enterprise" edition, and it was added as a "new" board in upstream kernel. This patch switched to use that upstreamed dts and removed local EEPROM patch. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* rockchip: add NanoPi R2C Plus supportTianling Shen2024-02-19
| | | | | | | | | | | | The NanoPi R2C Plus is a small variant of NanoPi R2C with a on-board eMMC flash (8G) included. Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card or internal eMMC using dd. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* rockchip: make SMP affinity of RTL8152 on XHCI more robustFurong Xu2023-12-15
| | | | | | | XHCI bus numbers are assigned dynamically, it may varies among boards, match the device irq name with regexp, drop the hardcoded name. Signed-off-by: Furong Xu <xfr@outlook.com>
* rockchip: fix eth1 irq affinityFurong Xu2023-12-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NanoPi R2S and some other RK3328 boards use RTL8152 as eth1, which is connected to xhci-hcd:usb1 but not xhci-hcd:usb3 |:~# cat /proc/interrupts | CPU0 CPU1 CPU2 CPU3 | 11: 53449 171813 129595 87823 GICv2 30 Level arch_timer | 18: 0 0 0 0 GICv2 94 Level rockchip_usb2phy | 19: 0 0 0 0 GICv2 32 Level ff1f0000.dma-controller | 20: 0 0 0 0 GICv2 33 Level ff1f0000.dma-controller | 21: 4 0 0 0 GICv2 89 Level ttyS2 | 22: 0 0 0 0 GICv2 43 Level ff350800.iommu | 23: 0 0 0 0 GICv2 106 Level ff360480.iommu | 24: 0 1417932 0 0 GICv2 56 Level eth0 | 25: 334 0 0 4422194 GICv2 99 Level xhci-hcd:usb1 | 26: 0 0 0 0 GICv2 48 Level ehci_hcd:usb3 | 27: 0 0 0 0 GICv2 49 Level ohci_hcd:usb2 | 28: 3285 0 0 0 GICv2 69 Level ff160000.i2c | 29: 0 0 0 0 rockchip_gpio_irq 24 Level rk805 | 30: 0 0 0 0 rk805 0 Edge rk805_pwrkey_fall | 35: 0 0 0 0 rk805 5 Edge RTC alarm | 37: 0 0 0 0 rk805 7 Edge rk805_pwrkey_rise | 38: 0 0 0 0 GICv2 90 Level rockchip_thermal | 39: 0 0 0 0 GICv2 72 Edge ff1a0000.watchdog | 40: 2601 0 0 0 GICv2 44 Level dw-mci | 41: 0 0 0 0 rockchip_gpio_irq 0 Edge keys |IPI0: 1559 1208 893 1131 Rescheduling interrupts |[...] Fix 40-net-smp-affinity to match the correct device irq name. Signed-off-by: Furong Xu <xfr@outlook.com>
* rockchip: add NanoPi R5C supportTianling Shen2023-11-26
| | | | | | | | | | | | | | | | | | | | | Hardware -------- RockChip RK3568 ARM64 (4 cores) 1GB or 4GB LPDDR4X RAM 2x 2500 Base-T 4 LEDs (LAN / WAN / WIFI / POWER) 1 Button (Reset) 8GB or 32GB eMMC on-board Micro-SD Slot M.2 Slot 2x USB 3.0 Port Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card or internal eMMC using dd. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* rockchip: add NanoPi R5S supportTianling Shen2023-11-26
| | | | | | | | | | | | | | | | | | | | | | Hardware -------- RockChip RK3568 ARM64 (4 cores) 2GB or 4GB LPDDR4X RAM 1x 1000 Base-T 2x 2500 Base-T 4 LEDs (LAN1 / LAN2 / WAN / POWER) 8GB eMMC on-board Micro-SD Slot M.2 Slot 2x USB 3.0 Port Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card or internal eMMC using dd. Tested-by: Packet Please <pktpls@systemli.org> Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* rockchip: fix setup network config for nanopi r2cTianling Shen2023-06-17
| | | | | | | | Without it the WAN port won't be initialized properly. Fixes: 8f578c15b314 ("rockchip: add NanoPi R2C support") Reviewed-by: Robert Marko <robimarko@gmail.com> Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* rockchip: add Orange Pi R1 Plus LTS supportTianling Shen2023-05-31
| | | | | | | | | The OrangePi R1 Plus LTS is a minor variant of OrangePi R1 Plus with the on-board NIC chip changed from rtl8211e to yt8531c, and otherwise identical to OrangePi R1 Plus. Tested-by: Volkan Yetik <no3iverson@gmail.com> Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* rockchip: add Orange Pi R1 Plus supportTianling Shen2023-05-31
| | | | | | | | | | | | | | Orange Pi R1 Plus is a Rockchip RK3328 based SBC by Xunlong. This device is similar to the NanoPi R2S, and has a 16MB SPI NOR (mx25l12805d). The reset button is changed to directly reset the power supply, another detail is that both network ports have independent MAC addresses. Note: booting from SPI is currently unsupported, you have to install the image on a SD card. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* rockchip: add NanoPi R2C supportTianling Shen2023-05-18
| | | | | | | The NanoPi R2C is a minor variant of NanoPi R2S with the on-board NIC chip changed from rtl8211e to yt8521s, and otherwise identical to R2S. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* sunxi: ensure NanoPi R1 has unique MAC addressJan-Niklas Burfeind2022-12-25
| | | | | | | | | | | | | | | | | | | | Ensure the MAC address for all NanoPi R1 boards is assigned uniquely for each board. The vendor ships the device in two variants; one with and one without eMMC; but both without static mac-addresses. In order to assign both board types unique MAC addresses, fall back on the same method used for the NanoPi R2S and R4S in case the EEPROM chip is not present by generating the board MAC from the SD card CID. [0] https://wiki.friendlyelec.com/wiki/index.php/NanoPi_R1#Hardware_Spec Similar too and based on: commit b5675f500daf ("rockchip: ensure NanoPi R4S has unique MAC address") Co-authored-by: David Bauer <mail@david-bauer.net> Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me>
* rockchip: ensure NanoPi R4S has unique MAC addressDavid Bauer2022-09-10
| | | | | | | | | | | | | | | | | Ensure the MAC address for all NanoPi R4S boards is assigned unique for each board. FriendlyElec ship two versions of the R4S: The standard as well as the enterprise edition with only the enterprise edition including the EEPROM chip that stores the unique MAC address. In order to assign both board types unique MAC addresses, fall back on the same method used for the NanoPi R2S in case the EEPROM chip is not present by generating the board MAC from the SD card CID. [0] https://wiki.friendlyelec.com/wiki/index.php/NanoPi_R4S#Differences_Between_R4S_Standard_Version_.26_R4S_Enterprise_Version Signed-off-by: David Bauer <mail@david-bauer.net>
* rockchip: reliably distribute net interruptsRonny Kotzschmar2022-07-07
| | | | | | | | | On the NanoPI R4S it takes an average of 3..5 seconds for the network devices to appear in '/proc/interrupts'. Wait up to 10 seconds to ensure that the distribution of the interrupts really happens. Signed-off-by: Ronny Kotzschmar <ro.ok@me.com>
* rockchip: add NanoPi R4S supportTianling Shen2021-06-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- RockChip RK3399 ARM64 (6 cores) 4GB LPDDR4 RAM 2x 1000 Base-T 3 LEDs (LAN / WAN / SYS) 1 Button (Reset) Micro-SD slot 2x USB 3.0 Port Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card using dd. ===================================== NOTICE FOR USERS WHO USE 1GB VERSION: BY NOW IT IS NOT SUPPORTED ==================================== [initialed target] Co-developed-by: Marty Jones <mj8263788@gmail.com> Signed-off-by: Marty Jones <mj8263788@gmail.com> [fixed bootscript] Co-developed-by: Jayantajit Gogoi <jayanta.gogoi525@gmail.com> Signed-off-by: Jayantajit Gogoi <jayanta.gogoi525@gmail.com> Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* treewide: remove "+" sign for increment with macaddr_addAdrian Schmutzler2021-06-05
| | | | | | | | | | | | Many people appear to use an unneeded "+" prefix for the increment when calculating a MAC address with macaddr_add. Since this is not required and used inconsistently [*], just remove it. [*] As a funny side-fact, copy-pasting has led to almost all hotplug.d files using the "+", while nearly all of the 02_network files are not using it. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* rockchip: use alternative CID pathDavid Bauer2021-04-18
| | | | | | | | | | Use an alternative path to access the CID of the SD card in MMC0, used for the generation of MAC addresses. With Kernel 5.10, the device name of the MMC controller changed, breaking MAC address generation. The new path is compatible with Kernel 5.4 as well as Kernel 5.10. Signed-off-by: David Bauer <mail@david-bauer.net>
* treewide: remove execute bit and shebang from board.d filesAdrian Schmutzler2021-03-06
| | | | | | | | | | | | | | | | 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>
* rockchip: use stable MAC-address for NanoPi R2SDavid Bauer2021-01-18
| | | | | | | | | | | | | | | | The NanoPi R2S does not have a board specific MAC address written inside e.g. an EEPROM, hence why it is randomly generated on first boot. The issue with that however is the lack of a driver for the PRNG. It often results to the same MAC address used on multiple boards by default, as urngd is not active at this early stage resulting in low available entropy. There is however a semi-unique identifier available to us, which is the CID of the used SD card. It is unique to each SD card, hence we can use it to generate the MAC address used for LAN and WAN. Signed-off-by: David Bauer <mail@david-bauer.net>
* rockchip: remove useless echo in 40-net-smp-affinityAdrian Schmutzler2020-08-17
| | | | | | The command in the $() brackets will already provide the same output. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* rockchip: distribute net interruptsDavid Bauer2020-07-28
| | | | | | | | | | | | This adds a hotplug script for distributing interrupts of eth0 and eth1 across different cores. Otherwise the forwarding performance between eth0 and eth1 is severely affected. The existing SMP distribution mechanic in OpenWrt can't be used here, as the actual device IRQ has to be moved to dedicated cores. In case of eth1, this is in fact the USB3 controller. Signed-off-by: David Bauer <mail@david-bauer.net>
* rockchip: add NanoPi R2S supportDavid Bauer2020-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- RockChip RK3328 ARM64 (4 cores) 1GB DDR4 RAM 2x 1000 Base-T 3 LEDs (LAN / WAN / SYS) 1 Button (Reset) Micro-SD slot USB 2.0 Port Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card using dd. MAC-address ----------- The vendor code supports reading a MAC address from an EEPROM connected via i2c0 of the SoC. The EEPROM (address 0x51) should contain the MAC address in binary at offset 0xfa. However, my two units didn't come with such an EEPROM soldered on. The EEPROM should be placed between the SoC and the GPIO pins on the board. (U10) Generating rendom MAC addresses works around this issue. Otherwise, all boards running the same image have identical MAC addresses. Signed-off-by: David Bauer <mail@david-bauer.net>
* rockchip: add support for Pine64 RockPro64Tobias Mädel2020-04-20
This adds the new rockchip target and support for RockPro64 RK3399 Flash: 16 MiB SPI NOR RAM: 2 GiB/4 GiB LPDDR4 SoC: RK3399 USB: 2x USB 2.0, 1x USB 3.0, 1x USB-C Ethernet: 1x GbE PCIe: PCIe 2.0, 4 lanes Storage: eMMC or SD card Optional SDIO wifi/bt module The Pine64 RockPro64 is a single-board-computer with a 4x PCIe connector, 6 ARM64 cores (4 little, 2 big), plenty of RAM and storage. By default the single Gigabit-Ethernet port is configured as the LAN port. Installation of the firware is possible by dd'ing the image to an SD card or the eMMC flash. Serial: 3v3 1500000 8n1 U-boot is build from the mainline tree and integrated into the images. Required ATF to build u-boot is downloaded from a CI build bot. Signed-off-by: Tobias Mädel <t.maedel@alfeld.de> Tested-by: Tobias Schramm <t.schramm@manjaro.org>