Commit Graph

50 Commits

Author SHA1 Message Date
Adrian Schmutzler
76ee3e1225 mvebu: move upstreamed DTS files (ESPRESSObin) to files-5.4
Since kernel 5.5-rc1 [1], there are upstreamed DTS files related to ESPRESSObin
variants. Move these to files-5.4.

This helps if you want to use a newer kernel version than used
in OpenWrt 21.02 (= LTS kernel 5.4), you would end up with duplicate files
(one outdated, one up to date from newer Linux versions).

Fixes:
Error: arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7.dts:19.1-7:
Label or path ports not found
FATAL ERROR: Syntax error parsing input tree

[1] 447b878935

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 7be8ab4f7b)
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
[reword commit subject and commit description]
2022-07-03 20:01:47 +02:00
Daniel Golle
47d82f0710
mvebu: enable Aquantia phy driver for Puzzle devices
While on Linux 5.10 this fixes Ethernet link status on all ports and
makes 2.5G ports usable in 2.5G and 1G full-duplex mode, when using
Linux 5.4 and backported Aquantia phy patches, only 1G mode works on
the 2.5G ports and link speed and duplex are not reported correctly
from the phy in case of 2.5G.
The reasons are probably trivial, but hard to find. As having all
ports work at least in 1G speed instead of having them not work at
all is still better, push this anyway for now.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit f81a06408e)
2022-01-01 22:30:09 +00:00
Daniel Golle
a03840a1a9
mvebu: puzzle-m901: add LEDs, fan and reset button
Wire up MCU driver for LEDs, fan and temperature sensor, and add
GPIO reset button just like on the M902 also on the Puzzle M901.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 3684b494dd)
2022-01-01 22:29:48 +00:00
Daniel Golle
280bb7c10c
mvebu: puzzle-m902: add GPIO reset button
Add reset button to device tree so it has the function expected from
usual OpenWrt devices.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit ddad936fc6)
2022-01-01 22:29:43 +00:00
Daniel Golle
99a1e88297
mvebu: puzzle-m902: add driver for MCU driving LEDs, fan and buzzer
Backport MFD driver for communicating with the on-board MCU found on
IEI World Puzzle appliances.
Improve the driver to support multiple LEDs, apply a default state and
let MCU take care of blinking if timing is within supported range.
Wire up LEDs and fan for Puzzle M902 in device tree.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit f0c0b18234
with commit 962c585580 squashed)
2022-01-01 22:29:33 +00:00
Ian Chang
c43a5921fa mvebu: add support for iEi Puzzle-M901/Puzzle-M902
Hardware specification
 ----------------------
 * CN9130 SoC, Quad-core ARMv8 Cortex-72 @ 2200 MHz
 * 4 GB DDR
 * 4 GB eMMC
 * mmcblk0
 - mmcblk0p1    64M  kernel_1
 - mmcblk0p2    64M  kernel_2
 - mmcblk0p3   512M  rootfs_1
 - mmcblk0p4   512M  rootfs_2
 - mmcblk0p5   512M  Reserved
 - mmcblk0p6    64M  Reserved
 - mmcblk0p7   1.8G  rootfs_data

 * 4 MB (SPI Flash)
 * 6 x 2.5 Gigabit  ports (Puzzle-M901)
 - External PHY with 6 ports (AQR112R)

 * 6 x 2.5 Gigabit ports (Puzzle-M902)
 - External PHY with 6 ports (AQR112R)
   3 x 10 Gigabit ports (Puzzle-M902)
 - External PHY with 3 ports (AQR113R)

 * 4 x Front panel LED
 * 1 x USB 3.0
 * Reset button on Rear panel
 * UART (115200 8N1,header on PCB)

 Flash instructions:
    The original firmware is based on OpenWrt.
    Flash firmware using LuCI and CLI

