Commit graph

38338 commits

Author SHA1 Message Date
Daniel Golle
181bc02d2e rt2x00: mt7620: yet another beauty session
So here is another round of improvements for MT7620 WiFi.

This commit fixes a few significant issues related to TX_PWR_CFG_x and
TX_ALC and also makes the code more readable by adding register
descriptions for things added for MT7620 and use the usual bit-field
access macros and the now defined macros instead of plain bit-ops and
magic numbers.

Properly describe EEPROM_TARGET_POWER at word 0x68 (== byte 0xD0) and
thereby fix internal TXALC which would otherwise just read
out-of-bounds of the EEPROM map.

Split-out tx-power/ALC related stuff into an additional function.
Fix VCO calibration, it was carried out properly in the channel
switching but incomplete in the actual VCO calibration function.
Also there is no need to trigger VCO calibration in channel switching,
the VCO calibration function is already being called at this point.
Remove it from channel switching function to avoid redundant code.

The TX power calibration differs significantly from all other
Mediatek/Ralink chips: They finally allow 0.5dB steps stored as 8-bit
values for (almost) each bitrate -- and promptly ran out of space and
for some reason didn't want to change the EEPROM layout. The hence
opted for a scheme of sharing values for some adjecent bitrates and
a highly over-complicated (or obfuscated?) way to populate the
TX_PWR_CFG_x registers with the values stored in the EEPROM.
The code here now looks much less complicated than what you see in the
vendor's driver, however, it does the exact same thing:
bGpwrdeltaMinus is a constant and always TRUE, hence half of the
code was dead. Gpwrdelta is always 0 (rather than using the value read
from the EEPROM). What remains is some very grotesque effort to avoid
0x20, probably some hardware bug related to some misunderstanding of
what a singed 8-bit value is (imagine: if it was a signed 6-bit value
then someone could believe that 0x20 == 0x0). And then they didn't
clean it up once they later on anandonned that whole story of having a
constant offset for 40 MHz channels and just set the offset to be
constant 0 -- there is no effort for avoiding 0x20 for the 20 MHz
values stored in the EEPROM, hence that's probably just a forbidden
value in the EEPROM specs and won't appear anyway...
Anyway, the whole thing felt like solving some college math test
where in the end everything cancels out and the result equals 0 ;)
To make sure that channel bandwidth power compensation really doesn't
need to be taken care of, output a warning when the corresponding
value stored in the EEPROM is non-zero.

Also there is no apparent reason to refrain from initializing RFCSR
register 13, it doesn't fail what-so-ever.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-03-09 17:56:16 +01:00
Rafał Miłecki
edda26dc4f bcm53xx: fix memory corruption caused by iproc PCE controller driver
This is a simple revert of upstream patch for now.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-09 11:06:55 +01:00
Kevin Darbyshire-Bryant
3a06dd60eb dnsmasq: do not forward rfc6761 excluded domains
RFC 6761 defines a number of top level domains should not be forwarded
to the Internet's domain servers since they are not responsible for
those domains.

This change adds a list of domains that will be blocked when 'boguspriv'
is used and augments that which is already blocked by dnsmasq's notion
of 'local service' using '--bogus-priv' i.e. RFC 1918 private addresses
and IPv6 prefixes as defined in RFC 6303.

To make this configurable rather than hard coded in dnsmasq's init
script, a new file /usr/share/dnsmasq/rfc6761.conf is conditionally
included.

The default file matches the RFC 6761 recommendation along with a few
other top level domains that should not be forwarded to the Internet.

Compile & run tested Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-03-09 10:42:27 +01:00
Ansuel Smith
2261c9cc77 mvebu: add default sata trigger
Change dts file to add default sata trigger to sata led.

Backport upstream accepted patch to add sata trigger to device tree
source files already upstreamed.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
[backport upstream accepted patch]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-08 19:06:04 +01:00
Ansuel Smith
3d0bd15056 mvebu: enable disk led trigger
As we have a disk led we enable the disk trigger that work with the easata port

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2017-03-08 19:06:04 +01:00
Alex Maclean
6254a2028c lantiq: add support for the Alpha ASL56026
The ASL56026 is a VDSL2 router with dual 100mbit ethernet,
also known as the ECI B-FOCuS V-2FUb/I.

CPU: Lantiq XRX268 v1.1 at 333MHz
Modem: Lantiq VRX208
RAM: 32MiB DDR2 at 167MHz
Flash: 8MiB NOR, Spansion S29GL064N90TF04

