Merge Lean's source

This commit is contained in:
CN_SZTL 2019-11-23 08:47:06 +08:00
commit 9c20c1a58a
No known key found for this signature in database
GPG Key ID: 6850B6345C862176
358 changed files with 1183 additions and 3022 deletions

View File

@ -7,12 +7,12 @@ ifdef CONFIG_TESTING_KERNEL
endif
LINUX_VERSION-4.9 = .202
LINUX_VERSION-4.14 = .154
LINUX_VERSION-4.19 = .84
LINUX_VERSION-4.14 = .155
LINUX_VERSION-4.19 = .85
LINUX_KERNEL_HASH-4.9.202 = 8108ec1cd10fc40821c84e9f087dba10b1767aad66596f4a36925faef55e4ebf
LINUX_KERNEL_HASH-4.14.154 = 86de4a24379a78d67fc08b2e249ccf7b689eb6c37fbe329fc3dfbe8ab4300603
LINUX_KERNEL_HASH-4.19.84 = 868b4a92619cb00ab142a20a67f000525b9605820d1b66faa4a183133eac0660
LINUX_KERNEL_HASH-4.14.155 = 77d61979556b81c95b81452fa10e1fe9368cbe2f9f80a13e4669b0464722e481
LINUX_KERNEL_HASH-4.19.85 = 7bf435970aeeafd46263f49730087a61c4858d8b8fc5a4002ceac971b45f4fb7
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))

View File

@ -1,26 +1,26 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=wireless-regdb
PKG_VERSION:=2019.06.03
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/sforshee/wireless-regdb.git
PKG_SOURCE_DATE:=2017-10-20
PKG_SOURCE_VERSION:=4343d359ed5e7404de8803a74df186457b26ab79
PKG_MIRROR_HASH:=5f5b669f32ae36cb65b1d99efbbbfd42c2983cda32f6448346e3e54ffaba3889
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@KERNEL/software/network/wireless-regdb/
PKG_HASH:=cd917ed86b63ce8d93947979f1f18948f03a4ac0ad89ec25227b36ac00dc54bf
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
include $(INCLUDE_DIR)/package.mk
define Package/wireless-regdb
PKGARCH:=all
SECTION:=firmware
CATEGORY:=Firmware
URL:=$(patsubst pub/scm,cgit,$(PKG_SOURCE_URL))
URL:=https://git.kernel.org/pub/scm/linux/kernel/git/sforshee/wireless-regdb.git/
TITLE:=Wireless Regulatory Database
endef
define Build/Compile
python $(PKG_BUILD_DIR)/db2fw.py $(PKG_BUILD_DIR)/regulatory.db $(PKG_BUILD_DIR)/db.txt
$(STAGING_DIR_HOST)/bin/$(PYTHON) $(PKG_BUILD_DIR)/db2fw.py $(PKG_BUILD_DIR)/regulatory.db $(PKG_BUILD_DIR)/db.txt
endef
define Package/wireless-regdb/install

View File