Signed-off-by: Ian Chang <ianchang@ieiworld.com>
(cherry picked from commit 70c75965a9)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-10-14 13:09:57 +01:00
Sven Eckelmann
eb98c88f66 mvebu: Fix mac addresses for GL.iNet GL-MV1000
The original GL.iNet firmware has two different mac addresses in the
factory/art partition. The first one is for the WAN interface only and the
second one is for both lan0 and lan1.

But the original submission for OpenWrt didn't initialize the mac
addresses of the LAN ports for the DSA device at all. The ethernet mac
address was then used for all DSA ports.

Fixes: 050c24f05c ("mvebu: add support for GL.iNet GL-MV1000")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
(cherry picked from commit c20ac84803)
2021-03-29 21:41:16 +02:00
Sven Eckelmann
7bb8aded10 mvebu: Add button support for GL.iNet GL-MV1000
The original patch to support this device advertised support for the reset
button and the "switch" in the commit message. But neither were actually
integrated in the device tree or documented anywere.

The button itself is now used to trigger a reset (as described in the
official GL.iNet documentation). The switch itself is registered as BTN_0
like other devices from GL.iNet in ath79.

Fixes: 050c24f05c ("mvebu: add support for GL.iNet GL-MV1000")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
(cherry picked from commit 01b911a938)
2021-03-29 21:38:24 +02:00
Tad Davanzo
5a3b1e5b57 mvebu: venom resize kernel to 6MB
venom has a 3MB kernel partition as specified by the DTS.
3MB is not sufficient for building with many kernel modules or newer
kernel versions.

venom uboot however as set from factory will load up to 6MB.
This can be observed by looking a uboot log:
	NAND read: device 0 offset 0x900000, size 0x600000
	6291456 bytes read: OK
and from uboot environment variables:
	$ fw_printenv | grep "priKernSize";
	priKernSize=0x0600000

Resize the root partitions from 120MB to 117MB to let kernel expand
into it another 3MB.
And set kernel target size to 6MB.

Lastly set the kernel-size-migration compatibility version on venom to
prevent sysupgrading without first reinstalling from a factory image.

Signed-off-by: Tad Davanzo <tad@spotco.us>
(cherry picked from commit 15309f5133)
2021-03-29 21:17:32 +02:00
Jeff Collins
db6ff390b0 mvebu: add LED support for GL.iNet GL-MV1000
This patch enables LED support for the GL.iNet GL-MV1000

Signed-off-by: Jeff Collins <jeffcollins9292@gmail.com>
[add SPDX identifier on new file, add aliases, minor cosmetic issues]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 6e0c780eb3)
2021-03-22 21:05:41 +01:00
Daniel González Cabanelas
24b910dca2 mvebu: LS421DE: fix the thermal zones
The thermal zones kernel documentation is misleading, we cannot use more
than one sensor in a thermal zone node.

Furthermore the drivetemp driver for some reason it only catches one
sensor from the hard drives array (the first available).

In the Buffalo Linkstation LS421DE board there is also a sensor at the
ethernet phy chip that can also be monitored. Very useful to stop the fan
when there are no hard drives in the bays.

(It might be also possible to add the CPU sensor, but it requires kernel
patching for registering the sensor via device tree, using the function:
devm_thermal_zone_of_sensor_register)

Fix the thermal zones to use only one sensor per node and add the ethernet
phy sensor. Also adjust the hdd temperatures to be more conservative for
a mechanical hard drive.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
2021-01-30 01:03:00 +01:00
Daniel González Cabanelas
b8362c20e7 mvebu: LS421DE: use the RTC as a wakeup source
The Buffalo Linkstation LS421DE comes with a Ricoh RS5C372A real time
clock. This RTC has the INTRA pin connected to the power management
circuit, allowing to wake up the device from the power off state when an
alarm is scheduled.

Add the "wakeup-source" property in the RTC dts node to allow the use
of the alarm.

Example of use, the device is powered off and it comes to life after 5
minutes:
echo $(expr $(date '+%s') + 60 * 5) > /sys/class/rtc/rtc0/wakealarm
poweroff

