Jo-Philipp Wich [Tue, 26 May 2015 09:17:13 +0000 (09:17 +0000)]
include: clean package staging dir files before configure
This is required to allow packages to ship libraries with a different API.
Previously the linker would favor the old shared libraries in STAGING_DIR
instead of the just compiled ones in PKG_BUILD_DIR.
Avoid that problem by clearing the package staging files right after
prepare.
Jo-Philipp Wich [Tue, 26 May 2015 09:16:50 +0000 (09:16 +0000)]
iptables: reduce binary size
* drop unused lenient restore patch
* instead of statically linking core extensions, build shared libraries
for reuse in fw3
* strip outdated match revisions and aliases to trim down library size
Felix Fietkau [Mon, 25 May 2015 21:15:37 +0000 (21:15 +0000)]
mpc85xx: TL-WDR4900: Fix port 6 being shown as up (10MBit/half) in LUCI/swconfig
Currently port 6 is shown as up 10MBit/half in LUCI and swconfig.
Reason is that all bits in the port 6 config are zero.
This means that also the aneg flag is not set and in this case
ar8216_read_port_link hardcodes the link to be up.
This is no real problem but a little annoying.
To fix this initialize port 6 with the aneg bit enabled.
This causes ar8216_read_port_link to evaluate the link status bit which is
always zero for port 6 as no PHY is connected to this port.
And it doesn't hurt as port 6 isn't connected to anything on TL-WDR4900.
John Crispin [Sat, 23 May 2015 15:28:42 +0000 (15:28 +0000)]
Makefile: remove non-existent STAGING_DIR_TOOLCHAIN from dirclean
Makefile: remove non-existent STAGING_DIR_TOOLCHAIN from dirclean
Openwrt's top level Makefile uses STAGING_DIR_TOOLCHAIN in the make dirclean
statement.
https://dev.openwrt.org/browser/trunk/Makefile#L55
rm -rf $(STAGING_DIR) $(STAGING_DIR_HOST) $(STAGING_DIR_TOOLCHAIN)
$(TOOLCHAIN_DIR) $(BUILD_DIR_HOST) $(BUILD_DIR_TOOLCHAIN)
As far as I can determine, no such variable has been defined. I made a search
in Openwrt source repository and the one line in Makefile's dirclean command
is the only place where that variable exists.
The item has been introduced to Makefile by r8362, but even at that time
neither Makefile nor rules.mk defined such a variable. Most likely the goal
has been to set both staging_dir/toolchain and build_dir/toolchain to be
cleaned, but one of the variables has been erroneous. The correct variable
for build_dir/toolchain has been then added by r13494.
In current code,
TOOLCHAIN_DIR = $(TOPDIR)/staging_dir/$(TOOLCHAIN_DIR_NAME)
BUILD_DIR_TOOLCHAIN = $(TOPDIR)/build_dir/$(TOOLCHAIN_DIR_NAME)
so the item STAGING_DIR_TOOLCHAIN in the rm command is unnecessary.
John Crispin [Sat, 23 May 2015 15:28:02 +0000 (15:28 +0000)]
ipq806x: add & enable cpufreq support
This change set enables frequency scaling on ipq806x, which speeds-up
the CPU and allows it to achieve its max frequency.
These patches are cherry-picked & backported from the following location:
*130-132: linux-next
*133-143: LKML - https://lkml.org/lkml/2015/3/21/15
*144: derived from other qcom similar dts
*145: derived from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-3.14/drivers/cpufreq/cpufreq-krait.c
John Crispin [Sat, 23 May 2015 15:27:45 +0000 (15:27 +0000)]
ipq806x: disable i2c device on gsbi4
Patch cherry-picked from the following location:
https://chromium-review.googlesource.com/#/c/269931/
Disable the i2c device on gsbi4 and mark gsbi4_h and gsbi4_qup clks as
unused. If they are enabled, clock framework will turn them off at end
of probe. On ipq806x by design gsbi4_qup, gsbi4_h clks and i2c on gsbi4
are meant for RPM usage. So turning them off in kernel is incorrect.
John Crispin [Sat, 23 May 2015 15:27:22 +0000 (15:27 +0000)]
ar71xx: Add support for the Meraki MR12 & MR16
This patch is to add support for the Meraki MR12 and MR16 Access Points.
Currently everything is working, minus the 2nd NIC interface on the MR12
which is built into the SoC.
Signed-off-by: Chris R Blake <chrisrblake93 at gmail.com>
SVN-Revision: 45726
John Crispin [Sat, 23 May 2015 15:27:10 +0000 (15:27 +0000)]
rampis: add support for status led on ASUS RT-N14U
The diag.sh script lacked an entry for the status led on the RT-N14U,
map it to the asus:blue:power led which is also used by the boot loader
to report boot status (eg. TFTP recovery mode VS normal boot)
John Crispin [Sat, 23 May 2015 15:27:05 +0000 (15:27 +0000)]
ramips: Adding support for AXIMCom MR-102N 3G/4G Travel Mobile Router
MR-102N is a RT3050F based wireless router(32M RAM + 8M NOR flash) with 1 USB
and 1 ethernet port. The original product information can be found at:
http://www.aximcom.com/en/MR-102N
John Crispin [Sat, 23 May 2015 15:26:39 +0000 (15:26 +0000)]
ramips: add support for Comfast CF-WR800N
This patch adds support for Comfast CF-WR800N, a wall-plug wireless router
based on the MT7620N SoC with one Ethernet port and a 802.11n 2.4 GHz radio.
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
SVN-Revision: 45722
John Crispin [Sat, 23 May 2015 15:26:19 +0000 (15:26 +0000)]
uClibc: add signal info for seccomp related SIGSYS
uClibc doesn't define signal info for the SIGSYS signal which is issued
in case of hitting a syscall prohibited by seccomp.
This is sad as it makes debugging seccomp filter policies impossible on
some architectures (at least ARM and PowerPC, maybe also others) which
do not coincidentally set si_value.sival_int as the syscall number.
To fix this, import the definitions and macros needed from glibc.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 45720
John Crispin [Sat, 23 May 2015 15:25:59 +0000 (15:25 +0000)]
lantiq: Fix initialization of the PCI IRQs when PCIe is also enabled
There are already ifx_pcie_bios_{map_irq,plat_dev_init} hooks defined in
ifxmips_pcie.c. Instead of defining a new hook we simply re-use the
existing ones (this is basically what the lantiq BSP code does).
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
SVN-Revision: 45718
John Crispin [Sat, 23 May 2015 15:25:51 +0000 (15:25 +0000)]
lantiq: Fix PCIe bus when PCI is also enabled.
The PCIe bus seems to require a hack/workaround when PCI is enabled as
well. Unfortunately this is guarded by an CONFIG_IFX_PCI ifdef, which is
only defined in lantiq's BSP code. The config symbol for the upstream
lantiq PCI driver is CONFIG_PCI_LANTIQ.
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
SVN-Revision: 45717
Florian Fainelli [Fri, 22 May 2015 22:33:41 +0000 (22:33 +0000)]
tools: gengetopt: Disable doc and tests builds
Simply disable the build of the "doc" and "tests" directories to speed up the
build and avoid the potential for errors coming from external tools being used
(e.g: source-highlight installed on a non-standard location).
Jonas Gorski [Thu, 21 May 2015 19:32:16 +0000 (19:32 +0000)]
mac80211: make it work with 3.18.12+
3.18.12 backported 61ada528dea028331e99e8ceaed87c683ad25de2 ("sched/wait:
Provide infrastructure to deal with nested blocking") from 3.19, causing
the following error on load:
[ 13.588000] compat: exports duplicate symbol woken_wake_function (owned by kernel)
Fix this by guarding it with a check for 3.18.11 or earlier instead of
3.19.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 45710
Jonas Gorski [Thu, 21 May 2015 19:31:54 +0000 (19:31 +0000)]
brcm63xx: Add Huawei HG655b support
This patch adds support for the Huawei HG655b.
Nothing much special in this router, it's just another BCM6368 with
a Ralink RT3062 wifi chip and the calibration data embedded in the
main flash chip at offset 0x7c0000. There is also configuration data
used by the OEM firmware before the cal_data partition, this area is
protected by the board_data partition in this patch.
Signed-off-by: Daniel Gonzalez <dgcbueu@gmail.com> Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 45708
Steven Barth [Wed, 20 May 2015 19:23:33 +0000 (19:23 +0000)]
generic/4.0: fix error during kernel patch application
Commit 5168c9a5702648eb690d32ec821647aca80aeba9 introduced a regression
during patch application on the 4.0 kernel. Some of the patched content
doesn't match the actual code, therefore leading to the following error:
Applying patch generic/667-ipv6-Fixed-source-specific-default-route-handling.patch
patching file net/ipv6/ip6_output.c
Hunk #1 FAILED at 886.
1 out of 1 hunk FAILED -- rejects in file net/ipv6/ip6_output.c
patching file net/ipv6/route.c
Hunk #1 succeeded at 2247 (offset 2 lines).
Patch generic/667-ipv6-Fixed-source-specific-default-route-handling.patch does not apply (enforce with -f)
This change just adapts the actual patch to fix what is in kernel 4.0
and make it apply cleanly.
Hauke Mehrtens [Tue, 19 May 2015 22:17:16 +0000 (22:17 +0000)]
tools/mkimage: backport gcc5 compatibility, patch
Fedora 22 includes gcc5 by default
build leads to error:
include/linux/compiler-gcc.h:114:30: fatal error: linux/compiler-gcc5.h: No such file or directory
Jonas Gorski [Tue, 19 May 2015 09:13:17 +0000 (09:13 +0000)]
base-files: fix default pre-/postrm for packages with a dot
Instead of stripping everything after the first dot, strip everything
after the last dot.
This fixes pre-/postrm actions for packages with a dot in their name,
like libusb-1.0.
Fixes #19668.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 45702
Rafał Miłecki [Sat, 16 May 2015 17:14:25 +0000 (17:14 +0000)]
bcm53xx: try to fix network on Asus RT-AC87U
This device seems to have switch port 7 connected to the CPU:
vlan1ports=1 2 3 5 7*
vlan2ports=0 7u
it should be handled by eth1 and NVRAM seems to confirm that (no
et0macaddr entry, existing et1macaddr & et1phyaddr entries).
One of the remaining ports (4/8?) may be connected to the Quantenna SoC.
Original firmware boot log contains following messages:
(0x00,0x5d)Port 5 States Override: 0xfb
(0x00,0x5f)Port 7 States Override: 0xfb
(0x00,0x0e)Port 8 States Override: 0x0a
(why does it force port 5 state?!)
Rafał Miłecki [Wed, 13 May 2015 13:11:04 +0000 (13:11 +0000)]
bcm53xx: fix default network interface on Netgear R8000
It has 3 Ethernet interfaces, each of them connected to separated switch
port. Default NVRAM uses switch port 8 as CPU which is connected to the
3rd interface (eth2).
Rafał Miłecki [Tue, 12 May 2015 13:18:53 +0000 (13:18 +0000)]
b53: Allow using all ports on BCM53012
This chipset has at least 8 usable ports, e.g. Netgear R8000 has ports
5, 7 and 8 connected to Ethernet interfaces:
vlan1ports=0 1 2 3 5 7 8*
vlan2ports=4 8u
Port 6 seems to be always disabled.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 45676
Felix Fietkau [Sun, 10 May 2015 16:09:58 +0000 (16:09 +0000)]
mtd: remove the warning about read-only caused by size vs. block boundary mismatch
Since the kernel/rootfs split handling was modified 2 years ago by r37283 (
https://dev.openwrt.org/changeset/37283 ) and by the subsequent checkins,
users have seen rather scary mtd errors in the log at every boot. The message
ends "-- forcing read-only", which looks a bit error-like. That error has
been mentioned in some forum threads, when users have noticed this message
instead of some actual error.
[ 2.940000] 0x000000070000-0x000000ff0000 : "firmware"
[ 2.970000] 2 netgear-fw partitions found on MTD device firmware
[ 2.970000] 0x000000070000-0x000000188440 : "kernel"
[ 2.980000] mtd: partition "kernel" must either start or end on erase
block boundary or be smaller than an erase block -- forcing read-only
[ 2.990000] 0x000000188440-0x000000ff0000 : "rootfs"
The patch removes the rather useless warning message.
Felix Fietkau [Sun, 10 May 2015 11:47:09 +0000 (11:47 +0000)]
ipq806x: add pcie support to ipq806x based platforms
This change adds PCIe support to IPQ806x based platforms. The driver is
actually cherry-picked from the following LKML thread:
*https://lwn.net/Articles/643086/ (patches 110-111)
We also add here an additional fix to support multiple PCI controllers
on the same platform (patch 112), and to patch the ap148 & dbs149 DTS
files (patch 113).
Felix Fietkau [Sun, 10 May 2015 11:47:02 +0000 (11:47 +0000)]
ipq806x: add support for zImage kernel
This change enable zImage+appended dtb support in ipq806x kernel
options. The zImage will now be generated as part of the kernel
binaries. Platforms which do not have DT support enabled in U-boot
can now make use of it by generating zImage files and appending dtb
to it.
It is not used yet but it is done as a stepping stone for early IPQ806x
platforms, which did not include DT support in U-boot.
Felix Fietkau [Sun, 10 May 2015 11:46:56 +0000 (11:46 +0000)]
ipq806x: fix boot freeze on zImage kernel
ARCH_QCOM is using the ARCH_MULTIPLATFORM option, as now recommended
on most ARM architectures. This automatically calculate ZRELADDR by
masking PHYS_OFFSET with 0xf8000000.
On IPQ806x though, the first ~20MB of RAM is reserved for the hardware.
In newer bootloader, when DT is used, this is not a problem, we just
reserve this memory in the device tree. But if the bootloader doesn't
have DT support, then ATAGS have to be used. In this case, the ARM
decompressor will position the kernel in this low mem, which will not be
in the RAM section mapped by the bootloader, which means the kernel will
freeze in the middle of the boot process trying to map the memory.
As a work around, this patch allows disabling AUTO_ZRELADDR when
ARCH_QCOM is selected. It makes the zImage usage possible on bootloaders
which don't support device-tree, which is the case on certain early
IPQ806x based designs.
Felix Fietkau [Sun, 10 May 2015 11:46:41 +0000 (11:46 +0000)]
generic: add CRYPTO_DEV_QCE option to default config
This option has been added in kernel 3.17. It shows-up only when both
ARCH_QCOM and CRYPTO are enabled. So we'll disable these two by default
to avoid stalling the build when these conditions are met.
Felix Fietkau [Sun, 10 May 2015 11:17:29 +0000 (11:17 +0000)]
build: don't call prereq for any package/symlinks rules
Most of the time, we want to make sure OpenWrt has been configured and
setup before start running make. However, in case of package/symlinks,
forcing prereq as a dependency creates multiple issues:
*when executed on a clean workspace, it will prompt for user input
and open a menuconfig window before executing the feeds command
*the only way around that is to provide a .config. However, the "prereq"
target would then run a "make defconfig", which will remove all the
packages in the .config but from external feeds, as feeds have not been
installed yet.
The only way to currently work around this, is to generate a fake config
by running "make defconfig", then "make package/symlinks", copy the real
config (which at this point disregards the previously generated config),
and run make defconfig again. Something like this:
make defconfig
make package/symlinks
cp real.config .config
make defconfig
This change is removing the need for the first defconfig, making the
process more logical for OpenWrt users using the package/symlinks target.