@ -0,0 +1,58 @@
From 651e39dee8605995b736b6056c6f7dc5c5a9c948 Mon Sep 17 00:00:00 2001
From: Johannes Berg <johannes.berg@intel.com>
Date: Thu, 22 Aug 2019 21:46:27 +0200
Subject: [PATCH] regdb: fix compatibility with python2
Various changes in the commit mentioned below broke
compatibility with python2. Restore it in a way that
makes it worth with both versions.
Fixes: f3c4969c2485 ("wireless-regdb: make scripts compatible with Python 3")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
---
db2bin.py | 2 +-
db2fw.py | 2 +-
dbparse.py | 3 +--
3 files changed, 3 insertions(+), 4 deletions(-)
--- a/db2bin.py
+++ b/db2bin.py
@@ -118,7 +118,7 @@ reg_country_ptr.set()
for alpha2 in countrynames:
coll = countries[alpha2]
# struct regdb_file_reg_country
- output.write(struct.pack('>BBxBI', alpha2[0], alpha2[1], coll.dfs_region, reg_rules_collections[coll.permissions]))
+ output.write(struct.pack('>2sxBI', alpha2, coll.dfs_region, reg_rules_collections[coll.permissions]))
if len(sys.argv) > 3:
--- a/db2fw.py
+++ b/db2fw.py
@@ -85,7 +85,7 @@ countrynames = list(countries)
countrynames.sort()
for alpha2 in countrynames:
coll = countries[alpha2]
- output.write(struct.pack('>BB', alpha2[0], alpha2[1]))
+ output.write(struct.pack('>2s', alpha2))
country_ptrs[alpha2] = PTR(output)
output.write(b'\x00' * 4)
--- a/dbparse.py
+++ b/dbparse.py
@@ -1,6 +1,5 @@
#!/usr/bin/env python
-from builtins import bytes
from functools import total_ordering
import sys, math
from math import ceil, log
@@ -359,7 +358,7 @@ class DBParser(object):
for cname in cnames:
if len(cname) != 2:
self._warn("country '%s' not alpha2" % cname)
- cname = bytes(cname, 'ascii')
+ cname = cname.encode('ascii')
if not cname in self._countries:
self._countries[cname] = Country(dfs_region, comments=self._comments)
self._current_countries[cname] = self._countries[cname]

View File