This feature isn't available in the stock firmware.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
2020-12-22 18:59:10 +01:00
Daniel González Cabanelas
3064651bf7 mvebu: LS421DE: fix low performance issue
The Buffalo Linkstation LS421DE isn't able to enable the Level 2 cache
(AKA Aurora cache). As of result of this, the throughput is about half of
the expected, e.g when doing network data transfers.

Fix it by adding the broken-idle property in the coherency fabric node.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
2020-12-22 18:59:10 +01:00
Vladimir Vid
c0af4a0ca2 mvebu: add initial support for Globalscale ESPRESSObin-Ultra
This patch adds support for Globalscale ESPRESSObin-Ultra. Device uses
the same Armada-3720 SoC with extended hardware support.

- SoC: Armada-3720
- RAM: 1 GB DDR4
- Flash: 4MB SPI NOR (mx25u3235f) + 8 GB eMMC
- Ethernet: Topaz 6341 88e6341 (4x GB LAN + 1x WAN with 30W PoE)
- WiFI: 2x2 802.11ac Wi-Fi marvell (88w8997 PCIe+USB)
- 1x USB 2.0 port
- 1x USB 3.0 port
- 1x microSD slot
- 1x mini-PCIe slot (USB [with nano-sim slot])
- 1x mini-USB debug UART
- 1x RTC Clock and battery
- 1x reset button
- 1x power button
- 4x LED (RGBY)
- Optional 1x M.2 2280 slot

** Installation **

Copy dtb from build_dir to bin/ and run tftpserver there:
$ cp ./build_dir/target-aarch64_cortex-a53_musl/linux-mvebu_cortexa53/
linux-5.4.65/arch/arm64/boot/dts/marvell/armada-3720-espressobin-ultra.dtb
bin/targets/mvebu/cortexa53/
$ in.tftpd -L -s bin/targets/mvebu/cortexa53/

Connect to the device UART via microUSB port on the back side and power on the device.

Power on the device and hit any key to stop the autoboot.

Set serverip (host IP) and ipaddr (any free IP address on the same subnet), e.g:
$ setenv serverip 192.168.1.10 # Host
$ setenv ipaddr 192.168.1.15 # Device

Ping server to confirm network is working:
$ ping $serverip
Using neta@30000 device
host 192.168.1.15 is alive

Tftpboot the firmware:
$ tftpboot $kernel_addr_r openwrt-mvebu-cortexa53-globalscale_espressobin-ultra-initramfs-kernel.bin
$ tftpboot $fdt_addr_r armada-3720-espressobin-ultra.dtb

Set the console and boot the image:
$ setenv bootargs $console
$ booti $kernel_addr_r - $fdt_addr_r

Once the initramfs is booted, transfer openwrt-mvebu-cortexa53-globalscale_espressobin-ultra-squashfs-sdcard.img.gz
to /tmp dir on the device.

Gunzip and dd the image:
$ gunzip /tmp/openwrt-mvebu-cortexa53-globalscale_espressobin-ultra-squashfs-sdcard.img.gz
$ dd if=/tmp/openwrt-mvebu-cortexa53-globalscale_espressobin-ultra-squashfs-sdcard.img of=/dev/mmcblk0 && sync

Reboot the device.

Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
2020-11-23 22:53:15 +01:00
Adrian Schmutzler
2658008a2a treewide: remove default-state off for LEDs
default-state = "off" is default for LEDs, no need to specify it
explicitly.

