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>