CPU: 2x1.8GHz ARM, RAM: 512MiB
Storage: 4MiB serial Flash, 3.9GiB MMC
NIC: 2x1GBit/s, Switch with 5 external and 2 internal ports
WiFi: Dualband, ath10k 2.4GHz, 5GHz MU-MIMO
For installation copy xx-mmcblk0p4-kernel.bin and xx-mmcblk0p5-rootfs-full.bin
to device. Then run:
cat xx-mmcblk0p4-kernel.bin > /dev/mmc0blk0p4
cat xx-mmcblk0p5-rootfs-full.bin > /dev/mmc0blk0p5
reboot -f
For debugging serial console is easily visible on board, no soldering needed.
Signed-off-by: André Valentin <avalentin@marcant.net>
This bugfix enables FXS support on dabube based devices.
Changed "compatible" attribute from "vmmc" to "vmmc-xway".
The vmmc driver uses "vmmc-xway".
Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
This patch adds support solely for version 1 of the TP-Link WR802N.
It is based on Rick Pannen's patch posted on the OpenWrt devel list.
Signed-off-by: Julius Schulz-Zander <julius@inet.tu-berlin.de>
Remove redundant code: merge boards/cases that share
the same network configuration.
Also fix the alphabetical ordering of the cases.
Signed-off-by: Paul Wassi <p.wassi@gmx.at>
These boards do not have a switch, so they should have never been added
to this file in the first place.
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
On the stock Meraki Firmare for the MR12/MR16, a chunk of SPI space
after u-boot-env is used to store the boards Mac address. Sadly as this
was removed on any device already on OpenWRT/LEDE, moving forward a new,
64k partition named "mac" will be used to store the mac address for the
device (which is the minimum size). This allows users to properly set
the correct MAC, without editing the ART partition (which holds the same
MAC for all devices).
The reason the space is taken from kernel instead of rootfs is currently
kernels are only 1.3MB, so that way we can leave the current rootfs
space alone for users who fully utilize the available storage space.
Once this partition is added to a device, you can set your MAC doing the
following:
mtd erase mac
echo -n -e '\x00\x18\x0a\x33\x44\x55' > /dev/mtd5
sync && reboot
Where 00:18:0a:33:44:55 is your MAC address.
This was tested, and confirmed working on both the MR12 and MR16.
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
This moves the Meraki MR12 and Meraki MR16 to the new generic target.
Tested and verified working on both devices.
Note that kernel/rootfs images are still generated. This is because they
are used for the inital flashing process due to the fun pace at which
UBoot erases/writes to SPI.
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Otherwise if we use ds1307 as kernel module, hctosys fails as ds1307 is
being initialized later then hctosys:
[ 2.427349] hctosys: unable to open rtc device (rtc0)
[ 3.714263] snvs_rtc 20cc000.snvs:snvs-rtc-lp: rtc core: registered 20cc000.snvs:snvs-r as rtc1
[ 8.990061] rtc-ds1307 3-006f: rtc core: registered mcp7941x as rtc0
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Build the RTC driver into the kernel, (and remove the optional module), in order
to make hctosys working. (Currently the module is loaded after hctosys has failed previously)
Signed-off-by: Paul Wassi <p.wassi@gmx.at>
Refresh patches for all targets supporting 3.18 and not marked broken.
Compile-tested on all targets using 3.18 and not marked broken.
Changes to generic/610-netfilter_match_bypass_default_checks.patch based
on 84d489f64f.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Refresh patches for all targets supporting 4.1 and not marked broken.
Compile-tested on all targets using 4.1 and not marked broken.
Changes to generic/610-netfilter_match_bypass_default_checks.patch based
on 84d489f64f.
Changes to generic/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch based
on a90ee92337.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Kernel 4.4 was ready for brcm47xx for almost a year now but I kept
postponing the bump due to problems with Linksys WRT300N v1.0. OpenWrt
and LEDE with 4.4 were hanging at the booting with the:
> Starting program at 0x80001000
(the last CFE message).
This was a permanent state, "make distclean" wasn't helping, I spent
hours debugging this and I was reliably reproducing the issue every
time. I also reported it on linux-mips ML in the thread:
> BCM4704 stopped booting with 4.4 (due to vmlinux size?)
After ~month I started working on WRT300N again. I got hangs as expected
every time I switched from 4.1 to 4.4. I started experimenting with:
1) TRX content (I tried dropping rootfs partition)
2) BZ_TEXT_START of lzma-loader
3) Flashing other variants of image: lzma compressed kernel (without a
loader), gzip compressed one, uncompressed one.
At some point I got rootfs-less image booting and after that I couldn't
reproduce problem anymore, even with a complete firmware. It seems like
hardware was in some locked/unstable state that got magically fixed.
I have LEDE working now, tested it even with "make distclean", it seems
we can bump kernel now. I'll keep testing it on WRT300N for some time.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Linksys WRT300N V1 has pretty bugged CFE bootloader (it crashes in a lot
of situations) that doesn't accept .bin image.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Refresh patches for all targets that support kernel 4.4.
compile/run-tested on brcm2708/bcm2710 only.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Read the temperature including the decimale place from the CGU_GPHY1_CR
register.
Decrement the temperature read from the register by 38.0 degree celsius.
The temperature range of the sensor is -38.0 to +154 °C and the register
value 0 is equal to -38.0 °C. This fixes the report of unrealistic
temperatures as seen on all tested boards.
Give the SoC a few milliseconds to get the first temperature value. On
some rare occasions there is no temperature value in the register when
read the first time after activation. This leads to a reported
temperature of -38.0 °C on boot.
Only version 1.2 of the vr9 SoC has a temperature sensor. Add a check
to make sure the driver doesn't load on v1.1 vr9 SoCs.
Signed-off-by: Mathias Kresin <dev@kresin.me>
The device tree file of ARV752DPW uses numbers/hex values for gpio states and input event codes.
This cleans it up and uses the available macros from header files. This way the functions are easier to read and comprehend.
Signed-off-by: Andreas Eberlein <foodeas@aeberlein.de>
[sanitize all device tree files]
Signed-off-by: Mathias Kresin <dev@kresin.me>
The GPIO for reset switch is wrong in definition. Further the key codes for the two additional buttons are ineffective.
Both is fixed here.
Signed-off-by: Andreas Eberlein <foodeas@aeberlein.de>
Use the new image build code and remove the lzma loader. The lzma
loader was used to cheat the signature validation of the bootloader and
I found another way to do this.
To migrate boards already using LEDE/OpenWrt to the new image the
following steps need to be done once:
VR9 # run reset_uboot_config
VR9 # reset
VR9 # setenv ethaddr AA:BB:CC:DD:EE:FF
VR9 # setenv preboot ping 1.1.1.1\;bootm 0xb001f000
VR9 # saveenv
VR9 # tftp 0x81000000 lede-lantiq-xrx200-VG3503J-squashfs-sysupgrade.bin
VR9 # erase 0xb0020000 $(filesize)
VR9 # cp.b 0x81000000 0xb0020000 $(filesize)
The mac address is printed on the label at the bottom of the case.
The following steps are need to be done during first install:
VR9 # setenv preboot ping 1.1.1.1\;bootm 0xb001f000
VR9 # saveenv
VR9 # tftp 0x81000000 lede-lantiq-xrx200-VG3503J-squashfs-sysupgrade.bin
VR9 # erase 0xb0020000 $(filesize)
VR9 # cp.b 0x81000000 0xb0020000 $(filesize)
The image uses the uImage firmware splitter now instead of hardcoded
kernel and rootfs partitions. The firmware partition size was extended
to use flash space that was reserved for partitions required only by
the ECI firmware.
Due to the changes an upgrade to a later LEDE revision from a running
LEDE is supported now.
A default switch config was added and the device uses the same MAC
addresses as the ECI firmware now instead of the same for all VG3503J.
Signed-off-by: Mathias Kresin <dev@kresin.me>
We don't have any code for enabling it automatically yet but it allows
adding entries manually to the /etc/config/system.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This makes init.d script handle existing UCI entries using the new
trigger. It also switches all targets to use its package.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
There is no US firmware for the TL-WA901ND v4 yet, so we'll just
unconditionally set the EU region for now.
This makes LEDE flashable on these devices again. The format of the region
string is slightly different from the one used on the Archer C7 that is
generated by mktplinkfw (the second half of the region string is missing),
but it's similar enough to make it work.
Tested-by: Jannis Pinter <jannis@pinterjann.is>
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
In dc92917 there was introduced login.sh wrapper which allows
configuration of console passwords via UCI system ttylogin config
option.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
This patch adds support for the Airtight C-60.
SOC: Atheros AR9344 rev 2 (CPU:560.000MHz)
RAM: 128 MiB
NOR: MX25L3205D 4MiB
NAND: ST Micro NAND 32MiB 3,3V 8-bit
SW-NET: AR8327N (2 Ports)
WLAN1: Dual-Band AR9340 Rev:2 (built-in SoC)
WLAN2: Dual-Band AR9300 Rev:4 PCIe Chip
The switch is setup for an accesspoint:
LAN1: (gigabit) is the wan-port.
LAN2: (fast ethernet) is bridged with the br-lan.
Flashing Guide (via initramfs):
1. Connect a PC to the serial port of the C-60.
power up the C-60.
Enter u-boot command prompt:
#> nand erase
#> setenv bootcmd "bootm 0x9f060000"
#> saveenv
#> setenv ipaddr 192.168.1.1
#> setenv netmask 255.255.255.0
#> setenv serverip 192.168.1.100
#> setenv bootfile lede-ar71xx-nand-c-60-initramfs-kernel.bin
#> tftpboot
#> bootm
2. Wait for the C-60 to boot LEDE.
On the root prompt. Enter:
# ubiformat /dev/mtd4
# ubiattach -p /dev/mtd4
3. After that copy the sysupgrade.tar onto the router and run:
# sysupgrade sysupgrade.tar
to flash the image.
Special thanks to Chris Blake <chrisrblake93@gmail.com>. He provided
a C-60 unit and he helped with debugging the switch, LEDs and platfrom
support.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
The commit "generic: ar8216: add sanity check to ar8216_probe"
(774da6c7a4) stated that PHY IDs
should be checked at address 0-4. However, the PHY 4 was
never check by the loop. This patch extends the check to be
similar to the Atheors SDK. It tries all 4 ports and skips
unconnected PHYs if necessary. If it cannot find any familiar
PHYs, it will prevent the phy driver from initializing.
This patch is necessary for the C-60. It doesn't have a
PHY at port 3, so this caused the check in ar8xxx_is_possible
to fail. As a result, the ethernet ports on the C-60 didn't
work.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
The WBMR boards are the only ones in the whole tree selecting the wpad
and hostapd-utils package by default.
Remove the wps uci-default script as well, there is no obvious reason
why the wps config need to be set only for this board.
Signed-off-by: Mathias Kresin <dev@kresin.me>
All of the touched boards don't have an ethernet port. Allow to use the
wps button on these boards to enable the wireless radio after boot.
The force enabled wireless for the DCH-M225 is removed. It is reckless
to bring up an unencrypted wireless network by default these days.
Using the wps button to bring up the radio seam to me the better
approach.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Images installed via TFTP recovery or the Edimax webinterface of the
3g-6200n(l) are writting with the edimax header to flash.
Use only one image type for these boards. The migration to the
factory only images need to be done via TFTP recovery.
Use the same start address for the 3g-6200n(l) factory images as the
stock firmware images.
Thanks to Jan Dostrasil for reporting all the issues of the 3g-6200nl
and the patient testing of all changes.
Signed-off-by: Mathias Kresin <dev@kresin.me>
According to the author the code was added to in preparation for adding
support for a new board. The patch for the board was never send and the
code never really tested.
The edimax header starting with the edimax magic is put in front of the
uImage header. There is no special uImage header used. Means, default
magic and the type field is set to kernel as usual.
Signed-off-by: Mathias Kresin <dev@kresin.me>
edimax parser fix
The return value of the find_header function need to be added to the
uimage_size, otherwise mtd_find_rootfs_from() might search for a rootfs
within a custom header and fails.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Assign the reset functionality to the wps/reset buttons. Use the wlan
switch of the 6200n to enable/disable wlan.
Add the internet led of the 6200nl and use the led for boot status
indication
Signed-off-by: Mathias Kresin <dev@kresin.me>
With 3a9752bbd2 and later changes to
ramips_set_preinit_iface() the default vlan config applied during
preinit was changed. These changes were made without updating the
default network config to ensure that vlan interfaces used for lan/wan
are still configured.
Fix the issue by using the default all LAN portmap and disabling not
connected switch ports using portdisable device tree parameter.
Signed-off-by: Mathias Kresin <dev@kresin.me>
With de51026515 the explicit tagging of
the CPU port was removed. This leads to a not working default network
config, with vlans enabled but disabled CPU tagging, for boards where
all switch ports are having the same role.
In case the ports are having different roles set, tagging is is set
implicit for the CPU port by ucidef_add_switch().
Signed-off-by: Mathias Kresin <dev@kresin.me>
Don't set the lan/wan interface when using ucidef_add_switch. This
results into a wan interface albeit all ports a annotated as lan ports.
ucidef_add_switch takes care of setting the correct lan/wan interface
according to the annotation of the ports.
Signed-off-by: Mathias Kresin <dev@kresin.me>
COPYING is not present in $(LINUX_DIR) on imagebuilder and prevents a
successful image creation.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
The patch "images: bump default rootfs size to 256 MB"
a1f83bad60 caused a crash
during boot for the recovery images. This is because
both variants of the MyBook Live only have 256MB of RAM
and for the recovery option, the ext4 rootfs was simply
stored in the RAMDISK.
This patch replaces recovery image for the MBL with an
initramfs kernel.
In order to boot the initramfs (for recovery or development):
0. copy the initramfs and device tree into tftp's server directory
# cp *-initramfs-kernel.bin to /tftp-server/mbl.bin
# cp *-ext4-kernel.dtb to /tftp-server/fdt.bin
1. Connect the MyBook Live (Duo) serial port.
(Warning! Use a 3.3v level shifter).
2. Hit Enter during u-boot and insert these three lines:
# setenv serverip 192.168.1.254; setenv ipaddr 192.168.1.1;
# tftp ${kernel_addr_r} mbl.bin; tftp ${fdt_addr_r} fdt.bin
# run addtty addmisc; bootm ${kernel_addr_r} - ${fdt_addr_r}
Where 192.168.1.254 is your TFTP server.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This will allow dynamically adding/removing at least virtio-net pci
devices which are quite the norm in cloud environment with QEMU/KVM
netdev_add bridge,id=wan2,br=br-wan,helper=/home/yousong/.usr/libexec/qemu-bridge-helper
device_add virtio-net-pci,id=devwan2,netdev=wan2,mac=11:22:33:22:11:00
The config was formed by selecting target x86/64 first, then select
CONFIG_HOTPLUG_PCI and CONFIG_HOTPLUG_PCI_ACPI with
make kernel_menuconfig CONFIG_TARGET=subtarget
The following text tries to explain how the current config was formed
1. CONFIG_PCI_LABEL and CONFIG_ATA_PIIX were removed because they were
already enabled in x86 platform config
2. CONFIG_ATA_SFF was removed because it was enabled in generic config
3. CONFIG_NLS was removed because it will be selected by CONFIG_PCI_LABEL
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
The D-Link DIR-869 A1 doesn't accept images with the jffs2 marker added
after the checksummed range, so we need to include it in the checksum and
fix it on first boot.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Split seama-factory and seama-sysupgrade into smaller pieces (similar to
the ramips code) to make the image generation more flexible.
Also use standard pad-offset instead of adding a block of zeros at the
beginning of the image that is later cut off again. Standard pad-rootfs can
be used as the seal header doesn't contain an image size or checksum.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
In case the adsl/vdsl service is disabled intentional, the output is
cluttered with the following message multiple times if the status of
the dsl line is queried:
killall: vdsl_cpe_control: no process killed
If the dsl line status is queried by LuCI, the logfile is spammed with
the message.
Fix the issue by using killall in quite mode. In quite mode killall
still returns a non-zero value if the to be killed process can not be
found so that existing logic based on the return value still works.
Signed-off-by: Mathias Kresin <dev@kresin.me>
TP-Link uses a different region coding mechanism for IL firmware for the Archer
C7 v2. Instead of of setting the region, they set a different TPLINK_HWREV.
Signed-off-by: Amir Rachum <amir@rachum.com>
Due to the introduced double whitespace the default package selection
isn't applied. This leads to errors like a not working networking
because of a missing swconfig binary.
Fixes FS#208.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Add USB led aliases to boards having an led which is meant to be used
as USB led according to the manuals.
Remove the kmod-ledtrig-usbdev from the default package selection for
boards not having an USB led. Add the kmod-ledtrig-usbdev to boards
where it is missing.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Use a more generic name for the lantiq_get_dt_led_chosen function.
Drop the lantiq_is_dt_led_chosen function. The lantiq_get_dt_led
function can be used to achieve the same.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Convert the Zynq target to use the new image build code in order to fix
broken image generation after 9945a1dca5
changed the handling of CPIO images.
Also remove the misapplied ubifs feature flag since the image generation is
not using UBIFS for building FIT images.
As part of the conversion, move the DTB building and the uImage ramdisk
generation into separate build steps which can be generalized and shared
with other targets, like APM821xx, in the long run.
Also remove the legacy profile declarations and use new-style per-device
profiles which will allow different package sets per image in the future.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Add some missing symbols to the generic 4.1 kernel config which got triggered
by the introduction of the hda-intel sound module.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
applied bb-final-ramips-add-zyxel-nbg-419n2.patch from
123serge123, found at https://yadi.sk/d/1ZV0lKJwbTE65;
see https://forum.openwrt.org/viewtopic.php?pid=246905#p246905,
modified slightly to fit to CC release and to new lede build
system: image/rt305x.mk include file is used now
changed NBG-419N2.dts format to fit style of other dts files
Signed-off-by: Klaus <k-laus@quantentunnel.de>
This includes:
- use of local 'board' variable in LED names, wherever possible
- merge of boards with exactly the same LED configuration
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Keep everything in alphabetical order. Boards are ordered in two steps,
first within/inside common configuration (case section), then sections,
globally.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
This includes:
- code style fixes
- removal of huge comment (it should be in doc, not here) and some small ones
- removal of redundant config for DR531/WPJ531 as the default is the same
- merge of boards with exactly the same interfaces config
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Convert etc/board.d/02_network in ar71xx target to the same shape
as we have in ramips target. Split code into two new functions:
- interface/s setup in ar71xx_setup_interfaces()
- MAC/s setup in ar71xx_setup_macs()
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
sysupgrade command fails due to missing U-Boot environment-processing binaries on sysupgrade ramdisk. The missing binaries result in the following output:
Switching to ramdisk...
Performing system upgrade...
ash: /usr/sbin/fw_printenv: not found
ash: fw_setenv: not found
ash: touch: not found
cannot find target partition
Fixes FS#197.
Signed-off-by: Aaron Curley <accwebs@gmail.com>
- CPU: MT7620A 580MHz
- Flash: 8MB - RAM: 64MB
- External PA+LNA on both WLAN2.4 and WLAN5
- 4x LAN ethernet and 1x WAN ethernet
Signed-off-by: Xuefu Lin <xuefulin@gmail.com>
It missed some changes needed for kernel 4.4. This is only used by the
Falcon SoC and not for the xRX SoCs.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
The main difference is it supports DT binding. This allows us to use DT
for specifying controller and the new standalone USB 3.0 PHY driver.
Thanks to that we don't need out of tree patch adding PHY initialization
to the controller driver anymore.
This problem has been fixed by upstream commit 757de492f2d ("xhci: fix
platform quirks overwrite regression in 4.7-rc1").
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This drops built-in support for USB 2.0 PHY and starts using separated
driver that was upstreamed & backported some time ago.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
The nf_reject_* and nf_nat_masquerade_* modules are moved into the
corresponding kmod-nf- packages. Appropriate dependencies are added to the
kmod-nft- packages.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Refresh patches for all targets that support kernel 4.4.
compile/run-tested on brcm2708/bcm2710 only.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Forgot to update kernel-version.mk, so updated patch. Compile-tested on x86/64 and ar71xx; run-tested on x86/64 and ar71xx.
Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
-add spi pins
-move mdio and rgmii pinctrl from gmac and mdio into pinmux node
-add i2c4 pinctrl into rpm node
-add pin details into several nodes
-update gmac1 and gmac2 parameters
-update mdio phy0 and phy4 registers by ddwrt devs findings
-fix i2c4 pin drive-strengh
-remove pcie pins as it's already present in ipq8065 DT
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Now that the firmware for BCM43430 has been submitted to linux-firmware use it
and remove RPiDistro package.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Add patches for SFP support and package it for ClearFog. Tested with a
Juniper SFP module.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Felix Fietkau <nbd@nbd.name>
MSI interrupts do not seem to be working on mvebu, and they break
ath10k. Since nothing else seems to be using them, especially not
mwlwifi, disable them until we can fix MSI interrupts.
Works around the following issue:
[ 9.001457] ath10k_pci 0000:02:00.0: failed to receive control response completion, polling..
[ 10.001453] ath10k_pci 0000:02:00.0: Service connect timeout
[ 10.007126] ath10k_pci 0000:02:00.0: failed to connect htt (-110)
[ 10.092224] ath10k_pci 0000:02:00.0: could not init core (-110)
[ 10.098177] ath10k_pci 0000:02:00.0: could not probe fw (-110)
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Felix Fietkau <nbd@nbd.name>
ar71xx has an init-script for special devices where the ath10k OTP
calibration data is stored on the PCIe card's EEPROM (and thus can only
be read by ath10k). Unfortunately the OTP data uses the default mac
address (= all devices come with the same mac address, which leads to
problems when you have multiple of these devices in the same network).
To work around this the mac address is patched in the firmware during
the first boot of the device. To prevent flash wear this was only done
if the ath10k firmware matched a hardcoded md5sum.
However, if the md5sum does not match this can mean that either the mac
address was already patched (which is fine) - unfortunately it can also
mean that the firmware version was updated without updating the
hardcoded md5sum.
Change the "was the mac address already patched" check to actually
compare the mac address inside the ath10k firmware.
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
This patch adds support for Cisco's Z1.
Detailed instructions for the flashing the device can
be found in the OpenWrt wiki:
<https://wiki.openwrt.org/toh/meraki/z1>
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
kmod-rt2x00-lib and kmod-mac80211 need to be removed, as they depend on
kmod-cfg80211. kmod-rt2800-pci should not be installed anyways.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Add and enable sysupgrade support for clearfog boards, based on how the
brcm2708 target does it.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Felix Fietkau <nbd@nbd.name>
Add a switch node to clearfog to probe and initialize it on Clearfog
Pro. This make the switch work and allows using all six switch ports.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Felix Fietkau <nbd@nbd.name>
If the cpu port is connected through SGMII we need to enable SerDes for
it to work.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Felix Fietkau <nbd@nbd.name>
The clearfog u-boot does not initialize the switch at all, so we need to
power up the phys ourselves.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Felix Fietkau <nbd@nbd.name>
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>
Some of the PCIe and USB signals use a GPIO expander on I2C on ClearFog,
so enable the driver so that they can be configured to their required
values.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Felix Fietkau <nbd@nbd.name>
Uboot-mvebu isn't a real package, which will break the image builder
when it tries to install it during the packing step. Instead of cleafog
selecting it through its default packages, make it default to m if the
clearfog profile is selected.
This will ensure it is always build, but never added to the rootfs. This
fixes creating images for clearfog with IB.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Felix Fietkau <nbd@nbd.name>
The clearfog image requires u-boot, so package it into KDIR to make sure
it is available in imageBuilder.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Felix Fietkau <nbd@nbd.name>
Local variable declarations outside of functions are illegal since the Busybox
update to v1.25.0, therfore remove them from the appropriate places.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Older busybox versions allowed using the local keyword outside of
functions, whereas 1.25.0 (which was introduced in 06fa1c46fc) do not
allow this anymore (leading to the following error when executing the
script: "file: local: line nn: not in a function").
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Older busybox versions allowed using the local keyword outside of
functions, whereas 1.25.0 (which was introduced in 06fa1c46fc) do not
allow this anymore (leading to the following error when executing the
script: "file: local: line nn: not in a function").
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Some devices (like the Cisco Meraki Z1 Cloud Managed Teleworker Gateway)
need to be able to initialize the PCIe wifi device. Normally, this is done
during the early stages of booting linux, because the necessary init code
is read from the memory mapped SPI and passed to pci_enable_ath9k_fixup.
However,this isn't possible for devices which have the init code for the
Atheros chip stored on NAND in an UBI volume. Hence, this module can be
used to initialze the chip when the user-space is ready to extract the
init code.
Martin Blumenstingl made a few fixes and added support for lantiq:
kernel: owl-loader: add support for OWL emulation PCI devices
kernel: owl-loader: don't re-scan the bus when ath9k_pci_fixup failed
kernel: owl-loader: use dev_* instead of pr_* logging functions
kernel: owl-loader: auto-generate the eeprom filename as fallback
kernel: owl-loader: add a debug message when swapping the eeprom data
kernel: owl-loader: add missing newlines in log messages
kernel: owl-loader: add support for the lantiq platform
These patches have been integrated. Thanks!
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
General convention is to keep U-Boot and radio calibration
data (ART) mtd partitions marked as read-only.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
This changes the sysupgrade format. To support upgrades from the old
firmware to the new one, legacy images are provided. Because of the old
partition split, these have to be specific to the NOR or SPI device.
The new sysupgrade images are suitable for begin put on flash directly,
and they are independent of NOR vs SPI flash variant.
Flashing back to old firmware is supported via using the old full-flash
images instead of the old sysupgrade images.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
There are currently two stock firmwares for the TL-WDR3600/4300, a US and
a universal version. Both allow installing images with US region code, so
we don't need to provide multiple images.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Simplify modifying some of the images without affecting the others.
While we're at it, also unify the profiles to use := syntax and add "v1" to
the TL-WDR4300 name to make things more consistent.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
clean up usb gadget support:
- rename gadget modules so that they appear together and are easier to
identify as gadget modules
- make usb-lib-composite and usb-gadget hidden as there is no point in
selecting those without gadget drivers that require them as deps
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
The D-Link DIR-860L B1 has a flash chip which doesn't support
4K sectors. Since the DIR-860L B1 was the only mt7621 board which had
the 4k blocksize set, the 4K sector support is removed from the kernel
config.
I've checked the flash chips of all boards having set a 4K blocksize
again. This time I searched harder to finding bootlogs instead of
relying on wikis articles and/or the device tree source file.
The Planex MZK-DP150N has an en25q32b instead of the mentioned one in
the dts. Albeit the en25q32b supports 4K sectors, 4K support is not
enabled in the driver. Change the blocksize for this board back to 64K.
Reported-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: Mathias Kresin <dev@kresin.me>
This is a follow up to 28110727f1
"ramips: set blocksize for 4MB devices". I've missed to include the
required changes of the kernel configs to enable 4K sector size
support.
The option is only enabled for targets having boards with 4k sector
size flash chips.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Using pad-to instead of passing the optional padding to append-kernel
or append-rootfs. It could be that the value of a variable is passed.
In case the variable is empty no error is thrown.
Furthermore the purpose of the extra parameter is hard to get without
reading the code.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Backport patches from upstream Linux kernel which are making the
kernel stores the appended dtb not in the same resisters as defined in
the UHI specification, use a separate variable on MIPS.
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[some modifications]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Only add them where they are actually required.
Should help with compatibility issues with stock U-Boot images that
access UBI
Signed-off-by: Felix Fietkau <nbd@nbd.name>
The KERNEL_SIZE variable is unset and no padding is applied. This looks
like a typo to me since the ubinized image need to be aligned to the
flash blocksize.
Signed-off-by: Mathias Kresin <dev@kresin.me>
The kernel size isn't passed to the append-kernel build step and the
resulting image bricks the device.
Fixes FS#168.
Signed-off-by: Mathias Kresin <dev@kresin.me>
- quote the interface name
- remove call of not existing function
- remove the proto if it's the default proto
Signed-off-by: Mathias Kresin <dev@kresin.me>
No functional change, it's just to have the same style everywhere. This
way I don't need to use any regex magic to extract all subtargets for
compile tests.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Add or fix the physical port number of switch ports to allow LuCI to
display the ports in physical order.
Remove the physical port number in case bridge port and physical port
order are the same.
Reorder the ucidef_add_switch parameter to be aligned with the switch
port number.
Remove board settings which are covered by the default case and remove
comments.
Signed-off-by: Mathias Kresin <dev@kresin.me>
As usual these patches were extracted and rebased from the raspberry pi repo:
https://github.com/raspberrypi/linux/tree/rpi-4.4.y
Also adds support for Raspberry Pi Compute Module 3 (untested).
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
commit a2386c384d requires the
module to be static in the kernel.
So lets actually add support for it inside the kernel config.
Tested on Ventana
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Now that all seama images are using the new build code this seama recipe
used with the old build code can be dropped.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Set the blocksize for devices having only 4MB of flash for ramips
devices already using the new image build code.
Informations about the used flash chip are gathered from the OpenWrt
wiki, wikidevi, forums, OEM bootlogs or the compatible property in the
device tree source file.
The en25q32b from the AirLive Air3GII does not have 4k support in the
kernel.
For the following boards no information about the used flash chip could
be found and a 64k blocksize is assumed:
- Ralink V11ST-FE
- Ralink AP-RT3052-V22RW-2X2
- MediaTek MT7628 EVB
- MediaTek MT7621 EVB
- UPVEL UR-326N4G
- Buffalo WZR-AGL300NH
Signed-off-by: Mathias Kresin <dev@kresin.me>
Some devices (e.g. Tenda AC9 based on BCM47189B0) have BCM53125 with
port 5 connected to the second Ethernet interface on the SoC. In such
case there is no PHY and we need to force link manually.
This assumes port 5 can be marked as enabled for such devices. It's not
implemented yet unfortunately.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
The insertion or removal of the sd-card cannot be detected
by the hardware itself. This is by design. To workaround this,
for the WNDR4700 unload/load the dwc2 module in case the
the special SD CARD GPIO line is low/high.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
First two patches weren't marked for stable but are dependencies for
laters ones. The rest of patches was marked for stable but most likely
will be backported to 4.5+ only so we need to get them on our own.
An important fix is eea2fb4851e9d ("ovl: proper cleanup of workdir") as
it allows mounting overlayfs with dirty workdir, e.g. after power cut.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Russell Senior reported an issue with the MR24 initramfs kernels:
> ## Booting kernel from Legacy Image at 00c10000 ...
> Image Name: POWERPC LEDE Linux-4.4.19
> Created: 2016-08-31 11:57:05 UTC
> Image Type: PowerPC Linux Kernel Image (gzip compressed)
> Data Size: 2155723 Bytes = 2.1 MiB
> Load Address: 00000000
> Entry Point: 00000000
> Verifying Checksum ... OK
>Wrong Ramdisk Image Format
>Ramdisk image is corrupt or invalid
For the MR24, the kernel is uploaded to 0x10000. The ramdisk starts
at 0x200000. This leaves the kernel with just 0x1f0000 bytes = 1984kb.
This patch adds a size check so the image creation script will abort
instead of producing a unbootable initramfs image. A separate patch
"apm821xx: Fix initramfs image for the Meraki MR24" which fixed the
reported issue was submitted earlier.
Cc: Russell Senior <russell@personaltelco.net>
Cc: Chris Blake <chrisrblake93@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
When gzip is used, our kernel is too large and this causes the ramdisk
to be at the wrong offset. Fix by moving to lzma.
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Add a patch to backport 5185c91385d73cdf79836eb8548e4726e43ae831
from Linux 4.8 adding USB2380 support to the NET2280 driver and
create an OpenWrt menu option to select it as a module.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
The Gateworks Ventana GW553x is a single-board computer based on the NXP
IMX6 SoC with the following features:
* IMX6 DualLite Soc (supports IMX6S,IMX6DL,IMX6Q)
* small form factor (35x70mm)
* 512MB DDR3 DRAM (2x32bit) (options up to 2GB)
* 256MB NAND flash (4GB option)
* Gateworks System Controller:
- hardware watchdog
- hardware monitor
- pushbutton controller
- EEPROM storage
- power control
* JTAG programmable
* 1x miniPCI socket (with PCIe, USB, SIM)
* 1x microSD socket
* 1x SIM socket
* Inertial Module (LSM9DS1 9DOF: 3x acc, 3x rate, 3x mag)
* analog CVBS video in
* GPS (optional uBlox EVA-M8M)
* Application headers:
- 2x TTL UART (TX/RX)
- 4x TTL GPIO (3x configurable as PWM)
- 3x CVBS Analog video input (1x decoder with 3x selectable inputs)
* Front panel connectors:
* micro-HDMI audio/video out
- 1x user programmable LED
- 1x configurable user pushbutton
- 1x USB OTG
See http://www.gateworks.com for more info
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Added gen_mvebu_sdcard_img.sh to facilitate creating an fixed-size sdcard image,
adding the bootloader and populating it with actual data.
Added the required rules for creating a 4GB sdcard image according to this layout:
p0: boot (fat32)
p1: rootfs (squashfs)
p2: rootfs_data (ext4)
This should be generic to any mvebu boards that can boot from block storage.
Added the new sdcard image to the Clearfog image profile.
Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [cleanup]
The u-boot variant for the clearfog is provided by the uboot-mvebu-clearfog,
and not by the generic uboot-mvebu packae.
Make sure the clearfog variant is selected when building for it.
Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This triggers HAS_FPU=y, and unsets CONFIG_SOFT_FLOAT.
Considering all mvebu boards have an fpu, this is the desirable behaviour.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
microSD is the primary boot media for the Clearfog Pro board, and should
work unconditionally.
Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [cleanup]
Add Support for the ESMT_F25L32QA and ESMT_F25L64QA.
These are 4MB and 8MB SPI NOR Chips from Elite Semiconductor Memory Technology
Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
TP-Link has started providing US- and EU-specific stock firmwares that only
allow upgrading to firmwares with the same region code. Provide factory
images for both these regions.
To avoid confusing users outside these regions, we still provide a
"universal" factory.bin without a region code, although flashing either of
the US and EU images would work as well.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Historically on ARC we started from initramfs-based images because:
a) It was much easier to debug especially when toolchain and other
components were changing quite dynamically
b) It was our usual approach for embedded Linux
But now with ARC port of Lede/OpenWRT getting more stable and mature
we're ready for more real-life scenarios with FS permanently stored
on SD-card. This essentially benefits from ability to setup devices
that survive reboots with all settings and extra packages kept in place.
Still we keep an ability to build images with initramfs.
This allows us to use storage-less simulators for testing still.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: John Crispin <john@phrozen.org>
Cc: Jo-Philipp Wich <jo@mein.io>
If we want to boot from SD-card we need to have corresponding
drivers already built-in so there's no point in having these
modules.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Now when we're switching to FS on SD-card it's necessary to have
full stack of MMC block & FC drivers built-in otherwise kernel won't
be able to mount FS with needed modules.
Also we enable parsing of input parameters passed to the kernel by
U-Boot. Otherwise kernel won't know where to look for command line and
what's worse device tree blob (we had to disable this by default for
cases when kernel is loaded by JTAG and core registers may have
undefined state lading to kernel going bonkers).
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
As support of ARC 770 in OpenWRT/Lede matures we don't need
debug-only output binaries any longer, so purging vmlinux for
AXS10x boards.
As for uImage for nSIM it makes completely no sense because there's no
way to run U-Boot on nSIM.
So we remove add_arcYYY_XXX scripts making code more compact and
cleaner.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Drivers have been modified to use it and new ones have to be written
this way, so we need it for backporting code.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
With 12fe4b5798 I switched the ath5k
eeprom extraction to an alternate code path. Unfortunately this code
seams to be broken since ages and broke the ath5k EEPROM extraction.
Reported-by: Mohammed Berdai <mohammed.berdai@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
Acked-by: John Crispin <john@phrozen.org>
DW GMAC on ARC SDP boards doesn't enter promiscuous mode if
Ethernet PHY haven't got established link. Good examples are
auto-negotiation in progress or disconnected cable.
We do see Linux kernel sets GMAC's MAC filter register
properly but GMAC's hardware doesn't accept new settings.
We believe it is a hardware issue, most probably problem of
integration of DW GMAC and PHY on the board.
As a work-around we completely disable frame filtering
in GMAC hardware (once and for good) which forces GMAC to enter
promiscuous mode with the first write to MAC filter register.
That gives us working bridge that consists of eth0 and wlan0
(USB Wi-Fi dongle). I.e. we finally have working "Dumb AP" setup made
of ARC AXS10x boards.
Given that hack is quite dirty (in loaded wired networks this will
effectively load CPU with junk packets even if user doesn't need promisc
mode) and there's no indication any other boards with DW GMAC suffer
from the same issue we're patching only kernel for ARC boards.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: John Crispin <john@phrozen.org>,
Cc: Felix Fietkau <nbd@nbd.name>
This allows referencing USB ports/devices that are always present in a
device. This applies to some internal devices, root hub ports and
internal USB hubs.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
The R7800 is an IPQ8065, so rename its dts file to reflect that fact.
Also fold the R7500v2 dts addition into the existing 800-devicetree.patch.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
1004kc is just a SMP capable 34kc, and GCC treats 24kc and 34kc exactly
the same and will generate identical code, so there is no need to tune
to 1004kc instead of 24kc.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
GCC treats 24kc and 34kc exactly the same and will generate identical
code, so there is no need to tune to 34kc instead of 24kc.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
GCC treats 24kc and 34kc exactly the same and will generate identical
code, so there is no need to tune to 34kc instead of 24kc.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Refresh patches for all targets that support kernel 4.4.
Compile-tested on all targets that use kernel 4.4 and aren't marked broken.
Runtime-tested on ar71xx, octeon and x86/64.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Point to correct devices when booting from msata or MMC
Changes fetched from Gateworks git
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
[Jo-Philipp Wich: rebased to apply against current LEDE version]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Alexis Green <alexis@cessp.it>
[Jo-Philipp Wich: add missing DEVICE_TITLE, fix model name in commit title]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
According to Jonas Gorski this is no longer needed, the problem
originally addressed by first adding 07_preinit_iface and subsequently
merging that into 02_network was probably a bug during the transition
to the new board.d pre-init approach.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Device/AVM unconditionally inherits Device/NAND, which changes the
sysupgrade image to sysupgrade-tar (instead of a "raw" sysupgrade image
as used in the Device/Default template).
This moves the Device/NAND call to the FRITZ3370 device definition, as
this is the only AVM/EVA device that uses NAND.
Additionally we have to define the IMAGE_SIZE for the AVM/EVA NOR
devices to ensure that the images are not discarded.
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
The image builder does not bundle sub-directories within $(KERNEL_BUILD_DIR),
therfore the intermediate "ventana-uImage.boot" directory is not shipped,
leading to failures with "make image" later on.
To circumvent the issue, store the intermediate boot files as tar archive
instead of putting them into a directory to ensure that they end up in the
final image builder tarball. Fixes FS#102
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
The image generation for TEW-691GR and TEW-692GR was broken since
79d02229 due to the move of the UMedia recipe to another Makefile.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Due to the missing phy-mode setting, the switch wasn't initialised.
The wireless requires an eeprom to work. Use the same mac addresses as
the stock firmware.
Signed-off-by: Mathias Kresin <dev@kresin.me>
The AR8327 initvals were not copied to the DTS during the switch from
mach file to device tree and broke the switch on the device.
The former used PORT6 related initvals were wrong and have been
corrected.
The phy mode setting for the switch was missing in the DTS as well.
The wireless requires an eeprom to work. The dual band wireless chips
have both bands enabled by default but only one band per chip is
working.
The stock firmware uses the following mac addresses:
LAN: AA:BB:CC:DD:EE:E4
WAN: AA:BB:CC:DD:EE:E4
2.4GHz: AA:BB:CC:DD:EE:E4
5 GHz: AA:BB:CC:DD:EE:E8
Assuming the mac address range :E4 to :E8 is reserved for this device,
the MAC addresses were reorder to have a unique MAC address for each
interface:
LAN: AA:BB:CC:DD:EE:E4
2.4GHz: AA:BB:CC:DD:EE:E4
WAN: AA:BB:CC:DD:EE:E5
5 GHz: AA:BB:CC:DD:EE:E8
Signed-off-by: Mathias Kresin <dev@kresin.me>
Fixes the following compiler warning:
Warning (reg_format): "reg" property in /ethernet@10100000/port@0 has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
Warning (avoid_default_addr_size): Relying on default #address-cells value for /ethernet@10100000/port@0
Warning (avoid_default_addr_size): Relying on default #size-cells value for /ethernet@10100000/port@0
Signed-off-by: Mathias Kresin <dev@kresin.me>
As it turned out we may actually build both initramfs and
SD-based images in one run with just a small tweak in
existing image/Makefile and so we do here.
We're back with one "generic" target for all ARC HS38-based bords.
Kudos to John for his patience and very helpful tips!
Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Jo-Philipp Wich <jo@mein.io>
Previous version was based on code from kernel 2.6.22 with Broadcom two
trivial modifications. This updates the copy to the version from current
kernel and refreshes the patch.
This was tested for regressions on Netgear R6250 (BCM4708A0), D-Link
DIR-885L (BCM4709C0) and Tenda AC9 (BCM47189B0).
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
We finally got kernel booting on this device and LAN ports are working,
so it won't "brick" the device. One more big missing thing is WAN port
support. It requires fix for BCM53125 to get switch port 5 working.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Over a year ago in a commit ac96a1665a ("bcm53xx: update Disable MMU
and Dcache during decompression") we switched to Florian's patch for
workarounding CFE bug. The main difference was using a part of existing
__armv7_mmu_cache_flush instead of implementing flushing separately.
This worked well for Northstar devices but doesn't work for BCM53573 as
these devices simply don't start booting with Florian's patch. It's
because of the ldmfd ASM instruction in the __armv7_mmu_cache_flush.
So this commit switches back to using standalone implementation. This
time instead of copying Broadcom's copy of cache-v7.S, we just make a
copy of the original file on our own. Unfortunately we can't cross-dir
compile cache-v7.S from ../../mm/ as that one also adds __INITDATA with
define_cache_functions v7 which would just trigger
> Error: unrecognized/unsupported machine ID (r1 = 0x0000007f).
The only real change Broadcom did in copied .S file was modifying mcr
instruction to use c6 instead of c14. It isn't clear to me if we really
need it, but let's use it for now.
By the way we also update commit message of the
[PATCH] ARM: BCM5301X: Disable MMU and Dcache during decompression
This makes kernel booting on BCM53573 successfully.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Zbtlink ZBT-WE1526 is based on Qualcomm Atheros QCA9531 v2.
Short specification:
- 650/400/200 MHz (CPU/DDR/AHB)
- 5x 10/100 Mbps Ethernet
- 1x USB 2.0
- 128 MB of RAM (DDR2)
- 16 MB of FLASH
- 2T2R 2.4 GHz, up to 22 dBm
- two external, non-detachable antennas
- 8x LED, 1x button
- UART header (pinout: VCC, RX, TX, GND)
Flash instruction:
Use sysupgrade in vendor firmare which is based on OpenWrt.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
It was needed upstream to avoid bcma references in the main code. To
match this new code our patch adding SRAB was also updated.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Historically on ARC we started from initramfs-based images because:
a) It was much easier to debug especially when toolchain and other
components were changing quite dynamically
b) It was our usual approach for embedded Linux
But now with ARC port of Lede/OpenWRT getting more stable and mature
we're ready for more real-life scenarios with FS permanently stored
on SD-card. This essentially benefits from ability to setup devices
that survive reboots with all settings and extra packages kept in place.
Still we keep an ability to build images with initramfs.
This allows us to use storage-less simulators for testing still.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: John Crispin <john@phrozen.org>
If we want to boot from SD-card we need to have corresponding
drivers already built-in so there's no point in having these
modules.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Now when we're switching to FS on SD-card it's necessary to have
full stack of MMC block & FC drivers built-in otherwise kernel won't
be able to mount FS with needed modules.
Also we enable parsing of input parameters passed to the kernel by
U-Boot. Otherwise kernel won't know where to look for command line and
what's worse device tree blob (we had to disable this by default for
cases when kernel is loaded by JTAG and core registers may have
undefined state lading to kernel going bonkers).
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
As support of ARC HS38 in OpenWRT/Lede matures we don't need
debug-only output binaries any longer, so purging vmlinux for
AXS10x boards.
As for uImage for nSIM it makes completely no sense because there's no
way to run U-Boot on nSIM.
So we remove add_archs38_XXX scripts making code more compact and
cleaner.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Instead of using off-the-tree .dts files for ARC boards we're
switching to use in-tree ones. And for that to work properly
we apply upstream patch that adds currently missing "model"
property.
Upstream patch and discussion could be found here:
http://lists.infradead.org/pipermail/linux-snps-arc/2016-August/001394.html
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Jonas Gorski <jonas.gorski@gmail.com>
Cc: John Crispin <john@phrozen.org>
These 2 trivial patches will be followed by a bigger bgmac rework so
they are worth backporting in a separated patch.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This fixes flash corruptions. It touches bcm47xxsflash driver shared
between brcm47xx and bcm53xx so put it in generic.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
It was adding unused variable:
drivers/mtd/devices/m25p80.c: In function 'm25p80_write':
drivers/mtd/devices/m25p80.c:85:6: warning: unused variable 'i' [-Wunused-variable]
int i;
^
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Use priv->wan instead of priv->id as indicator if packets should go to the
Ethernet WAN group (DPID=1) or not (DPID=0). This way, it's independant of
interface names or indexes.
Signed-off-by: Martin Schiller <mschiller@tdt.de>
By default USB LEDs are associated with usbdev trigger. However,
not all devices which have USB LEDs have kmod-ledtrig-usbdev in their
list of default packages. Add it to the relevant devices.
Signed-off-by: Matti Laakso <matti.laakso@outlook.com>
With an own DMA TX channel for each network device (eth0 + eth1) there
won't be any "tx ring full" errors any more.
This patch also move the spinlocks to the channel level instead of locking
the whole xrx200_hw structure.
Signed-off-by: Martin Schiller <mschiller@tdt.de>
The mw4530r-v1 profile in tp-link.mk is for Mercury MW4530R.
There is no such a device called TL-WDR4530.
Also change MERCURY to Mercury in /lib/ar71xx.sh
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
The bootmem area reserved for crashlog might be smaller than CRASHLOG_OFFSET
bytes, leading to an integer underflow when calculating the memory address
in crashlog_set_addr() which subsequently causes the kernel to crash when
attempting to vmap() the crashlog pages.
Change the logic to only consider the offset when the size of the used memory
area is sufficient.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
It adds and uses ILP clock that requires some other work (in progress)
for upstreaming it. Other than that it adds a quick fix for bcma to add
serial flash before trying to read SPROM.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
It wasn't accepted upstream as there was a discusson on Northstar vs.
BCM53573. Once we get a new ARM arch Kconfig entry it should be
possible to upstream it.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Instead of introducing a fake filesystem type, move the tar generation step
directly into the image build step.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
The previous image building code rework removed the rootfs.tar.gz with embedded
kernel and dtb build artifact which is required to build suitable SD images.
Reintroduce a .tar.gz artifact locally which embeds kernel and dtb, similar to
how the old code handled it.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Yue Cao claims that current host rate limiting of challenge ACKS
(RFC 5961) could leak enough information to allow a patient attacker
to hijack TCP sessions. He will soon provide details in an academic
paper.
Backports upstream commit 75ff39ccc1bd5d3c455b6822ab09e533c551f758
to the used LEDE kernel versions.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Should fix parser data containing uninitialized values for of probed
physmap flashes, which could break e.g. the redboot parser.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
This generates proper images when using CONFIG_TARGET_MULTI_PROFILE and
CONFIG_TARGET_PER_DEVICE_ROOTFS.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Thanks to this images for SoftMAC devices don't get brcmfmac anymore and
b43 is added for devices with (quite poor) support only.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This allows building images for selected devices with brcmfmac only
(without b43 which is for SoftMAC devices).
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Reviewed-by: Jo-Philipp Wich <jo@mein.io>
Thunder Timecloud is a small NAS with MT7621A. It has 1 USB port and an
SD Card slot. There is no wireless cards.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Due to the missing carrier status set, the interface wasn't usable on a
BTHOMEHUB2B after ip link down and up as it is done in preinit.
Signed-off-by: Mathias Kresin <dev@kresin.me>
According to the author of the cpu temp driver, not all xrx200 boards
have a cpu temperature sensor. For that reason enable the sensor only
for tested boards.
Signed-off-by: Mathias Kresin <dev@kresin.me>