https://www.kernel.org/doc/Documentation/devicetree/bindings/leds/common.yaml

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-11-16 13:43:39 +01:00
Daniel González Cabanelas
4e885dd90a mvebu: LS421DE: improve the HDD leds
Improve the HDD LEDs used for disk activity:
 - Use the trigger activity per ata channel

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
2020-11-16 13:43:39 +01:00
Adrian Schmutzler
0cfdc7d446 target: update SPDX license names
SPDX moved from GPL-2.0 to GPL-2.0-only and from GPL-2.0+ to
GPL-2.0-or-later. Reflect that in the SPDX license headers.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-09-22 20:58:26 +02:00
Daniel González Cabanelas
42d14ace3e mvebu: LS421DE: add linkstation poweroff driver
Compile the Linkstation poweroff module for the Buffalo LS421DE.
Without this driver the device remains forever halted if a power off
command is executed.

The driver will also allow to use the WoL feature, which wasn't availabe
in the stock firmware.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
2020-08-28 10:44:29 +01:00
Daniel González Cabanelas
a902e6a657 mvebu: LS421DE: use automatic fan control with thermal zones
The Buffalo Linkstation LS421DE has a chassis fan for cooling two internal
hard drives. Currently there is no control over this fan, running always
at fixed medium speed.

With the recent jump to the kernel 5.4, now we can monitor the hard drive
temperature and control the fan with thermal zones.

Install the kmod-hwmon-drivetemp module and wire up a thermal zone on the
dts file to allow automatic fan control by the kernel.

Tested succesfully using a single Crucial BX500 SSD drive.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
2020-07-04 21:12:42 +02:00
Daniel González Cabanelas
0cca96284a mvebu: LS421DE: dts file improvements
- Delete useless HDD presence inputs: they aren't buttons, and probably
  they are outputs in the stock firmware.
- Change the Function Button keycode: the current one isn't mapped by
  the kernel module.
- Use the recommended property names for the ethernet stuff.
- Add missing i2c pinmux.
- Minor cosmetic changes.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
2020-06-27 00:19:13 +02:00
Adrian Schmutzler
3c20bb0644 mvebu: consolidate DTS files
The DTS files in files-4.19 and files-5.4 are exactly identical
except for one file (armada-3720-uDPU.dts), which is only present
for 4.19, as it has been upstreamed before 5.4.

Since there is no point in maintaining all these identical files
twice, this patch moves them to the "files" directory, only keeping
the named exception to files-4.19.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-06-23 21:02:40 +02:00
Hauke Mehrtens
47106f55e0 mvebu: move files to files-4.9 and files-4.4 folder
This is needed to prevent copying it into kernel 4.14.
These device tree files are already integrated into kernel 4.14 and we
would like to use the upstream versions only.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-13 22:24:56 +01:00
Henryk Heisig
6674aa9798 mvebu: wrt3200acm enable SDIO interface
add mwifiex-sdio package to wrt3200acm

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-03-11 14:16:28 +01:00
Ansuel Smith
2261c9cc77 mvebu: add default sata trigger
Change dts file to add default sata trigger to sata led.

Backport upstream accepted patch to add sata trigger to device tree
source files already upstreamed.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
[backport upstream accepted patch]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-08 19:06:04 +01:00
Álvaro Fernández Rojas
89ecfa7556 mvebu: several fixes for Linksys WRT3200ACM
- Fix WLAN LEDs definition.
- Fix USB pinctrl definition.
- Remove SDHCI definition.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-01-13 17:12:40 +01:00
Kabuli Chana
fe876e9ac6 mvebu: Fix up some leds on this series
correct ports, fix power led on rango, tested mamba,shelby,rango

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2017-01-10 12:28:32 +01:00
Mathias Kresin
5640986001 mvebu: revert remove of mvsw61xx device tree nodes
The marvell,88e6352 and marvell,88e6172 compatible strings are used in
target/linux/generic/files/drivers/net/phy/mvsw61xx.c. No idea why grep
missed them when I searched for them.

Thanks to Syrone Wong for noticing and reporting my mistake.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-11-13 09:03:52 +01:00
Mathias Kresin
de40d45363 treewide: dts: fix dtc compiler warnings
Fixes invalid device tree parameters.

