That patch fixes handling SPI messages with two writing transfers. It's
important when using e.g. by m25p80 driver which uses one transfer for
opcode and another one for data.
Thanks to that fix we can now drop m25p80 workaround patch. It means one
less hack and also a better flash writing performance as there is no
more data buf copying.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
The advantage is that we don't have to specify max TRX size anymore and
otrx doesn't allocate a buffer of that size. It saves us allocating
32 MiB for every image we generate.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Refresh patches.
Compile-tested on ramips/mt7621 and x86/64.
Runtime-tested on ramips/mt7621 and x86/64.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Do not parse /tmp/sysinfo/board_name, /proc/cpuinfo or the device tree
compatible string directly. Always use the board_name function to get
the board name.
The admswconfig package still reads /proc/cpuinfo directly. The code
looks somehow broken and the whole adm5120 which uses this package
looks unmaintained. Leave it as it is for now.
Signed-off-by: Mathias Kresin <dev@kresin.me>
- Refreshed all patches
- Removed upstreamed
- Adapted 4 patches:
473-fix-marvell-phy-initialization-issues.patch
-----------------------------------------------
Removed hunk 5 which got upstreamed
403-net-phy-avoid-setting-unsupported-EEE-advertisments.patch
404-net-phy-restart-phy-autonegotiation-after-EEE-advert.patch
--------------------------------------------------------------
Adapted these 2 RFC patches, merging the delta's from an upstream commit
(see below) which made it before these 2.
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-
stable.git/commit/?h=v4.9.36&id=97ace183074d306942b903a148aebd5d061758f0
180-usb-xhci-add-support-for-performing-fake-doorbell.patch
-----------------------------------------------------------
- Moved fake_doorbell bitmask due to new item
Compile tested on: cns3xxx, imx6
Run tested on: cns3xxx, imx6
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Depending on busybox applet selection, paths of basic utiilties may differ,
and may not work as symlinks to busybox. Simply using whatever binary is
found in PATH and detecting symlinks automatically is more robust and
easier to maintain.
The list of binaries is also slightly cleaned up and duplicates are
removed.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
- Refreshed all patches
- Adapted 1 (0031-mtd-add-SMEM-parser-for-QCOM-platforms.patch)
Compile tested on: brcm2708, cns3xxx, imx6
Run tested on: brcm2708, cns3xxx, imx6
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
[Compile and run tested on brcm2708]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
CONFIG_SG_POOL symbol is selected only by CONFIG_SCSI, since the last
one is disabled by default then disable CONFIG_SG_POOL by default too.
And explicitly enable it only for platforms that use CONFIG_SCSI.
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
This model also contains few partitions non-discoverable partitions we
need to "protect". Othen than that it uses non-deprecated serial entry
in DTS that doesn't work with LEDE so we need to workaround it as well.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Many (most?) devices can't boot raw kernel using tftp and probably none
allows flashing it. It's way more usable to have TRX with kernel
containing initrams as such an image can be actually flashed.
An exception are Buffalo devices which have recovery mode with support
for booting kernels over TFTP. For them keep building default images.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This adds support for describing GPIO chips placed on PCIe cards. Thanks
to this we get working 2.4 GHz LED on Tenda AC9.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This fixes GIC interrupts (required before switching to 4.9), adds few
new entires & introduces DTS for Archer C5.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This driver has been added instead of improving spi-bcm53xx. It has some
advantages: allows SPI speed control & hopefully doesn't have bug that
was stopping us from using multiple SPI messages for writing flash data.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Initial idea was to use package with this PHY driver for devices that
need it. Unfortunately this can't work as bgmac is built-in and PHY
probing happens before loading modules - it results in PHY subsystem
picking default (generic) PHY driver.
There were two ways of solving this:
1) Making bcm53xx use bgmac as module
xor
2) Built-in Broadcom PHY driver
After some quick discussion it seems we can simply built-in the driver
as increased kenel size is relatively small (1805 B).
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
It's needed for macaddr_add.
Fixes: 50efd403e6 ("bcm53xx: set WAN MAC address to don't share one with LAN interface")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
It just makes code consistent. This trivial change may be a 17.01
candidate to provide simpler backporting experience.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
In kernel 4.9 it's already present so we don't want to overwite it (with
older & API incompatible version).
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
After analyzing numerous NVRAMs and vendor firmwares it seems the base
MAC address is used for LAN interface. WAN interface has different one
which sometimes is set directly in NVRAM and sometines needs to be
calculated.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
We override default Ethernet interface with eth0 which often uses random
MAC due to missing proper NVRAM entry. Fix this by manually assigning
MAC in the config.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
only factory images for DHP-EU and DHP2-JP (fw ver. 2.x) are built.
this will not work for DHP-JP/AP/TW (fw ver. 1.x) because they use
different buffalo_csum() formula.
Signed-off-by: FUKAUMI Naoki <naobsd@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This device has 2 TRX partitions (main one and failsafe one) and Linux
may not detect them properly failing to run userspace.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This specifies wireless limitations for Netgear R8000 making sure people
won't use channels incorrectly (limited performance). There are also 2
new DTS files not used by us yet.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This flag was added to 4.9 with upstream commit
76a4707de5e18dc32d9cb4e990686140c5664a15.
Signed-off-by: Victor Shyba <victor1984@riseup.net>
[refresh and adjust platform patches, fix commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
We don't use this driver since commit 741715331a ("bcm53xx: switch to
m25p80 and drop bcm53xxspiflash").
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
There are many targets using user space scripts to generate firmware but
bcm53xx doesn't need this, so let's disable that kernel option.
This lets us avoid some scary-looking kernel warnings like:
brcmfmac 0001:04:00.0: Falling back to user helper
firmware brcm!brcmfmac43602-pcie.txt: firmware_loading_store: map pages failed
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rob suggested I should use of_machine_is_compatible insteak of a new
property and updated patch has been sent.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Refresh patches on all 4.4 supported platforms.
077-0005-bgmac-stop-clearing-DMA-receive-control-register-rig.patch
removed as now upstream.
Compile & run tested: ar71xx - Archer C7 v2
Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
This patch bumps the 4.4 kernel from .28 to .30 and refreshes the patches.
Compile-tested on ar71xx, x86/64, ramips/mt7621, brcm47xx and kirkwood.
Run-tested on ar71xx & ramips/mt7621, brcm47xx and kirkwood (last two confirmed
by P. Wassi).
Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
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>
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>
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>
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>
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>
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>
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>
It is used by a core build template, so the variable should be
initialized and added to DEVICE_VARS in the core.
Same for DEVICE_DTS_DIR
Signed-off-by: Felix Fietkau <nbd@nbd.name>
We call all commands normally, with standard echoing. It's useful for
debugging with V=s. Don't make lzma compression an exception, it's a bit
confusing this way.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
We don't want checksum to cover any part of UBI as even its part with
SquashFS may be changed due to e.g. flash wearing.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
This reverts commit b3be33f135.
CFE is known to fail in some non-standard cases, e.g. when using kernel
or format different that what was tested by Broadcom. This kernel change
triggered some problem with booting OpenWrt kernel stored in Seama.
As long as Seama checksum was covering enough data, it was working fine.
We need to change it however, because calculating MD5 over part of UBI
containing SquashFS is unsafe. UBI may move PEBs depending on flash
wearing level which would break CFE booting the image.
For some reason this kernel change was breaking CFE. Calculating MD5
over 0x47ffc0 B data or less (there is 0x40 B long header) was stopping
booting process at:
Starting program at 0x00008000
As our kernel is usually 0x3fffc0 B it was affected by this problem.
Reverting this change fixes sysupgrade (which already uses kernel size
for MD5 calculation) and will allow us to adjust "fixseama" command call
on the first boot.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
In kernel 4.7 there is upstreamed b53 driver using (mostly?) the same
symbols as our b53 does. Change our symbols so both drivers can coexist
in kernel tree.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Acked-by: Jonas Gorski <jonas.gorski@gmail.com>
Both scripts modified by this patch were added by me. First of all I
incorrectly added OpenWrt as Copyright holder. It was wrong because:
1) I simply can't transfer my moral rights according to the Polish law
2) Transfering copyrights (economic rights) requires an agreement which
I didn't sign with OpenWrt(.org).
Other than that I don't find these trivial scripts important enough to
put info about *my* copyrights in a header so this patch just drops them
completely.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
For some time now m25p80 supports 32 MiB flashes and we just needed to
patch spi-nor to support JEDEC incompatible w25q128. Also by switching
to m25p80 we gain accelerated SPI flash reads.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 49260
It was already increased for NAND devices so do the same for the ones
with serial memory.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 49207
This reverts commit r48961. It didn't fix PCIe host driver issue as
there are more aborts triggered by it.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 49120
4.3 isn't oficially used anymore but it may be useful for debugging PCI
host driver regression. SPROM driver doesn't seem to work correctly with
4.3:
[ 2.336686] bcma: bus0: Using fallback SPROM failed (err -2)
[ 2.342366] bcma: bus0: No SPROM available
but it at least compiles now.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 49113
Initially 4.4 didn't work on bcm53xx because network was breaking few
seconds after setting interfaces. It's fixed since r48059 (switching
from 4.4-rc5 to 4.4-rc7).
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 48510
It was never tested, most likely not working (because of le32_to_cpu)
and not upstreamed.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 48060
Replace former uci-defaults.sh implementation with the uci-defaults-new.sh one
and update all users accordingly.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 47867
This replaces old bcm53xx patch for scanning whole flash and makes
bcm47xxpart compatible with NAND.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 47800
This removes calls to ucidef_set_interfaces_lan_wan() and
ucidef_set_interfaces_lan() on boards where all relevant info can be
inferred from the switch definition.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 47722
This changes uci-defaults-new.sh, config_generate and all relevant board.d
files in order combine ucidef_add_switch() and ucidef_add_switch_ports() into
a single function.
Also removes now superfluous enable and reset arguments.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 47721
This updates the iProc PCIe driver to the version currently submitted
for kernel 4.5.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 47688
Broadcom submitted new SMP patches for this SoC to upstream Linux, add
them to OpenWrt.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 47687
This also deactivates some workaround for erratas only seen in older
CPU cores and L2 cores not used in this SoC.
This partly reverts commit r44947.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 47686
This patch is currently placed directly behind the SMP patches and has
nothing to do with SMP, move it to an other position.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 47685
compat-wireless/backports now contains a bcm47xx_nvram.h file to
backport some of the functions in it which are used by the bcmfmac
driver. This file just checks for the kernel versions and provide an
empty implementations on older kernel versions. This is OK on most
systems, but on bcm47xx / bcm53xx systems we want to call the real
functions here. This commit removes the file from backports in our
build process like we do it with the bcma and ssb header files. Instead
we add a recent version into our kernel so all code uses only one
header file. On bcm47xx / bcm53xx the real implementations of this code
will be used.
Reported-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 47467
According to the info from NVRAM we should use port 8 for the CPU (and
interface eth2). Unfortunately it doesn't work right now, so lets switch
to the port 5.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Forwardport of r46586 from 15.05
SVN-Revision: 47281
These patches are written by Broadcom and will be in mainline Linux
kernel soon. I had some problems to get them backported to kernel 4.1,
so currently they are only available for 4.3.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 47253
The files directory is now split up into the files which are needed for
every kernel version and the files only needed by kernel 4.1. The files
in files-4.1 are already merged into mainline kernel 4.3. This patch
only removed patches which were merged into mainline kernel 4.3.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 47251
This replaces our SMP implementation with a very similar version which
is Broadcom currently trying to get into mainline kernel.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 47247
Add device tree files for Broadcom Northstar based SVKs. Since the
bcm5301x.dtsi already exists, all that is necessary is the dts files to
enable the UARTs. With these files, the SVKs are able to boot to shell.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 47246