UART is at JP1:
Pin 1 TX
Pin 2 GND
Pin 3 +3.3V
Pin 4 NC
Pin 5 RX

Boot selection pins are exposed via several resistor jumpers:
boot_sel0 is at J15, on the rear of the board. Default is high.
boot_sel1 is at J3, next to the flash - it is also the flash CE# pin. Default is low.
boot_sel2 is at J12, directly below the SoC. Default is low.
boot_sel3 is at J16, on the rear of the board. Default is low.

The boot_sel pins should never be shorted, the jumper must be moved or
a lower value resistor used to change the pull (existing resistors are 4k7, 1k should work)

To install with the stock bootloader you must break the built in image selection process
which uses at least the following vars: f_upgrade_addr, f_upgrade2_addr, loadaddr, kernel_addr, activeregion, committedregion
This is done by setting loadaddr and both f_upgrade_addr vars to the same address:

	VR9 # setenv loadaddr 0xB0040000
	VR9 # setenv f_upgrade_addr 0xB0040000
	VR9 # setenv f_upgrade2_addr 0xB0040000
	VR9 # saveenv

Then flash the firmware image:

	VR9 # tftpboot 0x81000000 lede-lantiq-xrx200-ASL56026-squashfs-sysupgrade.bin
	VR9 # erase B0040000 +${filesize}
	VR9 # cp.b 0x81000000 0xB0040000 ${filesize}

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2017-03-08 19:06:04 +01:00
Alex Maclean
a9b74f9f81 lantiq: clarify VG3503J name
Append the ECI model to the device name, to avoid confusion with the
older model.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2017-03-08 19:06:04 +01:00
Rafał Miłecki
154b3a6863 kernel: backport first bcma 4.12 patch for GPIO and of_node
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-08 16:55:21 +01:00
Felix Fietkau
92b5b360fe ipq806x: clean up dts patch
Move dts files to files/, remove useless patch chunks

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-08 14:38:22 +01:00
Felix Fietkau
2a3952bcd5 kernel: re-apply 300-arch-arm-force-ZRELADDR-on-arch-qcom.patch on 4.9 (FS#549)
Fixes memory corruption issues. See commit bdcba36442 for more
details.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-08 14:38:22 +01:00
Felix Fietkau
9f09bd6606 ipq806x: refresh patches
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-08 14:38:22 +01:00
Piotr Dymacz
b6e3b70790 ugps: fix and improve init script
The ugps tool expects device path in last argument. If it's provided
before other options, they won't be processed at all.

Additionally, make it possible to use absolute path for gps character
device in related uci configuration.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-08 13:32:24 +01:00
Rafał Miłecki
318f2d6101 kernel: fix of_node handling in LEDs core code
This backports fixes for setting of_node and making it possible to read
extra info from DT. This was partially fixed by:
[PATCH] leds: leds-gpio: Set of_node for created LED devices
but it didn't work during initialization.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-08 13:06:16 +01:00
Stijn Tintel
4124847772 brcm2708: detect Raspberry Pi Zero W
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-03-08 09:03:39 +01:00
Stijn Tintel
a8c2a719fa brcm2708: order boards and models alphabetically
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-03-08 09:03:27 +01:00
Jo-Philipp Wich
2543e986ad ramips: fix Linksys RE6500 switch port mapping
Properly map the internal switch ports to the proper LAN1..LAN4 labels.

Fixes #530.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-03-07 17:39:20 +01:00
Yousong Zhou
78f14c099d openvpn: move list of params and bools to a separate file
So that future patches for addition/removal of them can be more
readable

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-03-07 21:31:59 +08:00
Claudiu Brasovean
c70c6ac070 procd.sh: use parameterized respawn values
continue work started here: http://patchwork.ozlabs.org/patch/520859

Extend /etc/config/system with parameters to set the default respawn treshold and respawn timeout
	for procd launched services that have respawn enabled.
This results in cleaner init scripts, while making sure services have respawn parameters set.

Signed-off-by: Claudiu Brasovean <cbrasho@gmail.com>
2017-03-07 11:40:36 +01:00
Felix Fietkau
0504cd22aa ar71xx: fix build without CONFIG_NOP_USB_XCEIV (FS#593)
Open-code usb_phy_generic_register instead of calling it, since it is
really trivial. Avoid pulling CONFIG_NOP_USB_XCEIV into the kernel
config and add a proper dependency instead

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-07 11:37:50 +01:00
Felix Fietkau
f2516e53c1 kernel: fix usb chipidea controller support
If ehci platform driver is loaded before the chipidea controller driver,
both are competing for the same IO resources and the generic driver gets
used for the hardware. This results in USB device mode being
unavailable.
Split generic EHCI support code out of kmod-usb2, so that the chipidea
driver can be included without also pulling in the generic one. Also
rework the load order, so that the chipidea driver gets loaded first, in
case both are installed

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-07 11:37:50 +01:00
Felix Fietkau
2422f84b1b kernel: disable deprecated CONFIG_USB_EHCI_ATH79 symbol
USB_EHCI_HCD_PLATFORM is used instead

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-07 11:37:50 +01:00
Jo-Philipp Wich
64de1cb1fd ppp: propagate master peerdns setting to dynamic slave interface
Honour the parent interfaces peerdns option when spawning a virtual DHCPv6
interface in order to avoid pulling in IPv6 DNS servers when the user opted
to inhibit peer DNS servers in the configuration.

Fixes #597.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-03-07 11:26:39 +01:00
Hans Dedecker
a8e0816490 odhcpd: add loglevel uci option in odhcpd defaults
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-06 17:38:33 +01:00
Hans Dedecker
42e3053ee4 procd: update to git HEAD version
8f218f5 procd: service gets deleted when its last instance is freed
35209a0 procd: update modprobe path

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-06 17:37:25 +01:00
Hans Dedecker
28509d6809 odhcp6c: update to git HEAD version
c69555c dhcpv6: use PRIu64 print macro

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-06 17:37:01 +01:00
Jo-Philipp Wich
aedd5d5cb0 opkg: fix several package installation bugs
Update to latest Git in order to import the following fixes:

19070b6 unarchive: fix possible segmentation fault in deb_extract()
758527e pkg: forward "provided_by_hand" flag in pkg_merge()
1fdc2ca pkg: mark bit fields in pkg_t unsigned
15fc1ee opkg_cmd: avoid null pointer dereference in opkg_what_depends_conflicts_cmd()
439c89e opkg_cmd: fix endless loop in whatprovides/whatreplaces
0fb3e9f pkg_depends: propagate virtual provided detail flag to providers
793155f pkg_depends: fix unsatisfied dependency installation order
b1dc770 libopkg: fix some overly aggressive line wrapping in pkg_depends.c

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-03-06 13:02:35 +01:00
Felix Fietkau
697ff33771 kernel: fix whiteout rename on ubifs (FS#579)
This was apparently caused by some linux upstream merge damage

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-06 10:12:42 +01:00
Wojciech Jowsa
f223c4a923 ar71xx: set status led for the gl-* boards
Signed-off-by: Wojciech Jowsa <w.jowsa@radytek.com>
2017-03-06 07:50:11 +01:00
John Crispin
787cb58574 kernel: more tpm related symbols
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-06 07:16:50 +01:00
John Crispin
7e4b869c45 fstools: add blockd
this daemon replaces mountd.

Signed-off-by: John Crispin <john@phrozen.org>
2017-03-06 07:16:50 +01:00
John Crispin
6a772cb953 mountd: drop in favour of blockd
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-06 07:16:50 +01:00
Florian Fainelli
cbfaba8f3f odhcpd: Bump to latest HEAD
Brings in the following change:

9eac2a896341 dhcpv6-ia: Check lockf return value

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-05 14:03:27 -08:00
Yousong Zhou
6c9345bd8c malta: restore "be" subtarget from being source-only
The malta "be" and "le" subtargets share the arch with many devices of
ar71xx and ramips.  They can be handy for testing, debugging, trying
both snapshot and release builds.

This commit makes the "be" subtarget part of the ci and release builds

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-03-05 16:34:17 +01:00
Florian Fainelli
7f0c95a7df toolchain: Allow external toolchains to specify libthread-db
We need to let external toolchains be able to specify the path and
specification file to the libthread-db POSIX thread debugging shared
libraries.

This fixes GDB not being able to be installed because it is depending on
libthread-db:

Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies
 * for gdb:
 *      libthread-db *
 * opkg_install_cmd: Cannot install package gdb.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-04 11:19:56 -08:00
Álvaro Fernández Rojas
6debeaab45 brcm2708: add support for the new Raspberry Pi Zero W
Support is experimental since I haven't got any device to test.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-04 19:41:34 +01:00
Álvaro Fernández Rojas
d35ce56496 brcm2708-gpu-fw: update to latest version
This is needed in order to add support for the new RPi Zero W

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-04 19:40:49 +01:00
Álvaro Fernández Rojas
baad22eed3 brcm2708: update linux 4.9 patches to latest version
As usual these patches were extracted and rebased from the raspberry pi repo:
https://github.com/raspberrypi/linux/tree/rpi-4.9.y

- Remove led1 from diag.sh for RPi3 since it causes boot issues.
- Fix modules.mk typos.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-04 19:37:50 +01:00
Kevin Darbyshire-Bryant
f229f4af31 kernel: update kernel 4.4 to 4.4.52
Bump kernel from 4.4.50 to 4.4.52

Refresh patches

Compile tested all 4.4. targets

Run tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-03-03 18:17:47 +01:00
Jo-Philipp Wich
a92d977904 kernel: fix kmod-tpm-tis packaging
The tmp-tis module depends on tpm_tis_core.ko, so package this file as well.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-03-03 18:14:36 +01:00
Pavel Kubelun
4101020dfb ath10k-firmware: update qca9984 firmware
Bump qca9984 firmware.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-03-03 15:44:55 +01:00
Felix Fietkau
c8f7031ba7 ubox: update to the latest version
21a4bd0 kmodloader: modprobe: return 0 for loaded modules

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-03 12:01:54 +01:00
Florian Fainelli
9e740fa5a5 openssl: Use mkhash for STAMP_CONFIGURED
The current way of creating a STAMP_CONFIGURED filename for OpenSSL can
lead to an extremely long filename that makes touch unable to create it,
and fail the build.

Use mkhash to produce a hash against OPENSSL_OPTIONS which creates a
shortert stamp file,

Fixes #572

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:52 -08:00
Florian Fainelli
30159b3886 rssileds: Fix build with external toolchains
Pass down TARGET_CPPFLAGS for path to header files, and append the
libraries we depend on in TARGET_LDFLAGS. Put TARGET_LDFLAGS at the end
of the command line as is required by modern GCC/binutils.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:52 -08:00
Florian Fainelli
4aa1560de3 adb: Also pass TARGET_CPPFLAGS
Fixes build issues with external toolchains that do not have STAGING_DIR
in their default search path.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:51 -08:00
Florian Fainelli
fe8618a8fe swconfig: Link with libubox
Fixes linking failures observed with external toolchains:

/home/florian/dev/toolchains/stbgcc-4.8-1.5/bin/../lib/gcc/mipsel-linux-gnu/4.8.5/../../../../mipsel-linux-gnu/bin/ld:
warning: libubox.so, needed by
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so,
not found (try using -rpath or -rpath-link)
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blobmsg_open_nested'
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blobmsg_parse'
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blob_nest_end'
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blobmsg_add_field'

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:51 -08:00
Florian Fainelli
306ee64361 px5g: Fix TARGET_LDFLAGS and add TARGET_CPPFLAGS
Make sure we pass down TARGET_CPPFLAGS to let toolchains with no default
search paths to find the mbdetls headers, and override TARGET_LDFLAGS to
include libraries we are linking against.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:51 -08:00
Florian Fainelli
4c02435b9b omcproxy: Update to latest HEAD
Brings the following change:
1fe6f48f8a50 Cmake: Find libubox/list.h

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:51 -08:00
Florian Fainelli
c0b32b04c5 usbmode: Update to latest HEAD
Brings the following changes:

22f041e18df0 Extend StandardEject sequence to include LUN 1
61fdf7e9b1cc cmake: Search for libjson-c
2769852e76b5 cmake: Find libubox/blobmsg_json.h
8a47c4b6649f add TargetClass support

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:51 -08:00
Florian Fainelli
562ebe7982 bsdiff: Also pass down TARGET_CPPFLAGS
Fixes build with external toolchains not having STAGING_DIR in their
default search path(s).

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:50 -08:00
Florian Fainelli
9b2321f42d thc-ipv6: Allow overriding CFLAGS
thc-ipv6 did not allow an external environment to override CFLAGS, which
would lead to our CFLAGS not being passed properly (relro,
optimizations, etc...)

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:50 -08:00