@ -1,251 +0,0 @@
From: Johannes Berg <johannes.berg@intel.com>
Date: Mon, 9 Oct 2017 11:50:57 +0200
Subject: [PATCH] regdb: write firmware file format (version code 20)
TODO: clean up the Makefile stuff ...
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
create mode 100755 db2fw.py
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,5 @@
# Install prefix
PREFIX ?= /usr
-CRDA_PATH ?= $(PREFIX)/lib/crda
-CRDA_KEY_PATH ?= $(CRDA_PATH)/pubkeys
MANDIR ?= $(PREFIX)/share/man/
@@ -30,39 +28,47 @@ REGDB_AUTHOR ?= $(shell if [ -f $(DISTRO
fi)
REGDB_PRIVKEY ?= ~/.wireless-regdb-$(REGDB_AUTHOR).key.priv.pem
-REGDB_PUBKEY ?= $(REGDB_AUTHOR).key.pub.pem
-
-REGDB_UPSTREAM_PUBKEY ?= sforshee.key.pub.pem
+REGDB_PUBCERT ?= $(REGDB_AUTHOR).x509.pem
REGDB_CHANGED = $(shell $(SHA1SUM) -c --status sha1sum.txt >/dev/null 2>&1; \
if [ $$? -ne 0 ]; then \
- echo maintainer-clean $(REGDB_PUBKEY); \
+ echo maintainer-clean $(REGDB_PUBCERT); \
fi)
.PHONY: all clean mrproper install maintainer-clean install-distro-key
-all: $(REGDB_CHANGED) regulatory.bin sha1sum.txt
+all: $(REGDB_CHANGED) regulatory.db.p7s sha1sum.txt
clean:
@rm -f *.pyc *.gz
maintainer-clean: clean
- @rm -f regulatory.bin
+ @rm -f regulatory.db regulatory.db.p7s
mrproper: clean maintainer-clean
- @echo Removed public key, regulatory.bin and compresed man pages
- @rm -f $(REGDB_PUBKEY) .custom
+ @echo Removed public key, regulatory.db* and compressed man pages
+ @rm -f $(REGDB_PUBCERT) .custom
-regulatory.bin: db.txt $(REGDB_PRIVKEY) $(REGDB_PUBKEY)
- @echo Generating $@ digitally signed by $(REGDB_AUTHOR)...
- ./db2bin.py regulatory.bin db.txt $(REGDB_PRIVKEY)
+regulatory.db: db.txt db2fw.py
+ @echo "Generating $@"
+ ./db2fw.py regulatory.db db.txt
+
+regulatory.db.p7s: regulatory.db $(REGDB_PRIVKEY) $(REGDB_PUBCERT)
+ @echo "Signing regulatory.db (by $(REGDB_AUTHOR))..."
+ @openssl smime -sign \
+ -signer $(REGDB_PUBCERT) \
+ -inkey $(REGDB_PRIVKEY) \
+ -in $< -nosmimecap -binary \
+ -outform DER -out $@
sha1sum.txt: db.txt
sha1sum $< > $@
-$(REGDB_PUBKEY): $(REGDB_PRIVKEY)
- @echo "Generating public key for $(REGDB_AUTHOR)..."
- openssl rsa -in $(REGDB_PRIVKEY) -out $(REGDB_PUBKEY) -pubout -outform PEM
+$(REGDB_PUBCERT): $(REGDB_PRIVKEY)
+ @echo "Generating certificate for $(REGDB_AUTHOR)..."
+ @openssl req -config regulatory.openssl.conf \
+ -key $(REGDB_PRIVKEY) -days 36500 -utf8 -nodes -batch \
+ -x509 -outform PEM -out $(REGDB_PUBCERT)
@echo $(REGDB_PUBKEY) > .custom
@@ -97,16 +103,7 @@ install-distro-key: maintainer-clean $(D
# make maintainer-clean
# make
# sudo make install
-install: regulatory.bin.5.gz
- install -m 755 -d $(DESTDIR)/$(CRDA_PATH)
- install -m 755 -d $(DESTDIR)/$(CRDA_KEY_PATH)
- if [ -f .custom ]; then \
- install -m 644 -t $(DESTDIR)/$(CRDA_KEY_PATH)/ $(shell cat .custom); \
- fi
- install -m 644 -t $(DESTDIR)/$(CRDA_KEY_PATH)/ $(REGDB_UPSTREAM_PUBKEY)
- install -m 644 -t $(DESTDIR)/$(CRDA_PATH)/ regulatory.bin
+install: regulatory.db.5.gz
+ install -m 644 -t $(DESTDIR)/$(CRDA_PATH)/ regulatory.db
install -m 755 -d $(DESTDIR)/$(MANDIR)/man5/
- install -m 644 -t $(DESTDIR)/$(MANDIR)/man5/ regulatory.bin.5.gz
-
-uninstall:
- rm -rf $(DESTDIR)/$(CRDA_PATH)/
+ install -m 644 -t $(DESTDIR)/$(MANDIR)/man5/ regulatory.db.5.gz
--- a/README
+++ b/README
@@ -18,8 +18,8 @@ python module is used by the web viewer
implemented as a MoinMoin macro (and used on http://wireless.kernel.org)
to allow viewing the database for verification.
-The dbparse module is also used by db2bin.py, the `compiler', which
-compiles and signs the binary database.
+The dbparse module is also used by db2bin.py and db2fw.py, the `compilers'
+that compile the database to its binary formats.
For more information, please see the CRDA git repository:
--- /dev/null
+++ b/db2fw.py
@@ -0,0 +1,133 @@
+#!/usr/bin/env python
+
+from cStringIO import StringIO
+import struct
+import hashlib
+from dbparse import DBParser
+import sys
+
+MAGIC = 0x52474442
+VERSION = 20
+
+if len(sys.argv) < 3:
+ print 'Usage: %s output-file input-file' % sys.argv[0]
+ sys.exit(2)
+
+def create_rules(countries):
+ result = {}
+ for c in countries.itervalues():
+ for rule in c.permissions:
+ result[rule] = 1
+ return result.keys()
+
+def create_collections(countries):
+ result = {}
+ for c in countries.itervalues():
+ result[(c.permissions, c.dfs_region)] = 1
+ return result.keys()
+
+
+def be32(output, val):
+ output.write(struct.pack('>I', val))
+def be16(output, val):
+ output.write(struct.pack('>H', val))
+
+class PTR(object):
+ def __init__(self, output):
+ self._output = output
+ self._pos = output.tell()
+ be16(output, 0)
+ self._written = False
+
+ def set(self, val=None):
+ if val is None:
+ val = self._output.tell()
+ assert val & 3 == 0
+ self._offset = val
+ pos = self._output.tell()
+ self._output.seek(self._pos)
+ be16(self._output, val >> 2)
+ self._output.seek(pos)
+ self._written = True
+
+ def get(self):
+ return self._offset
+
+ @property
+ def written(self):
+ return self._written
+
+p = DBParser()
+countries = p.parse(file(sys.argv[2]))
+rules = create_rules(countries)
+rules.sort(cmp=lambda x, y: cmp(x.freqband, y.freqband))
+collections = create_collections(countries)
+collections.sort(cmp=lambda x, y: cmp(x[0][0].freqband, y[0][0].freqband))
+
+output = StringIO()
+
+# struct regdb_file_header
+be32(output, MAGIC)
+be32(output, VERSION)
+
+country_ptrs = {}
+countrynames = countries.keys()
+countrynames.sort()
+for alpha2 in countrynames:
+ coll = countries[alpha2]
+ output.write(struct.pack('>cc', str(alpha2[0]), str(alpha2[1])))
+ country_ptrs[alpha2] = PTR(output)
+output.write('\x00' * 4)
+
+reg_rules = {}
+flags = 0
+for reg_rule in rules:
+ freq_range, power_rule = reg_rule.freqband, reg_rule.power
+ reg_rules[reg_rule] = output.tell()
+ assert power_rule.max_ant_gain == 0
+ flags = 0
+ # convert to new rule flags
+ assert reg_rule.flags & ~0x899 == 0
+ if reg_rule.flags & 1<<0:
+ flags |= 1<<0
+ if reg_rule.flags & 1<<3:
+ flags |= 1<<1
+ if reg_rule.flags & 1<<4:
+ flags |= 1<<2
+ if reg_rule.flags & 1<<7:
+ flags |= 1<<3
+ if reg_rule.flags & 1<<11:
+ flags |= 1<<4
+ rule_len = 16
+ cac_timeout = 0 # TODO
+ if not (flags & 1<<2):
+ cac_timeout = 0
+ if cac_timeout:
+ rule_len += 2
+ output.write(struct.pack('>BBHIII', rule_len, flags, power_rule.max_eirp * 100,
+ freq_range.start * 1000, freq_range.end * 1000, freq_range.maxbw * 1000,
+ ))
+ if cac_timeout:
+ output.write(struct.pack('>H', cac_timeout))
+ while rule_len % 4:
+ output.write('\0')
+ rule_len += 1
+
+for coll in collections:
+ for alpha2 in countrynames:
+ if (countries[alpha2].permissions, countries[alpha2].dfs_region) == coll:
+ assert not country_ptrs[alpha2].written
+ country_ptrs[alpha2].set()
+ slen = 3
+ output.write(struct.pack('>BBBx', slen, len(list(coll[0])), coll[1]))
+ coll = list(coll[0])
+ for regrule in coll:
+ be16(output, reg_rules[regrule] >> 2)
+ if len(coll) % 2:
+ be16(output, 0)
+
+for alpha2 in countrynames:
+ assert country_ptrs[alpha2].written
+
+outfile = open(sys.argv[1], 'w')
+outfile.write(output.getvalue())

View File

@ -5,7 +5,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
---
--- a/db.txt
+++ b/db.txt
@@ -6,7 +6,7 @@ country 00:
@@ -16,7 +16,7 @@ country 00:
# Channel 14. Only JP enables this and for 802.11b only
(2474 - 2494 @ 20), (20), NO-IR, NO-OFDM
# Channel 36 - 48

View File

@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
/* Device and char device-related information */
static DEFINE_IDA(gpio_ida);
static dev_t gpio_devt;
@@ -2634,7 +2636,7 @@ int gpiod_direction_output(struct gpio_d
@@ -2654,7 +2656,7 @@ int gpiod_direction_output(struct gpio_d
value = !!value;
/* GPIOs used for IRQs shall not be set as output */
@ -35,7 +35,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
gpiod_err(desc,
"%s: tried to set a GPIO tied to an IRQ as output\n",
__func__);
@@ -3333,7 +3335,7 @@ int gpiochip_lock_as_irq(struct gpio_chi
@@ -3353,7 +3355,7 @@ int gpiochip_lock_as_irq(struct gpio_chi
}
}

View File

@ -37,7 +37,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
{
u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL);
@@ -3006,8 +3015,14 @@ static int lan78xx_bind(struct lan78xx_n
@@ -3011,8 +3020,14 @@ static int lan78xx_bind(struct lan78xx_n
if (DEFAULT_RX_CSUM_ENABLE)
dev->net->features |= NETIF_F_RXCSUM;

View File

@ -28,7 +28,7 @@ See: https://github.com/raspberrypi/linux/issues/2447
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
{
u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL);
@@ -3819,7 +3824,12 @@ static int lan78xx_probe(struct usb_inte
@@ -3824,7 +3829,12 @@ static int lan78xx_probe(struct usb_inte
dev->pipe_intr = usb_rcvintpipe(dev->udev,
dev->ep_intr->desc.bEndpointAddress &
USB_ENDPOINT_NUMBER_MASK);

View File

@ -12,7 +12,7 @@ in both dwc_otg and in ipv6 processing.
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -3253,7 +3253,7 @@ static int rx_submit(struct lan78xx_net
@@ -3258,7 +3258,7 @@ static int rx_submit(struct lan78xx_net
size_t size = dev->rx_urb_size;
int ret = 0;

View File

@ -20,7 +20,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
--- a/drivers/net/ethernet/broadcom/genet/bcmmii.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmmii.c
@@ -286,6 +286,8 @@ int bcmgenet_mii_probe(struct net_device
@@ -285,6 +285,8 @@ int bcmgenet_mii_probe(struct net_device
/* Communicate the integrated PHY revision */
if (priv->internal_phy)
phy_flags = priv->gphy_rev;

View File

@ -41,7 +41,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org>
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -3959,8 +3959,23 @@ struct gpio_desc *__must_check gpiod_get
@@ -3979,8 +3979,23 @@ struct gpio_desc *__must_check gpiod_get
* the device name as label
*/
status = gpiod_request(desc, con_id ? con_id : devname);

View File

@ -23,7 +23,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org>
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -4033,6 +4033,8 @@ struct gpio_desc *gpiod_get_from_of_node
@@ -4053,6 +4053,8 @@ struct gpio_desc *gpiod_get_from_of_node
transitory = flags & OF_GPIO_TRANSITORY;
ret = gpiod_request(desc, label);

View File

@ -1,48 +0,0 @@
From feef7918667b84f9d5653c501542dd8d84ae32af Mon Sep 17 00:00:00 2001
From: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
Date: Sun, 19 Aug 2018 22:20:23 +0300
Subject: [PATCH] MIPS: BCM47XX: Enable USB power on Netgear WNDR3400v3
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Setting GPIO 21 high seems to be required to enable power to USB ports
on the WNDR3400v3. As there is already similar code for WNR3500L,
make the existing USB power GPIO code generic and use that.
Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Paul Burton <paul.burton@mips.com>
Patchwork: https://patchwork.linux-mips.org/patch/20259/
Cc: Rafał Miłecki <zajec5@gmail.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
---
arch/mips/bcm47xx/workarounds.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
--- a/arch/mips/bcm47xx/workarounds.c
+++ b/arch/mips/bcm47xx/workarounds.c
@@ -5,9 +5,8 @@
#include <bcm47xx_board.h>
#include <bcm47xx.h>
-static void __init bcm47xx_workarounds_netgear_wnr3500l(void)
+static void __init bcm47xx_workarounds_enable_usb_power(int usb_power)
{
- const int usb_power = 12;
int err;
err = gpio_request_one(usb_power, GPIOF_OUT_INIT_HIGH, "usb_power");
@@ -23,7 +22,10 @@ void __init bcm47xx_workarounds(void)
switch (board) {
case BCM47XX_BOARD_NETGEAR_WNR3500L:
- bcm47xx_workarounds_netgear_wnr3500l();
+ bcm47xx_workarounds_enable_usb_power(12);
+ break;
+ case BCM47XX_BOARD_NETGEAR_WNDR3400_V3:
+ bcm47xx_workarounds_enable_usb_power(21);
break;
default:
/* No workaround(s) needed */

View File

@ -1,48 +0,0 @@
From feef7918667b84f9d5653c501542dd8d84ae32af Mon Sep 17 00:00:00 2001
From: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
Date: Sun, 19 Aug 2018 22:20:23 +0300
Subject: [PATCH] MIPS: BCM47XX: Enable USB power on Netgear WNDR3400v3
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Setting GPIO 21 high seems to be required to enable power to USB ports
on the WNDR3400v3. As there is already similar code for WNR3500L,
make the existing USB power GPIO code generic and use that.
Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Paul Burton <paul.burton@mips.com>
Patchwork: https://patchwork.linux-mips.org/patch/20259/
Cc: Rafał Miłecki <zajec5@gmail.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
---
arch/mips/bcm47xx/workarounds.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
--- a/arch/mips/bcm47xx/workarounds.c
+++ b/arch/mips/bcm47xx/workarounds.c
@@ -5,9 +5,8 @@
#include <bcm47xx_board.h>
#include <bcm47xx.h>
-static void __init bcm47xx_workarounds_netgear_wnr3500l(void)
+static void __init bcm47xx_workarounds_enable_usb_power(int usb_power)
{
- const int usb_power = 12;
int err;
err = gpio_request_one(usb_power, GPIOF_OUT_INIT_HIGH, "usb_power");
@@ -23,7 +22,10 @@ void __init bcm47xx_workarounds(void)
switch (board) {
case BCM47XX_BOARD_NETGEAR_WNR3500L:
- bcm47xx_workarounds_netgear_wnr3500l();
+ bcm47xx_workarounds_enable_usb_power(12);
+ break;
+ case BCM47XX_BOARD_NETGEAR_WNDR3400_V3:
+ bcm47xx_workarounds_enable_usb_power(21);
break;
default:
/* No workaround(s) needed */

View File

@ -1,5 +1,5 @@
#
# Copyright (C) 2006-2009 OpenWrt.org
# Copyright (C) 2006-2019 OpenWrt.org
# Copyright (C) 2016 LEDE project
#
# This is free software, licensed under the GNU General Public License v2.
@ -13,6 +13,7 @@ BOARDNAME:=Broadcom BCM63xx
SUBTARGETS:=generic smp
FEATURES:=squashfs usb atm pci pcmcia usbgadget
KERNEL_PATCHVER:=4.14
KERNEL_TESTING_PATCHVER:=4.19
MAINTAINER:=Jonas Gorski <jogo@openwrt.org>
define Target/Description

View File

@ -43,7 +43,7 @@ set_state() {
status_led="spw303v:green:power+adsl"
;;
vh4032n)
status_led="VH4032N:red:power"
status_led="VH4032N:blue:power"
;;
vr-3025un)
status_led="VR-3025un:green:power"

View File

@ -1,28 +1,9 @@
#!/bin/sh
# Based on gabors ralink wisoc implementation.
rt2x00_eeprom_die() {
echo "rt2x00 eeprom: " "$*"
exit 1
}
rt2x00_eeprom_extract() {
local part=$1
local offset=$2
local count=$3
local mtd
mtd=$(find_mtd_part $part)
[ -n "$mtd" ] || \
rt2x00_eeprom_die "no mtd device found for partition $part"
dd if=$mtd of=/lib/firmware/$FIRMWARE bs=1 skip=$offset count=$count || \
rt2x00_eeprom_die "failed to extract from $mtd"
}
[ -e /lib/firmware/$FIRMWARE ] && exit 0
. /lib/functions.sh
. /lib/functions/caldata.sh
board=$(board_name)
@ -30,14 +11,14 @@ case "$FIRMWARE" in
"rt2x00.eeprom" )
case $board in
hg556a_c)
rt2x00_eeprom_extract "cal_data" 130560 512
caldata_extract "cal_data" 0x1fe00 0x200
;;
hg622 |\
hg655b)
rt2x00_eeprom_extract "cal_data" 0 512
caldata_extract "cal_data" 0x0 0x200
;;
*)
rt2x00_eeprom_die "board $board is not supported yet"
caldata_die "board $board is not supported yet"
;;
esac
;;

View File

@ -4,12 +4,20 @@ CONFIG_ARCH_DISCARD_MEMBLOCK=y
CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
# CONFIG_ARCH_HAS_GCOV_PROFILE_ALL is not set
# CONFIG_ARCH_HAS_SG_CHAIN is not set
# CONFIG_ARCH_HAS_STRICT_KERNEL_RWX is not set
# CONFIG_ARCH_HAS_STRICT_MODULE_RWX is not set
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y
CONFIG_ARCH_MMAP_RND_BITS_MAX=15
CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=15
# CONFIG_ARCH_OPTIONAL_KERNEL_RWX is not set
# CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT is not set
CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ARCH_USE_BUILTIN_BSWAP=y
CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y
CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
CONFIG_BCM6345_EXT_IRQ=y
CONFIG_BCM6345_PERIPH_IRQ=y
@ -59,7 +67,9 @@ CONFIG_CPU_NEEDS_NO_SMARTMIPS_OR_MICROMIPS=y
CONFIG_CPU_R4K_CACHE_TLB=y
CONFIG_CPU_R4K_FPU=y
CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y
CONFIG_CPU_SUPPORTS_CPUFREQ=y
CONFIG_CPU_SUPPORTS_HIGHMEM=y
CONFIG_CRASH_CORE=y
CONFIG_CRYPTO_RNG2=y
CONFIG_CRYPTO_WORKQUEUE=y
CONFIG_CSRC_R4K=y
@ -71,11 +81,15 @@ CONFIG_FIXED_PHY=y
CONFIG_GENERIC_ATOMIC64=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_GENERIC_CPU_AUTOPROBE=y
CONFIG_GENERIC_IO=y
CONFIG_GENERIC_IRQ_CHIP=y
CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_GENERIC_PCI_IOMAP=y
CONFIG_GENERIC_PINCONF=y
CONFIG_GENERIC_PINCTRL_GROUPS=y
CONFIG_GENERIC_PINMUX_FUNCTIONS=y
CONFIG_GENERIC_SCHED_CLOCK=y
CONFIG_GENERIC_SMP_IDLE_THREAD=y
CONFIG_GENERIC_TIME_VSYSCALL=y
@ -83,6 +97,7 @@ CONFIG_GPIOLIB=y
CONFIG_GPIO_BCM63XX=y
CONFIG_GPIO_GENERIC=y
CONFIG_GPIO_SYSFS=y
# CONFIG_GRO_CELLS is not set
CONFIG_HANDLE_DOMAIN_IRQ=y
CONFIG_HAS_DMA=y
CONFIG_HAS_IOMEM=y
@ -98,6 +113,7 @@ CONFIG_HAVE_CBPF_JIT=y
CONFIG_HAVE_CC_STACKPROTECTOR=y
CONFIG_HAVE_CLK=y
CONFIG_HAVE_CONTEXT_TRACKING=y
CONFIG_HAVE_COPY_THREAD_TLS=y
CONFIG_HAVE_C_RECORDMCOUNT=y
CONFIG_HAVE_DEBUG_KMEMLEAK=y
CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
@ -140,7 +156,8 @@ CONFIG_LEDS_BCM6328=y
CONFIG_LEDS_BCM6358=y
CONFIG_LEDS_GPIO=y
CONFIG_LIBFDT=y
CONFIG_MDIO_BOARDINFO=y
CONFIG_MDIO_BUS=y
CONFIG_MDIO_DEVICE=y
CONFIG_MFD_SYSCON=y
CONFIG_MIPS=y
CONFIG_MIPS_ASID_BITS=8
@ -150,6 +167,7 @@ CONFIG_MIPS_CLOCK_VSYSCALL=y
# CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER is not set
CONFIG_MIPS_CMDLINE_FROM_DTB=y
# CONFIG_MIPS_ELF_APPENDED_DTB is not set
CONFIG_MIPS_EXTERNAL_TIMER=y
# CONFIG_MIPS_HUGE_TLB_SUPPORT is not set
CONFIG_MIPS_L1_CACHE_SHIFT=4
CONFIG_MIPS_L1_CACHE_SHIFT_4=y
@ -207,6 +225,7 @@ CONFIG_PINCTRL_BCM6368=y
CONFIG_PINCTRL_BCM63XX=y
CONFIG_POSIX_MQUEUE=y
CONFIG_POSIX_MQUEUE_SYSCTL=y
# CONFIG_RCU_NEED_SEGCBLIST is not set
# CONFIG_RCU_STALL_COMMON is not set
CONFIG_REGMAP=y
CONFIG_REGMAP_MMIO=y
@ -254,6 +273,7 @@ CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
CONFIG_SYS_SUPPORTS_HOTPLUG_CPU=y
CONFIG_SYS_SUPPORTS_SMP=y
CONFIG_TICK_CPU_ACCOUNTING=y
CONFIG_TINY_SRCU=y
CONFIG_USB_SUPPORT=y
CONFIG_USE_OF=y
CONFIG_VM_EVENT_COUNTERS=y

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
voip_red {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
voip_red {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
voip_red {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet_red {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet_red {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
wps_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
alarm_red {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet_red {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -14,7 +14,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -35,7 +35,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_white {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
usb1 {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet_fail {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
stop_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
dsl_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
dsl_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
phone_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
eth_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -41,7 +41,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -41,7 +41,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
dsl_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
green_power {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
stop_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -41,7 +41,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet_red {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -41,7 +41,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
voip {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
voip1_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_orange {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -41,7 +41,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
wps_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -41,7 +41,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
usb_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
line1_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -48,7 +48,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
message_red {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -48,7 +48,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
message_red {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -48,7 +48,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
lan1_green {

View File

@ -14,7 +14,7 @@
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -28,7 +28,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
dsl_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -41,7 +41,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
dsl_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
red_adsl_fail {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
power {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -48,7 +48,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
traffic_white {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -48,7 +48,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
traffic_white {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet_green {

View File

@ -14,7 +14,7 @@
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -35,7 +35,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
inet_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
stop_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
green_power {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
usb {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
usb {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -34,7 +34,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
ses_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
lan1_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-leds {
leds {
compatible = "gpio-leds";
usb {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
power_green {

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -26,15 +26,15 @@
debounce-interval = <60>;
};
wps {
label = "wps";
wlan {
label = "wlan";
gpios = <&pinctrl 35 1>;
linux,code = <KEY_WPS_BUTTON>;
linux,code = <KEY_WLAN>;
debounce-interval = <60>;
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
dsl_blue {
@ -56,11 +56,11 @@
power_blue {
label = "VH4032N:blue:power";
gpios = <&pinctrl 22 0>;
default-state = "on";
};
power_red {
label = "VH4032N:red:power";
gpios = <&pinctrl 24 0>;
default-state = "on";
};
voice_blue {
label = "VH4032N:blue:voice";
@ -74,6 +74,10 @@
};
&pinctrl {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pci &pinctrl_ephy0_led &pinctrl_ephy1_led
&pinctrl_ephy2_led &pinctrl_ephy3_led>;
usb_hub_reset {
gpio-hog;
gpios = <27 0>;

View File

@ -13,7 +13,7 @@
stdout-path = "serial0:115200n8";
};
gpio-keys-polled {
keys {
compatible = "gpio-keys-polled";
#address-cells = <1>;
#size-cells = <0>;
@ -27,7 +27,7 @@
};
};
gpio-leds {
leds {
compatible = "gpio-leds";
dsl_green {

Some files were not shown because too many files have changed in this diff Show More