Since commit f8c55dc ("MIPS: use generic dma noncoherent ops for
simple noncoherent platforms") changed MIPS dma handling, the mmc
driver fails because it doesn't have a dma mask is set.
So set the correct dma mask.
Signed-off-by: NeilBrown <neil@brown.name>
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
1. Use functions for cleaner code
2. Always execute WAN interface generic code
Before this change WAN interface code wasn't executed on all devices due
to an early "exit 0".
Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Specifying root filesystem by device is non-deterministic for several
reasons:
- USB device unmeration order is not garunteeed for USB storage devs
- MMC devs ordering is determined by the instance of the MMC host
controller including non-storage SDIO devices which can throw off
numbering depending on kernel versions.
It is recommended to use partition UUID
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
JSON info files contain machine readable information of built profiles
and resulting images. These files were added in commit 881ed09ee6
("build: create JSON files containing image info").
They are useful for firmware wizards and script checking for
reproducibility.
Currently all JSON files are stored next to the built images, resulting
in up to 168 individual files for the ath79/generic target.
This patch refactors the JSON creation to store individual per image
(not per profile) files in $(BUILD_DIR)/json_info_files and create an
single overview file called `profiles.json` in the target directory.
Storing per image files and not per profile solves the problem of
parallel file writes. If a profiles sysupgrade and factory image are
finished at the same time both processes would write to the same JSON
file, resulting in randomly broken outputs.
Some target like x86/64 do not use the image code yet, resulting in
missing JSON files. If no JSON info files were created, no
`profiles.json` files is created as it would be empty anyway.
As before, this creation is enabled by default only if `BUILDBOT` is set.
Tested via buildroot & ImageBuilder on ath79/generic, imx6 and x86/64.
Signed-off-by: Paul Spooren <mail@aparcar.org>
[json_info_files dir handling in Make, if case refactoring]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Use in tree version of cake for kernels 4.19+ and backport features from
later kernel versions to 4.19.
Unfortunately PROVIDES dependency handling produces bogus circular
dependency warnings so whilst this package and kmod-sched-cake-oot
should be able to PROVIDE kmod-sched-cake this doesn't work.
Instead, remove the PROVIDES option and modify package sqm-scripts to
depend on the correct module independently.
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* install kmod-hwmon-drivetemp by default
* wire up thermal zone
* fix fan GPIO polarity
* fix i2c-gpio GPIO_OPEN_DRAIN
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
drivers/ata/sata_oxnas.c: In function 'sata_oxnas_port_irq':
drivers/ata/sata_oxnas.c:2126:25: warning: left shift count >= width of type [-Wshift-count-overflow]
if (ap->qc_active & (1 << ATA_TAG_INTERNAL)) {
^~
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Albert has reported, that his DAP-2610 wont boot with the latest
snapshot and Fredrik has found out, that the device gets stuck at
"Waiting for root device ..." due to missing 5.4 kernel config symbol
CONFIG_MTD_SPLIT_WRGG_FW which was probably lost during the kernel
version bump.
Ref: https://forum.openwrt.org/t/dap-2610-bricked-help-needed
Fixes: 272e0a702a ("ipq40xx: add v5.4 support")
Suggested-by: Fredrik Olofsson <fredrik.olofsson@anyfinetworks.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
The iso image need cdrom and iso9660 drivers to boot, otherwise it will
hang when mounting the root file system
Signed-off-by: 李国 <uxgood.org@gmail.com>
Add EFI platform bootable images for x86 platforms. These images can
also boot from legacy BIOS platform.
EFI System Partition need to be fat12/fat16/fat32 (not need to load
filesystem drivers), so the first partition of EFI images are not ext4
filesystem any more.
GPT partition table has an alternate partition table, we did not
generate it. This may cause problems when use these images as qemu disk
(kernel can not find rootfs), we pad enough sectors will be ok.
Signed-off-by: 李国 <uxgood.org@gmail.com>
[part_magic_* refactoring, removed genisoimage checks]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Enable kernel symbol CONFIG_RTC_DRV_CMOS which was enabled in 4.14 &
4.19
Fixes FS#2905 and now my APU2 picks up time from RTC
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
The root file system is getting too big for this device and this breaks
the ramips/rt305x build.
Do not build images for this board by default to fix this problem.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Most targets upstream use 250Hz or even 1000Hz by default while
100Hz is hardcoded in OpenWrt's default config. Use upstream default
except for apm821xx which hardsets 1000Hz instead of platform default of
250Hz.
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
[Apply same changes to 5.4]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Building Linux kernel version 5.4.x with GCC8 ends up
with internal compiler error. The workaround on this issue
can be introdution of additional compiler option "--mmpy-option=2"
Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Petr Štetiar <ynezz@true.cz>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Cc: John Crispin <john@phrozen.org>
This patch updates arc-specific patch by moving declaration
of struct object before it's usage.
Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Petr Štetiar <ynezz@true.cz>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Cc: John Crispin <john@phrozen.org>
Armada 370 processors have only 16 double-precision registers. The
change introduced by 8dcc108760 ("toolchain: ARM: Fix toolchain
compilation for gcc 8.x") switched accidentally the toolchain for mvebu
cortexa9 subtarget to cpu type with 32 double-precision registers. This
stems from gcc defaults which assume "vfpv3-d32" if only "vfpv3" as mfpu
is specified. That change resulted in unusable image, in which kernel
will kill userspace as soon as it causing "Illegal instruction".
Ref: https://forum.openwrt.org/t/gcc-was-broken-on-mvebu-armada-370-device-after-commit-on-2019-03-25/43272
Fixes: 8dcc108760 ("toolchain: ARM: Fix toolchain compilation for
gcc 8.x")
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
Tegra 2 processors have only 16 double-precision registers. The change
introduced by 8dcc108760 ("toolchain: ARM: Fix toolchain compilation
for gcc 8.x") switched accidentally the toolchain for tegra target to cpu
type with 32 double-precision registers. This stems from gcc defaults
which assume "vfpv3-d32" if only "vfpv3" as mfpu is specified. That
change resulted in unusable image, in which kernel will kill userspace as
soon as it causing "Illegal instruction".
Ref: https://forum.openwrt.org/t/gcc-was-broken-on-mvebu-armada-370-device-after-commit-on-2019-03-25/43272
Fixes: 8dcc108760 ("toolchain: ARM: Fix toolchain compilation for
gcc 8.x")
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
The previous rework of x86 image creation done in commit cb007a7bf6
("x86: switch image generation to new code") removed images of separate
squashfs and ext4 filesystems which are handy for example in testing
under QEMU.
So this patch adds back creation of those missing rootfs images for ext4
and squashfs based filesystems.
Fixes: cb007a7bf6 ("x86: switch image generation to new code")
Signed-off-by: Paul Spooren <mail@aparcar.org>
[commit subject and description tweaks]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
The previous rework of x86 image creation done in commit cb007a7bf6
("x86: switch image generation to new code") broke the padding in
images.
sda: p2 size 212992 extends beyond EOD, enabling native capacity
sda: p2 size 212992 extends beyond EOD, truncated
sd 0:0:0:0: [sda] Attached SCSI disk
SQUASHFS error: squashfs_read_data failed to read block 0x2cc556
unable to read id index table
VFS: Cannot open root device "PARTUUID=ac5c9cd8-02" or unknown-block(8,2): error -5
Please append a correct "root=" boot option; here are the available partitions:
0800 19761 sda
driver: sd
0801 16384 sda1 ac5c9cd8-01
0802 2865 sda2 ac5c9cd8-02
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,2)
Tested with x86/64 with Docker (squashfs), qemustart (ext4/squashfs) and
virtualbox (ext4/squashfs).
Ref: FS#2935
Fixes: cb007a7bf6 ("x86: switch image generation to new code")
Suggested-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: Paul Spooren <mail@aparcar.org>
[commit subject and description tweaks]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Without this patch, when using rev 3 of the Atheros AR9344 SoC, the
gigabit switch (AR8327) does not work or works very erratically.
This is a re-spin of http://patchwork.ozlabs.org/patch/419857/ with a
different PLL value, according to the feedback from several users
(including myself) as shown here:
https://openwrt.org/toh/mikrotik/rb2011uias#tracking_reported_experience_with_suggested_patch_for_the_5_gige_ports
Performance is acceptable: testing L3 forwarding without NAT yields a
performance of 370 Mbit/s (iperf3 TCP) and 41 Kpps (iperf3 UDP with 64
bytes payload). Both tests show that 100% of CPU time is spent on softirq.
A similar fix for a different device (RB2011) was added in e457d22261
("Make GBit switch work on RB2011").
Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
The bootloader does not always initialize the MDIO pins before booting
Linux. E.g. on version "U-Boot 2012.07 [Chaos Calmer 15.05.1,r35193] (Jul
25 2017 - 11:36:26)" this is the case when booting automatically without
activating the U-Boot console.
Without this change, the kernel boot will complain about missing PHYs:
libphy: ipq40xx_mdio: probed
ar40xx c000000.ess-switch: Probe failed - Missing PHYs!
libphy: Fixed MDIO Bus: probed
With this change it will work as expected:
libphy: ipq40xx_mdio: probed
ESS reset ok!
ESS reset ok!
libphy: Fixed MDIO Bus: probed
Ref: GH-2835
Tested-by: Fredrik Olofsson <fredrik.olofsson@anyfinetworks.com>
Signed-off-by: Leon M. George <leon@georgemail.eu>
[commit description from Fredrik, subject facelift]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Seems to be working fine on my a64-olinuxino, it's 99.9% upstream stuff
anyway. Lets start wider userbase testing.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
This is backport of v5.6 patch.
Allwinner A64 SoC has separate supplies for PC, PD, PE, PG and PL. This
patch adds regulators for them to the pinctrl node.
Exception is PL which is used by the RSB bus. To avoid circular
dependencies, VCC-PL is omitted.
On boards with eMMC, VCC-PC is supplied by ELDO1, instead of DCDC1.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
There is a red LED marked as `GPIO_LED1` on the silkscreen and connected
to PE17, so use this LED for status signalization.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Specifications:
SoC: Allwinner A64 (1.2 GHz Quad-Core ARM Cortex-A53 64-bit)
RAM: 1GB or 2GB RAM DDR3L @ 672Mhz
Flash: 0/4/16GB eMMC flash memory for storage and boot
MicroSD card connector for cards up to 32GB
Debug: serial UART debug header with 0.1" pins
Wired connectivity: 10/100/1000Mbps GbE Ethernet
Wireless connectivity: on-board RTL8723BS 1T1R 802.11bgn WiFi and
Bluetooth 4.0 module with built-in antenna
(only available in the A64-OLinuXino-1G4GW)
Flashing instructions:
Standard sunxi SD card installation procedure - copy eMMC image to SD
card, insert in into SD card slot on the device and boot. You should see
something like following if the eMMC is detected correctly:
mmcblk2: mmc2:0001 P1XXXX 3.60 GiB
mmcblk2boot0: mmc2:0001 P1XXXX partition 1 16.0 MiB
mmcblk2boot1: mmc2:0001 P1XXXX partition 2 16.0 MiB
Then flash SD card eMMC image straight into the mmcblk2 device:
dd if=/mnt/openwrt...a64-olinuxino-emmc-squashfs-sdcard.img of=/dev/mmcblk2
It also possible to boot from boot0 partition[1]:
1. Compile U-Boot with CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x40
otherwise the U-Boot will get stuck in bootloop
2. Configure eMMC to boot from boot0 partition inside U-Boot:
mmc bootbus 1 1 0 0; mmc partconf 1 1 1 0
3. echo 0 > /sys/block/mmcblk2boot0/force_ro
4. Write U-Boot from offset 0 (not offset 8k as with SD card) into
boot0 partition
dd if=u-boot-sunxi-with-spl.bin of=/dev/mmcblk2boot0
Known issues:
Wireless doesn't work properly via netifd.
1. https://linux-sunxi.org/index.php?title=Bootable_eMMC
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Specifications:
SoC: Allwinner A64 (1.2 GHz Quad-Core ARM Cortex-A53 64-bit)
RAM: 1GB or 2GB RAM DDR3L @ 672Mhz
Flash: 0/4/16GB eMMC flash memory for storage and boot
MicroSD card connector for cards up to 32GB
Debug: serial UART debug header with 0.1" pins
Wired connectivity: 10/100/1000Mbps GbE Ethernet
Wireless connectivity: on-board RTL8723BS 1T1R 802.11bgn WiFi and
Bluetooth 4.0 module with built-in antenna
(only available in the A64-OLinuXino-1G4GW)
Flashing instructions:
Standard sunxi SD card installation procedure - copy image to SD card,
insert in into SD card slot on the device and boot.
Known issues:
Wireless doesn't work properly via netifd.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
In RouterBOARD parlance there never was an "art" partition.
This partition has always been named 'hard_config' on ar71xx.
This partition contains more than just ART (Atheros Radio Test) data. It
includes the hardware description (product code, serial, board
identifier, name, hardware options, MAC address), as well as other bits
affecting the operation of RouterBoot.
To avoid confusion with regular ART data, this partition is renamed in
line with historical ar71xx and ramips nomenclature as 'hard_config'.
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
[minor commit title/message adjustments]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
In RouterBOARD parlance there never was an "art" partition.
This partition has always been named 'hard_config' on ar71xx.
This partition contains more than just ART (Atheros Radio Test) data. It
includes the hardware description (product code, serial, board
identifier, name, hardware options, MAC address), as well as other bits
affecting the operation of RouterBoot.
To avoid confusion with regular ART data, this partition is renamed in
line with historical ar71xx and ramips nomenclature as 'hard_config'.
This commit fixes the previous support files and implements the nested
RouterBoot partition scheme as already used by ramips-based SPI-NOR
RouterBOARD DTSes, as previously reviewed and implemented in
bbe2cf657c ("ramips: fix RBM11G partitioning").
Tested-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
[minor commit title/message adjustments]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
The Pogoplug E02 was not using the correct partitions
in device tree, but used the ones from upstream and
thus could not boot OpenWrt images.
In contrast, uboot-kirkwood is using the correct
partitions since d3fc4fbd74 ("uboot-kirkwood: re-add
Pogoplug E02 support").
This patch corrects the partitions in DTS for kernels
4.14, 4.19 and 5.4.
Fixes: 2b0fa00da8 ("kirkwood: add Pogoplug E02 Kernel support")
Signed-off-by: Alberto Bursi <bobafetthotmail@gmail.com>
Reviewed-by: Pawel Dembicki <paweldembicki@gmail.com>
Reviewed-by: Sungbo Eo <mans0n@gorani.run>
[commit title/message facelift, refresh 4.14 patch]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This commit adds support for the MT7622-based Elecom WRC-2533gent router,
with spi-nand storage and 512MB RAM.
The device has the following specifications:
* MT7622 (arm64 dual-core)
* 512MB RAM (DDR3)
* 4GB storage (spi-nand)
* 5x 1Gbps Ethernet (RTL8337C switch)
* 1x UART header
* 1x USB 3.0 port
* 5x LEDs
* 1x reset button
* 1x WPS button
* 1x slider switch
* 1x DC jack for main power (12V)
The following has been tested and is working:
* Ethernet switch
* 2.4g and 5g wifi
* USB 3.0 port
* sysupgrade
* buttons/leds
Not working:
* bluetooth firmware does not load even though it is present int he rootfs
Signed-off-by: John Crispin <john@phrozen.org>
Use power led for device status.
The status led behavior has already been fixed in af28d8a539
("ath79: add support for GL.iNet GL-AR750S") when porting the
device to ath79. This fixes it for ar71xx as well.
Signed-off-by: Jan Alexander <jan@nalx.net>
[minor commit title/message adjustments]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This ports support for the TL-WA860RE v1 range extender from ar71xx
to ath79.
Specifications:
Board: AP123 / AR9341 rev. 3
Flash/RAM: 4/32 MiB
CPU: 535 MHz
WiFi: 2.4 GHz b/g/n
Ethernet: 1 port (100M)
Two external antennas
Flashing instructions:
Upload the factory image via the vendor firmware upgrade option.
Recovery:
Note that this device does not provide TFTP via ethernet like many
other TP-Link devices do. You will have to open the case if you
require recovery beyond failsafe.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Sebastian Knapp <sebastian4842@outlook.com>
This device seems to be identical to the TL-WDR4300, just with
different release date/region and TPLINK_HWID.
Support is added based on the ar71xx implementation.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>