Drop the mvsw61xx node used in mvebu device tree source files. It looks
like some kind of ethernet switch cargo cult. Neither the
marvell,88e6352 nor the marvell,88e6172 compatible strings can be found
in any LEDE file or in the kernel sources.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-11-12 21:04:15 +01:00
Imre Kaloz
3764caa934 mvebu: add support for the Linksys WRT3200ACM (Rango)
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-10-24 08:45:06 +02:00
Jonas Gorski
f2102b484b mvebu: replace ClearFog dts files with patches from upstream
Make the dts file match with what is upstream, to ensure it has the
latest changes and switching to newer kernels is easier.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Felix Fietkau <nbd@nbd.name>
2016-09-26 13:03:51 +02:00
Luka Perkov
4d966e4dde mvebu: add SolidRun ClearFog A1 support
Signed-off-by: Andrej Vlasic <andrej.vlasic@sartura.hr>

SVN-Revision: 48736
2016-02-17 17:49:26 +00:00
Imre Kaloz
b17844d21a mvebu: add support for 4.1 and switch over
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 47818
2015-12-10 12:08:13 +00:00
Imre Kaloz
8bb23cfb66 mvebu: add support for the Linksys WRT1900ACS (Shelby)
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 47164
2015-10-08 10:01:30 +00:00
Imre Kaloz
f57484c4af mvebu: fix cobra chainmask
Thanks Sebastian for spotting it.

Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 46697
2015-08-21 08:01:48 +00:00
Imre Kaloz
d78c7f1765 mvebu: fix gpio config on the WRT1200AC
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 46527
2015-07-31 18:08:12 +00:00
Imre Kaloz
2705cda813 mvebu: add support for the Linksys Caiman and Cobra
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 45456
2015-04-16 09:54:39 +00:00
Imre Kaloz
b0ad24f0d5 mvebu: migrate mamba support to the upstreamed code
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 45400
2015-04-12 17:29:50 +00:00
Imre Kaloz
5be4f2b5b8 mvebu: update mamba dts
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 44949
2015-03-23 12:44:30 +00:00
Imre Kaloz
9a172c70eb mvebu: update mamba dts
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 44128
2015-01-25 15:26:33 +00:00
Imre Kaloz
9a8bf84879 mvebu: add the new tlc59116 driver and migrate the Mamba to it
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 43975
2015-01-15 13:59:01 +00:00
Imre Kaloz
b0a2d7ad0d now that the driver knows it, use the 88e6172's switch type in the mamba dts
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 43945
2015-01-12 09:32:33 +00:00
Luka Perkov
a1872182bb mvsw6171: rename to 'mvsw61xx'
In preparation for properly supporting switches
beyond the 88E6171.

Signed-off-by: Claudio Leite <leitec@staticky.com>

SVN-Revision: 43935
2015-01-11 17:19:58 +00:00
Imre Kaloz
bfa1f18bfb enable swconfig and the mvsw6171 driver
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 43854
2015-01-05 15:02:18 +00:00
Imre Kaloz
5ed3a7aeb3 add tmp421 to the device tree instead of relying on autodetect
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 43825
2015-01-04 17:26:07 +00:00
Imre Kaloz
88121f229c update wrt1900ac dts
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 41629
2014-07-13 22:11:43 +00:00
Imre Kaloz
1cebada22b fix the WPS button's GPIO number on the mamba
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 41392
2014-06-29 21:26:01 +00:00
Imre Kaloz
38f596d8f4 update mamba dts
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 41379
2014-06-29 11:44:58 +00:00
Imre Kaloz
643a8a626d update mamba dts
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 41292
2014-06-20 23:05:23 +00:00
Imre Kaloz
a241853358 define the power led for the WRT1900AC
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 41288
2014-06-20 19:13:01 +00:00
Imre Kaloz
d775e4ef00 preliminary support for the WRT1900AC (work in progress)
SVN-Revision: 41232
2014-06-17 15:13:10 +00:00