Compare commits

..

1 Commits

Author SHA1 Message Date
Jo-Philipp Wich
28b7d7f1da LEDE v17.01.0-rc2: adjust config defaults
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-07 09:36:21 +01:00
138 changed files with 403 additions and 1264 deletions

View File

@@ -9,7 +9,7 @@ menu "Global build settings"
config ALL_NONSHARED
bool "Select all target specific packages by default"
default ALL || BUILDBOT
default ALL
config ALL_KMODS
bool "Select all kernel module packages by default"
@@ -19,16 +19,6 @@ menu "Global build settings"
bool "Select all userspace packages by default"
default n
config BUILDBOT
bool "Set build defaults for automatic builds (e.g. via buildbot)"
default n
help
This option changes several defaults to be more suitable for
automatic builds. This includes the following changes:
- Deleting build directories after compiling (to save space)
- Enabling per-device rootfs support
...
config SIGNED_PACKAGES
bool "Cryptographically signed package lists"
default y
@@ -71,7 +61,7 @@ menu "Global build settings"
bool
prompt "Collect kernel debug information"
select KERNEL_DEBUG_INFO
default BUILDBOT
default n
help
This collects debugging symbols from the kernel and all compiled modules.
Useful for release builds, so that kernel issues can be debugged offline

View File

@@ -201,6 +201,7 @@ menu "Target Images"
int "Serial port baud rate"
depends on GRUB_IMAGES
default 38400 if TARGET_x86_generic
default 38400 if TARGET_x86_geode
default 115200
config GRUB_BOOTOPTS

View File

@@ -1,4 +1,4 @@
src-git packages https://git.lede-project.org/feed/packages.git^ed90827282851ad93294e370860320f1af428bb2
src-git luci https://git.lede-project.org/project/luci.git^a100738163585ae1edc24d832ca9bef1f34beef0
src-git packages https://git.lede-project.org/feed/packages.git^06198d9c8c1ba061a0a5d566545a5c0bbce2b0a4
src-git luci https://git.lede-project.org/project/luci.git^e306ee6c93c1ef600012f47e40dd75020d4ab555
src-git routing https://git.lede-project.org/feed/routing.git^dd36dd47bbd75defcb3c517cafe7a19ee425f0af
src-git telephony https://git.lede-project.org/feed/telephony.git^1f0fb2538ba6fc306198fe2a9a4b976d63adb304

View File

@@ -3,10 +3,10 @@
LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .43
LINUX_VERSION-4.4 = .50
LINUX_VERSION-4.4 = .47
LINUX_KERNEL_HASH-3.18.43 = 1236e8123a6ce537d5029232560966feed054ae31776fe8481dd7d18cdd5492c
LINUX_KERNEL_HASH-4.4.50 = e4944ca5bb0bdf63a7e97dc7fbdd38bcc820d8b3b57c4a3a7b3bf9c8a48216b7
LINUX_KERNEL_HASH-4.4.47 = ce0ac0016f37ba3e9bc8ad3765933b61c4072fcfe4c44804fc7b308cd7f94de7
ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))

View File

@@ -31,16 +31,16 @@ qstrip_escape=$(subst ','\'',$(call qstrip,$(1)))
sanitize = $(call tolower,$(subst _,-,$(subst $(space),-,$(1))))
VERSION_NUMBER:=$(call qstrip_escape,$(CONFIG_VERSION_NUMBER))
VERSION_NUMBER:=$(if $(VERSION_NUMBER),$(VERSION_NUMBER),17.01.0)
VERSION_NUMBER:=$(if $(VERSION_NUMBER),$(VERSION_NUMBER),17.01.0-rc2)
VERSION_CODE:=$(call qstrip_escape,$(CONFIG_VERSION_CODE))
VERSION_CODE:=$(if $(VERSION_CODE),$(VERSION_CODE),r3205-59508e3)
VERSION_CODE:=$(if $(VERSION_CODE),$(VERSION_CODE),r3131-42f3c1f)
VERSION_NICK:=$(call qstrip_escape,$(CONFIG_VERSION_NICK))
VERSION_NICK:=$(if $(VERSION_NICK),$(VERSION_NICK),$(RELEASE))
VERSION_REPO:=$(call qstrip_escape,$(CONFIG_VERSION_REPO))
VERSION_REPO:=$(if $(VERSION_REPO),$(VERSION_REPO),http://downloads.lede-project.org/releases/17.01.0)
VERSION_REPO:=$(if $(VERSION_REPO),$(VERSION_REPO),http://downloads.lede-project.org/releases/17.01.0-rc2)
VERSION_DIST:=$(call qstrip_escape,$(CONFIG_VERSION_DIST))
VERSION_DIST:=$(if $(VERSION_DIST),$(VERSION_DIST),LEDE)

View File

@@ -190,7 +190,7 @@ if VERSIONOPT
config VERSION_REPO
string
prompt "Release repository"
default "http://downloads.lede-project.org/releases/17.01.0"
default "http://downloads.lede-project.org/releases/17.01.0-rc2"
help
This is the repository address embedded in the image, it defaults
to the trunk snapshot repo; the url may contain the following placeholders:
@@ -286,7 +286,7 @@ menuconfig PER_FEED_REPO
config PER_FEED_REPO_ADD_COMMENTED
bool "Comment out not enabled feeds"
default !BUILDBOT
default y
depends on PER_FEED_REPO && PER_FEED_REPO_ADD_DISABLED
help
Add not enabled feeds as commented out source lines to opkg.conf.

View File

@@ -14,8 +14,6 @@ touch /etc/config/ubootenv
board=$(ar71xx_board_name)
case "$board" in
a40|\
a60|\
alfa-ap120c|\
all0258n|\
ap90q|\
@@ -54,10 +52,8 @@ om2p|\
om2p-hs|\
om2p-hsv2|\
om2p-hsv3|\
om2p-hsv4|\
om2p-lc|\
om2pv2|\
om2pv4)
om2pv2)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x40000" "0x40000"
;;
dap-2695-a1|\

View File

@@ -10,7 +10,7 @@
- "bootm 0x800000"
+ "ubi part ubi; " \
+ "ubi read 0x800000 kernel; " \
+ "bootm 0x800000"
+ "bootz 0x800000"
#define CONFIG_MTDPARTS \
- "mtdparts=orion_nand:1m(uboot),6M(uImage),-(root)\0"

View File

@@ -1,107 +0,0 @@
From: Felix Fietkau <nbd@nbd.name>
Date: Sun, 12 Feb 2017 13:13:05 +0100
Subject: [PATCH] ath9k: clean up and fix ath_tx_count_airtime
ath_tx_count_airtime is doing a lot of unnecessary work:
- Redundant station lookup
- Redundant rcu_read_lock/unlock
- Useless memcpy of bf->rates
- Useless NULL check of bf->bf_mpdu
- Redundant lookup of the skb tid
Additionally, it tries to look up the mac80211 queue index from the txq,
which fails if the frame was delivered via the power save queue.
This patch fixes all of these issues by passing down the right set of
pointers instead of doing extra work
Cc: stable@vger.kernel.org
Fixes: 63fefa050477 ("ath9k: Introduce airtime fairness scheduling between stations")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
---
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -723,51 +723,31 @@ static bool bf_is_ampdu_not_probing(stru
return bf_isampdu(bf) && !(info->flags & IEEE80211_TX_CTL_RATE_CTRL_PROBE);
}
-static void ath_tx_count_airtime(struct ath_softc *sc, struct ath_txq *txq,
- struct ath_buf *bf, struct ath_tx_status *ts)
+static void ath_tx_count_airtime(struct ath_softc *sc, struct ath_node *an,
+ struct ath_atx_tid *tid, struct ath_buf *bf,
+ struct ath_tx_status *ts)
{
- struct ath_node *an;
- struct ath_acq *acq = &sc->cur_chan->acq[txq->mac80211_qnum];
- struct sk_buff *skb;
- struct ieee80211_hdr *hdr;
- struct ieee80211_hw *hw = sc->hw;
- struct ieee80211_tx_rate rates[4];
- struct ieee80211_sta *sta;
- int i;
+ struct ath_txq *txq = tid->txq;
u32 airtime = 0;
-
- skb = bf->bf_mpdu;
- if(!skb)
- return;
-
- hdr = (struct ieee80211_hdr *)skb->data;
- memcpy(rates, bf->rates, sizeof(rates));
-
- rcu_read_lock();
-
- sta = ieee80211_find_sta_by_ifaddr(hw, hdr->addr1, hdr->addr2);
- if(!sta)
- goto exit;
-
-
- an = (struct ath_node *) sta->drv_priv;
+ int i;
airtime += ts->duration * (ts->ts_longretry + 1);
+ for(i = 0; i < ts->ts_rateindex; i++) {
+ int rate_dur = ath9k_hw_get_duration(sc->sc_ah, bf->bf_desc, i);
+ airtime += rate_dur * bf->rates[i].count;
+ }
- for(i=0; i < ts->ts_rateindex; i++)
- airtime += ath9k_hw_get_duration(sc->sc_ah, bf->bf_desc, i) * rates[i].count;
+ if (sc->airtime_flags & AIRTIME_USE_TX) {
+ int q = txq->mac80211_qnum;
+ struct ath_acq *acq = &sc->cur_chan->acq[q];
- if (!!(sc->airtime_flags & AIRTIME_USE_TX)) {
spin_lock_bh(&acq->lock);
- an->airtime_deficit[txq->mac80211_qnum] -= airtime;
- if (an->airtime_deficit[txq->mac80211_qnum] <= 0)
- __ath_tx_queue_tid(sc, ath_get_skb_tid(sc, an, skb));
+ an->airtime_deficit[q] -= airtime;
+ if (an->airtime_deficit[q] <= 0)
+ __ath_tx_queue_tid(sc, tid);
spin_unlock_bh(&acq->lock);
}
ath_debug_airtime(sc, an, 0, airtime);
-
-exit:
- rcu_read_unlock();
}
static void ath_tx_process_buffer(struct ath_softc *sc, struct ath_txq *txq,
@@ -791,13 +771,13 @@ static void ath_tx_process_buffer(struct
ts->duration = ath9k_hw_get_duration(sc->sc_ah, bf->bf_desc,
ts->ts_rateindex);
- ath_tx_count_airtime(sc, txq, bf, ts);
hdr = (struct ieee80211_hdr *) bf->bf_mpdu->data;
sta = ieee80211_find_sta_by_ifaddr(hw, hdr->addr1, hdr->addr2);
if (sta) {
struct ath_node *an = (struct ath_node *)sta->drv_priv;
tid = ath_get_skb_tid(sc, an, bf->bf_mpdu);
+ ath_tx_count_airtime(sc, an, tid, bf, ts);
if (ts->ts_status & (ATH9K_TXERR_FILT | ATH9K_TXERR_XRETRY))
tid->clear_ps_filter = true;
}

View File

@@ -329,7 +329,7 @@ Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
&ratesArray[0], cfgCtl,
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -1216,8 +1216,9 @@ static u8 ath_get_rate_txpower(struct at
@@ -1236,8 +1236,9 @@ static u8 ath_get_rate_txpower(struct at
if (is_40) {
u8 power_ht40delta;
struct ar5416_eeprom_def *eep = &ah->eeprom.def;

View File

@@ -18,8 +18,8 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
* preference in cfg struct to apply this to
* FW later while initializing the dongle
*/
+#if defined(CONFIG_ARCH_BCM2708) || defined(CONFIG_ARCH_BCM2709)
+ brcmf_dbg(INFO, "power management disabled\n");
+#if defined(CONFIG_BCM2708) || defined(CONFIG_BCM2709)
+ pr_info("power management disabled\n");
+ enabled = false;
+#endif
cfg->pwr_save = enabled;

View File

@@ -1,23 +0,0 @@
brcmfmac: do not use internal roaming engine by default
Some evidence of curing disconnects with this disabled, so make it a default.
Can be overridden with module parameter roamoff=0
See: http://projectable.me/optimize-my-pi-wi-fi/
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
---
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
@@ -69,7 +69,11 @@ static int brcmf_fcmode;
module_param_named(fcmode, brcmf_fcmode, int, 0);
MODULE_PARM_DESC(fcmode, "Mode of firmware signalled flow control");
+#if defined(CONFIG_ARCH_BCM2708) || defined(CONFIG_ARCH_BCM2709)
+static int brcmf_roamoff = 1;
+#else
static int brcmf_roamoff;
+#endif
module_param_named(roamoff, brcmf_roamoff, int, S_IRUSR);
MODULE_PARM_DESC(roamoff, "Do not use internal roaming engine");

View File

@@ -17,11 +17,9 @@ get_gpio() {
case "$board" in
"om2p" | \
"om2pv4" | \
"om2p-hs" | \
"om2p-hsv2" | \
"om2p-hsv3" | \
"om2p-hsv4" | \
"om5p-acv2")
return 12
;;
@@ -42,9 +40,7 @@ get_gpio() {
"mr900" | \
"mr900v2" | \
"mr1750" | \
"mr1750v2" | \
"a40" | \
"a60")
"mr1750v2")
return 16
;;
esac

View File

@@ -347,6 +347,7 @@ tc filter add dev $device parent ffff: prio 1 u32 match u32 0 0 flowid 1:1 actio
fi
add_insmod cls_fw
add_insmod sch_hfsc
add_insmod sch_fq_codel
cat <<EOF
${INSMOD:+$INSMOD$N}${dev_up:+$dev_up
@@ -465,7 +466,7 @@ EOF
start_firewall() {
add_insmod xt_multiport
add_insmod xt_connmark
add_insmod xt_CONNMARK
stop_firewall
for group in $CG; do
start_cg $group

View File

@@ -1,130 +0,0 @@
From 68f6312d4bae30b78daafcd6f51dc441b8685b1e Mon Sep 17 00:00:00 2001
From: Baptiste Jonglez <git@bitsofnetworks.org>
Date: Mon, 6 Feb 2017 21:09:11 +0000
Subject: [PATCH] Stop treating SERVFAIL as a successful response from upstream
servers.
This effectively reverts most of 51967f9807 ("SERVFAIL is an expected
error return, don't try all servers.") and 4ace25c5d6 ("Treat REFUSED (not
SERVFAIL) as an unsuccessful upstream response").
With the current behaviour, as soon as dnsmasq receives a SERVFAIL from an
upstream server, it stops trying to resolve the query and simply returns
SERVFAIL to the client. With this commit, dnsmasq will instead try to
query other upstream servers upon receiving a SERVFAIL response.
According to RFC 1034 and 1035, the semantic of SERVFAIL is that of a
temporary error condition. Recursive resolvers are expected to encounter
network or resources issues from time to time, and will respond with
SERVFAIL in this case. Similarly, if a validating DNSSEC resolver [RFC
4033] encounters issues when checking signatures (unknown signing
algorithm, missing signatures, expired signatures because of a wrong
system clock, etc), it will respond with SERVFAIL.
Note that all those behaviours are entirely different from a negative
response, which would provide a definite indication that the requested
name does not exist. In our case, if an upstream server responds with
SERVFAIL, another upstream server may well provide a positive answer for
the same query.
Thus, this commit will increase robustness whenever some upstream servers
encounter temporary issues or are misconfigured.
Quoting RFC 1034, Section 4.3.1. "Queries and responses":
If recursive service is requested and available, the recursive response
to a query will be one of the following:
- The answer to the query, possibly preface by one or more CNAME
RRs that specify aliases encountered on the way to an answer.
- A name error indicating that the name does not exist. This
may include CNAME RRs that indicate that the original query
name was an alias for a name which does not exist.
- A temporary error indication.
Here is Section 5.2.3. of RFC 1034, "Temporary failures":
In a less than perfect world, all resolvers will occasionally be unable
to resolve a particular request. This condition can be caused by a
resolver which becomes separated from the rest of the network due to a
link failure or gateway problem, or less often by coincident failure or
unavailability of all servers for a particular domain.
And finally, RFC 1035 specifies RRCODE 2 for this usage, which is now more
widely known as SERVFAIL (RFC 1035, Section 4.1.1. "Header section format"):
RCODE Response code - this 4 bit field is set as part of
responses. The values have the following
interpretation:
(...)
2 Server failure - The name server was
unable to process this query due to a
problem with the name server.
For the DNSSEC-related usage of SERVFAIL, here is RFC 4033
Section 5. "Scope of the DNSSEC Document Set and Last Hop Issues":
A validating resolver can determine the following 4 states:
(...)
Insecure: The validating resolver has a trust anchor, a chain of
trust, and, at some delegation point, signed proof of the
non-existence of a DS record. This indicates that subsequent
branches in the tree are provably insecure. A validating resolver
may have a local policy to mark parts of the domain space as
insecure.
Bogus: The validating resolver has a trust anchor and a secure
delegation indicating that subsidiary data is signed, but the
response fails to validate for some reason: missing signatures,
expired signatures, signatures with unsupported algorithms, data
missing that the relevant NSEC RR says should be present, and so
forth.
(...)
This specification only defines how security-aware name servers can
signal non-validating stub resolvers that data was found to be bogus
(using RCODE=2, "Server Failure"; see [RFC4035]).
Notice the difference between a definite negative answer ("Insecure"
state), and an indefinite error condition ("Bogus" state). The second
type of error may be specific to a recursive resolver, for instance
because its system clock has been incorrectly set, or because it does not
implement newer cryptographic primitives. Another recursive resolver may
succeed for the same query.
There are other similar situations in which the specified behaviour is
similar to the one implemented by this commit.
For instance, RFC 2136 specifies the behaviour of a "requestor" that wants
to update a zone using the DNS UPDATE mechanism. The requestor tries to
contact all authoritative name servers for the zone, with the following
behaviour specified in RFC 2136, Section 4:
4.6. If a response is received whose RCODE is SERVFAIL or NOTIMP, or
if no response is received within an implementation dependent timeout
period, or if an ICMP error is received indicating that the server's
port is unreachable, then the requestor will delete the unusable
server from its internal name server list and try the next one,
repeating until the name server list is empty. If the requestor runs
out of servers to try, an appropriate error will be returned to the
requestor's caller.
---
src/forward.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/src/forward.c
+++ b/src/forward.c
@@ -853,7 +853,8 @@ void reply_query(int fd, int family, tim
we get a good reply from another server. Kill it when we've
had replies from all to avoid filling the forwarding table when
everything is broken */
- if (forward->forwardall == 0 || --forward->forwardall == 1 || RCODE(header) != REFUSED)
+ if (forward->forwardall == 0 || --forward->forwardall == 1 ||
+ (RCODE(header) != REFUSED && RCODE(header) != SERVFAIL))
{
int check_rebind = 0, no_cache_dnssec = 0, cache_secure = 0, bogusanswer = 0;

View File

@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=dropbear
PKG_VERSION:=2016.74
PKG_RELEASE:=2
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:= \

View File

@@ -44,9 +44,10 @@
* which are not the standard form. */
#define DROPBEAR_SHA1_HMAC
-#define DROPBEAR_SHA1_96_HMAC
+/*#define DROPBEAR_SHA1_96_HMAC*/
#define DROPBEAR_SHA2_256_HMAC
-#define DROPBEAR_SHA2_256_HMAC
-#define DROPBEAR_SHA2_512_HMAC
+/*#define DROPBEAR_SHA1_96_HMAC*/
+/*#define DROPBEAR_SHA2_256_HMAC*/
+/*#define DROPBEAR_SHA2_512_HMAC*/
#define DROPBEAR_MD5_HMAC

View File

@@ -7,14 +7,14 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=umdns
PKG_NAME:=mdns
PKG_RELEASE:=1
PKG_SOURCE_URL=$(LEDE_GIT)/project/mdnsd.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2017-02-15
PKG_SOURCE_VERSION:=0d545ed7287026584722a3f9aa855c29bd24d59f
PKG_MIRROR_HASH:=9670680a31f8eca5724da4cd12efedcbc27563b09ed4d94218f5debee1673abc
PKG_SOURCE_DATE:=2017-01-31
PKG_SOURCE_VERSION:=9cbbb141068c12ed032736e20f982e2a0fb43edc
PKG_MIRROR_HASH:=2b981bd2f695f4da63b51be33b42dcda132c6adab227eda2f68a5c534284aea9
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_LICENSE:=LGPL-2.1
@@ -23,7 +23,7 @@ include $(INCLUDE_DIR)/package-seccomp.mk
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/umdns
define Package/mdns
SECTION:=net
CATEGORY:=Network
TITLE:=OpenWrt Multicast DNS Daemon
@@ -32,16 +32,16 @@ endef
TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
define Package/umdns/conffiles
/etc/config/umdns
define Package/mdns/conffiles
/etc/config/mdns
endef
define Package/umdns/install
define Package/mdns/install
$(INSTALL_DIR) $(1)/usr/sbin $(1)/etc/init.d $(1)/etc/config
$(INSTALL_BIN) $(PKG_BUILD_DIR)/umdns $(1)/usr/sbin/
$(INSTALL_BIN) ./files/umdns.init $(1)/etc/init.d/umdns
$(INSTALL_CONF) ./files/umdns.config $(1)/etc/config/umdns
$(call InstallSeccomp,$(1),./files/umdns.json)
$(INSTALL_BIN) $(PKG_BUILD_DIR)/mdns $(1)/usr/sbin/
$(INSTALL_BIN) ./files/mdns.init $(1)/etc/init.d/mdns
$(INSTALL_CONF) ./files/mdns.config $(1)/etc/config/mdns
$(call InstallSeccomp,$(1),./files/mdns.json)
endef
$(eval $(call BuildPackage,umdns))
$(eval $(call BuildPackage,mdns))

View File

@@ -1,3 +1,3 @@
config umdns
config mdns
option jail 1
list network lan

View File

@@ -6,11 +6,11 @@
START=80
USE_PROCD=1
PROG=/usr/sbin/umdns
PROG=/usr/sbin/mdns
IFACES=""
load_ifaces() {
local network="$(uci get umdns.@umdns[-1].network)"
local network="$(uci get mdns.@mdns[-1].network)"
for n in $network; do
local device
json_load "$(ifstatus $n)"
@@ -27,28 +27,28 @@ reload_service() {
done
json_close_array
ubus call umdns set_config "$(json_dump)"
ubus call mdns set_config "$(json_dump)"
}
start_service() {
local network="$(uci get umdns.@umdns[-1].network)"
local network="$(uci get mdns.@mdns[-1].network)"
procd_open_instance
procd_set_param command "$PROG"
procd_set_param seccomp /etc/seccomp/umdns.json
procd_set_param seccomp /etc/seccomp/mdns.json
procd_set_param respawn
procd_open_trigger
procd_add_config_trigger "config.change" "umdns" /etc/init.d/umdns reload
procd_add_config_trigger "config.change" "mdns" /etc/init.d/mdns reload
for n in $network; do
procd_add_interface_trigger "interface.*" $n /etc/init.d/umdns reload
procd_add_interface_trigger "interface.*" $n /etc/init.d/mdns reload
done
procd_add_raw_trigger "instance.update" 5000 "/bin/ubus" "call" "umdns" "reload"
procd_add_raw_trigger "instance.update" 5000 "/bin/ubus" "call" "mdns" "reload"
procd_close_trigger
[ "$(uci get umdns.@umdns[-1].jail)" = 1 ] && procd_add_jail umdns ubus log
[ "$(uci get mdns.@mdns[-1].jail)" = 1 ] && procd_add_jail mdns ubus log
procd_close_instance
}
service_started() {
ubus -t 10 wait_for umdns
ubus -t 10 wait_for mdns
[ $? = 0 ] && reload_service
}

View File

@@ -11,10 +11,10 @@ PKG_NAME:=odhcpd
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(LEDE_GIT)/project/odhcpd.git
PKG_SOURCE_DATE:=2017-02-09
PKG_SOURCE_VERSION:=8df4253ba73246d31f2e65f2004da3f9890c22c5
PKG_MIRROR_HASH:=0040f94d11d0039505328a90b2ff48968db873e9e7967307631bf40ef5679275
PKG_SOURCE_URL:=$(LEDE_GIT)/project/odhcpd.git
PKG_SOURCE_DATE:=2017-01-26
PKG_SOURCE_VERSION:=c4f9ace5560562d3ba7dfefb9e422240d594a460
PKG_MIRROR_HASH:=323a1123ce37c5f1e60366204d0ed273c0ee003e7a43010bf0882cf67629ee39
PKG_MAINTAINER:=Hans Dedecker <dedeckeh@gmail.com>
PKG_LICENSE:=GPL-2.0
@@ -33,7 +33,7 @@ define Package/odhcpd
SECTION:=net
CATEGORY:=Network
TITLE:=OpenWrt DHCP/DHCPv6(-PD)/RA Server & Relay
DEPENDS:=+libubox +libuci +libubus +libnl-tiny
DEPENDS:=+libubox +libuci +libubus
endef
define Package/odhcpd/config

View File

@@ -47,7 +47,7 @@ generate_keys() {
# Prefer px5g for certificate generation (existence evaluated last)
local GENKEY_CMD=""
local UNIQUEID=$(dd if=/dev/urandom bs=1 count=4 | hexdump -e '1/1 "%02x"')
[ -x "$OPENSSL_BIN" ] && GENKEY_CMD="$OPENSSL_BIN req -x509 -sha256 -outform der -nodes"
[ -x "$OPENSSL_BIN" ] && GENKEY_CMD="$OPENSSL_BIN req -x509 -outform der -nodes"
[ -x "$PX5G_BIN" ] && GENKEY_CMD="$PX5G_BIN selfsigned -der"
[ -n "$GENKEY_CMD" ] && {
$GENKEY_CMD \

View File

@@ -12,9 +12,9 @@ PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(LEDE_GIT)/project/procd.git
PKG_SOURCE_DATE:=2017-02-08
PKG_SOURCE_VERSION:=cdc3dab3cd5d0295f638de3088bc4f5c9669e7c2
PKG_MIRROR_HASH:=97d57f0f117a3a5b353a904d4ad7091a008d3c93672652c771ac38dd78bb0530
PKG_SOURCE_DATE:=2017-01-26
PKG_SOURCE_VERSION:=0f5897760272307d671f4c4c11737241755e853d
PKG_MIRROR_HASH:=6647f7b1c0a41ab14a02239816e4752303c4bc58f787b8c123d05b18b5cb41f3
CMAKE_INSTALL:=1
PKG_LICENSE:=GPL-2.0

View File

@@ -251,8 +251,9 @@ _procd_add_interface_trigger() {
json_close_array
json_close_array
_procd_add_timeout
json_close_array
_procd_add_timeout
}
_procd_add_reload_interface_trigger() {
@@ -282,8 +283,10 @@ _procd_add_config_trigger() {
json_close_array
json_close_array
_procd_add_timeout
json_close_array
_procd_add_timeout
}
_procd_add_raw_trigger() {

View File

@@ -20,6 +20,7 @@ define Package/px5g-standalone
SUBMENU:=Encryption
TITLE:=X.509 certificate generator (standalone version)
MAINTAINER:=Jo-Philipp Wich <xm@subsignal.org>
PROVIDES:=px5g
endef
define Package/px5g-standalone/description

View File

@@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ugps
PKG_RELEASE:=2
PKG_RELEASE:=1
PKG_SOURCE_URL=$(LEDE_GIT)/project/ugps.git
PKG_SOURCE_PROTO:=git

View File

@@ -1,3 +1,3 @@
config gps
option 'tty' 'ttyACM0'
option 'adjust_time' '1'
option 'adjust_time ' '1'

View File

@@ -7,7 +7,7 @@
#
usage() {
echo "Usage: $0 <OM2P|OM5P|OM5PAC|MR600|MR900|MR1750|A60> <out file path> <kernel path> <rootfs path>"
echo "Usage: $0 <OM2P|OM5P|OM5PAC|MR600|MR900|MR1750> <out file path> <kernel path> <rootfs path>"
rm -f $CFG_OUT
exit 1
}
@@ -26,7 +26,7 @@ case $CE_TYPE in
FLASH_BS=262144
MD5_SKIP_BLOCKS=1
;;
OM5P|OM5PAC|MR600|MR900|MR1750|A60)
OM5P|OM5PAC|MR600|MR900|MR1750)
MAX_PART_SIZE=7808
KERNEL_FLASH_ADDR=0xb0000
FLASH_BS=65536

View File

@@ -203,14 +203,13 @@ endchoice
choice
prompt "Target Profile"
default TARGET_MULTI_PROFILE if BUILDBOT
EOF
foreach my $target (@target) {
my $profile = $target->{profiles}->[0];
$profile or next;
print <<EOF;
default TARGET_$target->{conf}_$profile->{id} if TARGET_$target->{conf} && !BUILDBOT
default TARGET_$target->{conf}_$profile->{id} if TARGET_$target->{conf}
EOF
}
@@ -257,11 +256,9 @@ menu "Target Devices"
config TARGET_ALL_PROFILES
bool "Enable all profiles by default"
default BUILDBOT
config TARGET_PER_DEVICE_ROOTFS
bool "Use a per-device root filesystem that adds profile packages"
default BUILDBOT
help
When disabled, all device packages from all selected devices
will be included in all images by default. (Marked as <*>) You will

View File

@@ -1,7 +1,6 @@
config IB
bool "Build the LEDE Image Builder"
depends on !EXTERNAL_TOOLCHAIN
default BUILDBOT
help
This is essentially a stripped-down version of the buildroot
with precompiled packages, kernel image and image building tools.
@@ -9,7 +8,7 @@ config IB
config IB_STANDALONE
bool "Include package repositories"
default y if !BUILDBOT
default y
depends on IB
help
Disabling this option will cause the ImageBuilder to embed only

View File

@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
BOARD:=adm5120
BOARDNAME:=Infineon/ADMtek ADM5120
FEATURES:=low_mem source-only
FEATURES:=low_mem
SUBTARGETS:=router_le router_be rb1xx
INITRAMFS_EXTRA_FILES:=

View File

@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
ARCH:=mipsel
BOARD:=adm8668
BOARDNAME:=Infineon WildPass ADM8668
FEATURES:=squashfs usb pci source-only
FEATURES:=squashfs usb pci
MAINTAINER:=Florian Fainelli <florian@openwrt.org>
KERNEL_PATCHVER:=3.18

View File

@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
ARCH:=mipsel
BOARD:=ar7
BOARDNAME:=TI AR7
FEATURES:=squashfs atm low_mem source-only
FEATURES:=squashfs atm low_mem
MAINTAINER:=Florian Fainelli <florian@openwrt.org>
SUBTARGETS:=generic ac49x

View File

@@ -11,14 +11,6 @@ board_config_update
board=$(ar71xx_board_name)
case "$board" in
a40)
ucidef_set_led_default "status-red" "Status (red)" "a40:red:status" "0"
ucidef_set_led_default "status-blue" "Status (blue)" "a40:blue:status" "0"
;;
a60)
ucidef_set_led_default "status-red" "Status (red)" "a60:red:status" "0"
ucidef_set_led_default "status-blue" "Status (blue)" "a60:blue:status" "0"
;;
airgateway|\
airgatewaypro)
ucidef_set_led_wlan "wlan" "WLAN" "ubnt:blue:wlan" "phy0tpt"
@@ -399,11 +391,9 @@ nbg6716)
;;
om2p|\
om2pv2|\
om2pv4|\
om2p-hs|\
om2p-hsv2|\
om2p-hsv3|\
om2p-hsv4|\
om2p-lc)
ucidef_set_led_netdev "port1" "port1" "om2p:blue:wan" "eth0"
ucidef_set_led_netdev "port2" "port2" "om2p:blue:lan" "eth1"

View File

@@ -118,8 +118,6 @@ ar71xx_setup_interfaces()
wp543)
ucidef_set_interface_lan "eth0"
;;
a40|\
a60|\
alfa-ap96|\
alfa-nx|\
gl-ar150|\
@@ -128,8 +126,6 @@ ar71xx_setup_interfaces()
gl-inet|\
gl-mifi|\
jwap003|\
om2pv4|\
om2p-hsv4|\
pb42|\
pb44|\
rb-951ui-2hnd|\

View File

@@ -8,12 +8,6 @@ get_status_led() {
local board=$(ar71xx_board_name)
case $board in
a40)
status_led="a40:green:status"
;;
a60)
status_led="a60:green:status"
;;
alfa-nx)
status_led="alfa:green:led_8"
;;
@@ -244,11 +238,9 @@ get_status_led() {
;;
om2p|\
om2pv2|\
om2pv4|\
om2p-hs|\
om2p-hsv2|\
om2p-hsv3|\
om2p-hsv4|\
om2p-lc)
status_led="om2p:blue:power"
;;

View File

@@ -76,8 +76,6 @@ case "$FIRMWARE" in
ath10kcal_extract "art" 20480 2116
ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth1/address) -1)
;;
a40 | \
a60 | \
mr1750 | \
mr1750v2 | \
om5p-acv2)

View File

@@ -382,12 +382,6 @@ ar71xx_board_detect() {
*"Oolite V1.0")
name="oolite"
;;
*"A40")
name="a40"
;;
*"A60")
name="a60"
;;
*"AC1750DB")
name="f9k1115v2"
;;
@@ -742,9 +736,6 @@ ar71xx_board_detect() {
*OM2Pv2)
name="om2pv2"
;;
*OM2Pv4)
name="om2pv4"
;;
*"OM2P HS")
name="om2p-hs"
;;
@@ -754,9 +745,6 @@ ar71xx_board_detect() {
*"OM2P HSv3")
name="om2p-hsv3"
;;
*"OM2P HSv4")
name="om2p-hsv4"
;;
*"OM2P LC")
name="om2p-lc"
;;

View File

@@ -41,21 +41,13 @@ platform_check_image_target_openmesh()
img_board_target="$1"
case "$img_board_target" in
A60)
[ "$board" = "a40" ] && return 0
[ "$board" = "a60" ] && return 0
echo "Invalid image board target ($img_board_target) for this platform: $board. Use the correct image for this platform"
return 1
;;
OM2P)
[ "$board" = "om2p" ] && return 0
[ "$board" = "om2pv2" ] && return 0
[ "$board" = "om2pv4" ] && return 0
[ "$board" = "om2p-lc" ] && return 0
[ "$board" = "om2p-hs" ] && return 0
[ "$board" = "om2p-hsv2" ] && return 0
[ "$board" = "om2p-hsv3" ] && return 0
[ "$board" = "om2p-hsv4" ] && return 0
echo "Invalid image board target ($img_board_target) for this platform: $board. Use the correct image for this platform"
return 1
;;
@@ -185,7 +177,7 @@ platform_do_upgrade_openmesh()
kernel_start_addr1=0x9f1c0000
kernel_start_addr2=0x9f8c0000
;;
OM5P|OM5PAC|MR600|MR900|MR1750|A60)
OM5P|OM5PAC|MR600|MR900|MR1750)
block_size=$((64 * 1024))
total_size=7995392
kernel_start_addr1=0x9f0b0000

View File

@@ -492,8 +492,6 @@ platform_check_image() {
tplink_pharos_check_image "$1" && return 0
return 1
;;
a40|\
a60|\
mr1750v2|\
mr1750|\
mr600v2|\
@@ -502,11 +500,9 @@ platform_check_image() {
mr900|\
om2p-hsv2|\
om2p-hsv3|\
om2p-hsv4|\
om2p-hs|\
om2p-lc|\
om2pv2|\
om2pv4|\
om2p|\
om5p-acv2|\
om5p-ac|\
@@ -673,8 +669,6 @@ platform_do_upgrade() {
tew-673gru)
platform_do_upgrade_dir825b "$ARGV"
;;
a40|\
a60|\
mr1750v2|\
mr1750|\
mr600v2|\
@@ -683,11 +677,9 @@ platform_do_upgrade() {
mr900|\
om2p-hsv2|\
om2p-hsv3|\
om2p-hsv4|\
om2p-hs|\
om2p-lc|\
om2pv2|\
om2pv4|\
om2p|\
om5p-acv2|\
om5p-ac|\

View File

@@ -32,7 +32,6 @@ CONFIG_ATH79_DEV_NFC=y
CONFIG_ATH79_DEV_SPI=y
CONFIG_ATH79_DEV_USB=y
CONFIG_ATH79_DEV_WMAC=y
CONFIG_ATH79_MACH_A60=y
CONFIG_ATH79_MACH_ALFA_AP120C=y
CONFIG_ATH79_MACH_ALFA_AP96=y
CONFIG_ATH79_MACH_ALFA_NX=y

View File

@@ -1,13 +1,3 @@
config ATH79_MACH_A60
bool "OpenMesh A40/A60 board support"
select SOC_QCA955X
select ATH79_DEV_AP9X_PCI if PCI
select ATH79_DEV_ETH
select ATH79_DEV_LEDS_GPIO
select ATH79_DEV_M25P80
select ATH79_DEV_WMAC
select ATH79_DEV_USB
config ATH79_MACH_ALFA_AP120C
bool "ALFA Network AP120C board support"
select ATH79_DEV_AP9X_PCI if PCI
@@ -998,7 +988,6 @@ config ATH79_MACH_OM2P
bool "OpenMesh OM2P board support"
select SOC_AR724X
select SOC_AR933X
select SOC_QCA953X
select ATH79_DEV_AP9X_PCI if PCI
select ATH79_DEV_ETH
select ATH79_DEV_GPIO_BUTTONS

View File

@@ -38,7 +38,6 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += routerboot.o
#
# Machines
#
obj-$(CONFIG_ATH79_MACH_A60) += mach-a60.o
obj-$(CONFIG_ATH79_MACH_ALFA_AP120C) += mach-alfa-ap120c.o
obj-$(CONFIG_ATH79_MACH_ALFA_AP96) += mach-alfa-ap96.o
obj-$(CONFIG_ATH79_MACH_ALFA_NX) += mach-alfa-nx.o

View File

@@ -1075,7 +1075,7 @@ void __init ath79_register_eth(unsigned int id)
if (pdata->phy_if_mode == PHY_INTERFACE_MODE_SGMII)
pdata->set_speed = qca956x_set_speed_sgmii;
else
pdata->set_speed = ar934x_set_speed_ge0;
pdata->set_speed = ath79_set_speed_ge0;
} else {
pdata->reset_bit = QCA955X_RESET_GE1_MAC |
QCA955X_RESET_GE1_MDIO;

View File

@@ -1,181 +0,0 @@
/*
* OpenMesh A60 support
*
* Copyright (C) 2013 Marek Lindner <marek@open-mesh.com>
* Copyright (C) 2014-2017 Sven Eckelmann <sven@open-mesh.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 as published
* by the Free Software Foundation.
*/
#include <linux/gpio.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/partitions.h>
#include <linux/platform_device.h>
#include <linux/platform_data/phy-at803x.h>
#include <asm/mach-ath79/ar71xx_regs.h>
#include <asm/mach-ath79/ath79.h>
#include "common.h"
#include "dev-ap9x-pci.h"
#include "dev-eth.h"
#include "dev-leds-gpio.h"
#include "dev-gpio-buttons.h"
#include "dev-m25p80.h"
#include "dev-wmac.h"
#include "machtypes.h"
#include "pci.h"
#include "dev-usb.h"
#define A60_GPIO_LED_RED 22
#define A60_GPIO_LED_GREEN 23
#define A60_GPIO_LED_BLUE 13
#define A60_GPIO_BTN_RESET 17
#define A60_KEYS_POLL_INTERVAL 20 /* msecs */
#define A60_KEYS_DEBOUNCE_INTERVAL (3 * A60_KEYS_POLL_INTERVAL)
#define A60_WMAC_CALDATA_OFFSET 0x1000
static struct gpio_led a40_leds_gpio[] __initdata = {
{
.name = "a40:red:status",
.gpio = A60_GPIO_LED_RED,
}, {
.name = "a40:green:status",
.gpio = A60_GPIO_LED_GREEN,
}, {
.name = "a40:blue:status",
.gpio = A60_GPIO_LED_BLUE,
}
};
static struct gpio_led a60_leds_gpio[] __initdata = {
{
.name = "a60:red:status",
.gpio = A60_GPIO_LED_RED,
}, {
.name = "a60:green:status",
.gpio = A60_GPIO_LED_GREEN,
}, {
.name = "a60:blue:status",
.gpio = A60_GPIO_LED_BLUE,
}
};
static struct gpio_keys_button a60_gpio_keys[] __initdata = {
{
.desc = "Reset button",
.type = EV_KEY,
.code = KEY_RESTART,
.debounce_interval = A60_KEYS_DEBOUNCE_INTERVAL,
.gpio = A60_GPIO_BTN_RESET,
.active_low = 1,
},
};
static struct at803x_platform_data a60_at803x_data = {
.disable_smarteee = 1,
.enable_rgmii_rx_delay = 1,
.enable_rgmii_tx_delay = 1,
};
static struct mdio_board_info a60_mdio0_info[] = {
{
.bus_id = "ag71xx-mdio.0",
.phy_addr = 1,
.platform_data = &a60_at803x_data,
},
{
.bus_id = "ag71xx-mdio.0",
.phy_addr = 2,
.platform_data = &a60_at803x_data,
},
};
static void __init a60_setup_qca955x_eth_cfg(u32 mask,
unsigned int rxd,
unsigned int rxdv,
unsigned int txd,
unsigned int txe)
{
void __iomem *base;
u32 t;
base = ioremap(QCA955X_GMAC_BASE, QCA955X_GMAC_SIZE);
t = mask;
t |= rxd << QCA955X_ETH_CFG_RXD_DELAY_SHIFT;
t |= rxdv << QCA955X_ETH_CFG_RDV_DELAY_SHIFT;
t |= txd << QCA955X_ETH_CFG_TXD_DELAY_SHIFT;
t |= txe << QCA955X_ETH_CFG_TXE_DELAY_SHIFT;
__raw_writel(t, base + QCA955X_GMAC_REG_ETH_CFG);
iounmap(base);
}
static void __init a60_setup_common(void)
{
u8 *art = (u8 *)KSEG1ADDR(0x1fff0000);
u8 mac[6];
ath79_register_usb();
ath79_register_m25p80(NULL);
ath79_register_gpio_keys_polled(-1, A60_KEYS_POLL_INTERVAL,
ARRAY_SIZE(a60_gpio_keys),
a60_gpio_keys);
ath79_init_mac(mac, art, 0x02);
ath79_register_wmac(art + A60_WMAC_CALDATA_OFFSET, mac);
a60_setup_qca955x_eth_cfg(QCA955X_ETH_CFG_RGMII_EN, 3, 3, 0, 0);
ath79_register_mdio(0, 0x0);
mdiobus_register_board_info(a60_mdio0_info, ARRAY_SIZE(a60_mdio0_info));
ath79_init_mac(ath79_eth0_data.mac_addr, art, 0x00);
ath79_init_mac(ath79_eth1_data.mac_addr, art, 0x01);
/* GMAC0 is connected to the PHY1 */
ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII;
ath79_eth0_data.mii_bus_dev = &ath79_mdio0_device.dev;
ath79_eth0_data.phy_mask = BIT(1);
ath79_eth0_pll_data.pll_1000 = 0x82000101;
ath79_eth0_pll_data.pll_100 = 0x80000101;
ath79_eth0_pll_data.pll_10 = 0x80001313;
ath79_register_eth(0);
/* GMAC1 is connected to MDIO1 in SGMII mode */
ath79_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_SGMII;
ath79_eth1_data.mii_bus_dev = &ath79_mdio0_device.dev;
ath79_eth1_data.phy_mask = BIT(2);
ath79_eth1_pll_data.pll_1000 = 0x03000101;
ath79_eth1_pll_data.pll_100 = 0x80000101;
ath79_eth1_pll_data.pll_10 = 0x80001313;
ath79_eth1_data.speed = SPEED_1000;
ath79_eth1_data.duplex = DUPLEX_FULL;
ath79_register_eth(1);
ath79_register_pci();
}
static void __init a40_setup(void)
{
ath79_register_leds_gpio(-1, ARRAY_SIZE(a40_leds_gpio), a40_leds_gpio);
a60_setup_common();
}
MIPS_MACHINE(ATH79_MACH_A40, "A40", "OpenMesh A40", a40_setup);
static void __init a60_setup(void)
{
ath79_register_leds_gpio(-1, ARRAY_SIZE(a60_leds_gpio), a60_leds_gpio);
a60_setup_common();
}
MIPS_MACHINE(ATH79_MACH_A60, "A60", "OpenMesh A60", a60_setup);

View File

@@ -46,16 +46,6 @@
#define OM2P_LC_GPIO_LED_WAN 17
#define OM2P_LC_GPIO_BTN_RESET 12
#define OM2Pv4_GPIO_LED_POWER 0
#define OM2Pv4_GPIO_LED_GREEN 2
#define OM2Pv4_GPIO_LED_RED 4
#define OM2Pv4_GPIO_LED_YELLOW 3
#define OM2Pv4_GPIO_LED_LAN 14
#define OM2Pv4_GPIO_LED_WAN 13
#define OM2Pv4_GPIO_BTN_RESET 1
#define OM2P_WMAC_CALDATA_OFFSET 0x1000
static struct flash_platform_data om2p_flash_data = {
.type = "s25sl12800",
.name = "ar7240-nor0",
@@ -234,87 +224,3 @@ static void __init om2p_hs_setup(void)
MIPS_MACHINE(ATH79_MACH_OM2P_HS, "OM2P-HS", "OpenMesh OM2P HS", om2p_hs_setup);
MIPS_MACHINE(ATH79_MACH_OM2P_HSv2, "OM2P-HSv2", "OpenMesh OM2P HSv2", om2p_hs_setup);
MIPS_MACHINE(ATH79_MACH_OM2P_HSv3, "OM2P-HSv3", "OpenMesh OM2P HSv3", om2p_hs_setup);
static struct flash_platform_data om2pv4_flash_data = {
.type = "s25sl12800",
};
static struct gpio_led om2pv4_leds_gpio[] __initdata = {
{
.name = "om2p:blue:power",
.gpio = OM2Pv4_GPIO_LED_POWER,
.active_low = 1,
}, {
.name = "om2p:red:wifi",
.gpio = OM2Pv4_GPIO_LED_RED,
.active_low = 1,
}, {
.name = "om2p:yellow:wifi",
.gpio = OM2Pv4_GPIO_LED_YELLOW,
.active_low = 1,
}, {
.name = "om2p:green:wifi",
.gpio = OM2Pv4_GPIO_LED_GREEN,
.active_low = 1,
}, {
.name = "om2p:blue:lan",
.gpio = OM2Pv4_GPIO_LED_LAN,
.active_low = 1,
}, {
.name = "om2p:blue:wan",
.gpio = OM2Pv4_GPIO_LED_WAN,
.active_low = 1,
}
};
static struct gpio_keys_button om2pv4_gpio_keys[] __initdata = {
{
.desc = "reset",
.type = EV_KEY,
.code = KEY_RESTART,
.debounce_interval = OM2P_KEYS_DEBOUNCE_INTERVAL,
.gpio = OM2Pv4_GPIO_BTN_RESET,
.active_low = 1,
}
};
static void __init om2pv4_setup(void)
{
u8 *mac1 = (u8 *)KSEG1ADDR(0x1ffc0000);
u8 *mac2 = (u8 *)KSEG1ADDR(0x1ffc0000 + ETH_ALEN);
u8 *art = (u8 *)KSEG1ADDR(0x1ffc0000);
u8 wmac[6];
ath79_register_m25p80(&om2pv4_flash_data);
ath79_register_leds_gpio(-1, ARRAY_SIZE(om2pv4_leds_gpio),
om2pv4_leds_gpio);
ath79_register_gpio_keys_polled(-1, OM2P_KEYS_POLL_INTERVAL,
ARRAY_SIZE(om2pv4_gpio_keys),
om2pv4_gpio_keys);
ath79_init_mac(wmac, art, 0x02);
ath79_register_wmac(art + OM2P_WMAC_CALDATA_OFFSET, wmac);
ath79_setup_ar933x_phy4_switch(false, false);
ath79_register_mdio(0, 0x0);
/* LAN */
ath79_switch_data.phy4_mii_en = 1;
ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_MII;
ath79_eth0_data.duplex = DUPLEX_FULL;
ath79_eth0_data.speed = SPEED_100;
ath79_eth0_data.phy_mask = BIT(4);
ath79_init_mac(ath79_eth1_data.mac_addr, mac2, 0);
ath79_register_eth(0);
/* WAN */
ath79_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_GMII;
ath79_eth1_data.duplex = DUPLEX_FULL;
ath79_switch_data.phy_poll_mask |= BIT(4);
ath79_init_mac(ath79_eth0_data.mac_addr, mac1, 0);
ath79_register_eth(1);
}
MIPS_MACHINE(ATH79_MACH_OM2Pv4, "OM2Pv4", "OpenMesh OM2Pv4", om2pv4_setup);
MIPS_MACHINE(ATH79_MACH_OM2P_HSv4, "OM2P-HSv4", "OpenMesh OM2P HSv4", om2pv4_setup);

View File

@@ -17,8 +17,6 @@
enum ath79_mach_type {
ATH79_MACH_GENERIC_OF = -1, /* Device tree board */
ATH79_MACH_GENERIC = 0,
ATH79_MACH_A40, /* OpenMesh A40 */
ATH79_MACH_A60, /* OpenMesh A60 */
ATH79_MACH_ALFA_AP120C, /* ALFA Network AP120C board */
ATH79_MACH_ALFA_AP96, /* ALFA Network AP96 board */
ATH79_MACH_ALFA_NX, /* ALFA Network N2/N5 board */
@@ -130,11 +128,9 @@ enum ath79_mach_type {
ATH79_MACH_NBG6716, /* Zyxel NBG6716 */
ATH79_MACH_OM2P, /* OpenMesh OM2P */
ATH79_MACH_OM2Pv2, /* OpenMesh OM2Pv2 */
ATH79_MACH_OM2Pv4, /* OpenMesh OM2Pv4 */
ATH79_MACH_OM2P_HS, /* OpenMesh OM2P-HS */
ATH79_MACH_OM2P_HSv2, /* OpenMesh OM2P-HSv2 */
ATH79_MACH_OM2P_HSv3, /* OpenMesh OM2P-HSv3 */
ATH79_MACH_OM2P_HSv4, /* OpenMesh OM2P-HSv4 */
ATH79_MACH_OM2P_LC, /* OpenMesh OM2P-LC */
ATH79_MACH_OM5P, /* OpenMesh OM5P */
ATH79_MACH_OM5P_AC, /* OpenMesh OM5P-AC */

View File

@@ -1,10 +1,3 @@
define LegacyDevice/A60
DEVICE_TITLE := OpenMesh A40/A60
DEVICE_PACKAGES := om-watchdog kmod-ath10k ath10k-firmware-qca988x \
mod-usb-core kmod-usb2
endef
LEGACY_DEVICES += A60
define LegacyDevice/ALFANX
DEVICE_TITLE := ALFA Network N2/N5 board
endef
@@ -476,7 +469,7 @@ endef
LEGACY_DEVICES += WPN824N
define LegacyDevice/OM2P
DEVICE_TITLE := OpenMesh OM2P/OM2P-HS/OM2P-LC
DEVICE_TITLE := OpenMesh OM2P/OM2Pv2/OM2P-HS/OM2P-HSv2/OM2P-HSv3/OM2P-LC
DEVICE_PACKAGES := om-watchdog
endef
LEGACY_DEVICES += OM2P
@@ -488,7 +481,7 @@ endef
LEGACY_DEVICES += OM5P
define LegacyDevice/OM5PAC
DEVICE_TITLE := OpenMesh OM5P-AC
DEVICE_TITLE := OpenMesh OM5P-AC/OM5P-ACv2
DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x om-watchdog
endef
LEGACY_DEVICES += OM5PAC
@@ -500,14 +493,14 @@ endef
LEGACY_DEVICES += MR600
define LegacyDevice/MR900
DEVICE_TITLE := OpenMesh MR900
DEVICE_TITLE := OpenMesh MR900/MR900v2
DEVICE_PACKAGES := om-watchdog
endef
LEGACY_DEVICES += MR900
define LegacyDevice/MR1750
DEVICE_TITLE := OpenMesh MR1750
DEVICE_PACKAGES := om-watchdog kmod-ath10k ath10k-firmware-qca988x
DEVICE_TITLE := OpenMesh MR1750/MR1750v2
DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x
endef
LEGACY_DEVICES += MR1750

View File

@@ -984,7 +984,6 @@ $(eval $(call SingleProfile,Netgear,64kraw,REALWNR1000V2,wnr1000v2,WNR1000V2,tty
$(eval $(call SingleProfile,Netgear,64kraw,WNR1000V2_VC,wnr1000v2-vc,WNR1000V2,ttyS0,115200,$$(wnr2000v3_mtdlayout),0x31303030,WNR1000V2-VC,"",))
$(eval $(call SingleProfile,Netgear,64kraw,WPN824N,wpn824n,WPN824N,ttyS0,115200,$$(wnr2000v3_mtdlayout),0x31313030,WPN824N,"" NA,))
$(eval $(call SingleProfile,OpenMesh,squashfs-only,A60,a60,,,,A60))
$(eval $(call SingleProfile,OpenMesh,squashfs-only,OM2P,om2p,,,,OM2P))
$(eval $(call SingleProfile,OpenMesh,squashfs-only,OM5P,om5p,,,,OM5P))
$(eval $(call SingleProfile,OpenMesh,squashfs-only,OM5PAC,om5pac,,,,OM5PAC))

View File

@@ -1,6 +1,5 @@
define Device/mikrotik
PROFILES := Default
DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport nand-utils
BOARD_NAME := routerboard
KERNEL_INITRAMFS :=
KERNEL_NAME := loader-generic.elf
@@ -26,7 +25,6 @@ TARGET_DEVICES += nand-64m nand-large
define Device/rb-nor-flash-16M
DEVICE_TITLE := MikroTik RouterBoard with 16 MB NOR flash
DEVICE_PACKAGES := rbcfg
BLOCKSIZE := 64k
IMAGE_SIZE := 16000k
LOADER_TYPE := elf
@@ -40,5 +38,8 @@ endef
define Device/rb-941-2nd
$(Device/rb-nor-flash-16M)
DEVICE_TITLE := hAP lite
DEVICE_PACKAGES:= rbcfg
BOARDNAME:= rb-941-2nd
endef
TARGET_DEVICES += rb-nor-flash-16M rb-941-2nd

View File

@@ -267,16 +267,16 @@
case IPV6_2292HOPOPTS:
--- a/net/ipv6/ip6_gre.c
+++ b/net/ipv6/ip6_gre.c
@@ -395,7 +395,7 @@ static void ip6gre_err(struct sk_buff *s
return;
ipv6h = (const struct ipv6hdr *)skb->data;
greh = (const struct gre_base_hdr *)(skb->data + offset);
- key = key_off ? *(__be32 *)(skb->data + key_off) : 0;
+ key = key_off ? net_hdr_word((__be32 *)(skb->data + key_off)) : 0;
@@ -394,7 +394,7 @@ static void ip6gre_err(struct sk_buff *s
t = ip6gre_tunnel_lookup(skb->dev, &ipv6h->daddr, &ipv6h->saddr,
key, greh->protocol);
@@ -479,11 +479,11 @@ static int ip6gre_rcv(struct sk_buff *sk
flags & GRE_KEY ?
- *(((__be32 *)p) + (grehlen / 4) - 1) : 0,
+ net_hdr_word(((__be32 *)p) + (grehlen / 4) - 1) : 0,
p[1]);
if (!t)
return;
@@ -476,11 +476,11 @@ static int ip6gre_rcv(struct sk_buff *sk
offset += 4;
}
if (flags&GRE_KEY) {
@@ -290,7 +290,7 @@
offset += 4;
}
}
@@ -745,7 +745,7 @@ static netdev_tx_t ip6gre_xmit2(struct s
@@ -742,7 +742,7 @@ static netdev_tx_t ip6gre_xmit2(struct s
if (tunnel->parms.o_flags&GRE_SEQ) {
++tunnel->o_seqno;
@@ -299,7 +299,7 @@
ptr--;
}
if (tunnel->parms.o_flags&GRE_KEY) {
@@ -841,7 +841,7 @@ static inline int ip6gre_xmit_ipv6(struc
@@ -838,7 +838,7 @@ static inline int ip6gre_xmit_ipv6(struc
dsfield = ipv6_get_dsfield(ipv6h);
if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS)
@@ -310,7 +310,7 @@
if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK)
--- a/net/ipv6/ip6_tunnel.c
+++ b/net/ipv6/ip6_tunnel.c
@@ -1407,7 +1407,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str
@@ -1397,7 +1397,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str
dsfield = ipv6_get_dsfield(ipv6h);
if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS)

View File

@@ -0,0 +1,31 @@
From: Jo-Philipp Wich <jo@mein.io>
Date: Tue, 7 Feb 2017 09:26:00 +0100
Subject: [PATCH] arc: revert broken upstream change
The upstream commit
"9aed02f ARC: [arcompact] handle unaligned access delay slot corner case"
introduced a syntax error in arch/arc/kernel/unaligned.c, leading to the
following build failure:
arch/arc/kernel/unaligned.c: In function 'misaligned_fixup':
arch/arc/kernel/unaligned.c:246:25: error: expected ';' before '~' token
regs->ret = regs->bta ~1U;
^
make[6]: *** [arch/arc/kernel/unaligned.o] Error 1
This patch reverts the offending change until an upstream fix is available.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
--- a/arch/arc/kernel/unaligned.c
+++ b/arch/arc/kernel/unaligned.c
@@ -241,9 +241,8 @@ int misaligned_fixup(unsigned long addre
if (state.fault)
goto fault;
- /* clear any remanants of delay slot */
if (delay_mode(regs)) {
- regs->ret = regs->bta ~1U;
+ regs->ret = regs->bta;
regs->status32 &= ~STATUS_DE_MASK;
} else {
regs->ret += state.instr_len;

View File

@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
ARCH:=mipsel
BOARD:=au1000
BOARDNAME:=RMI/AMD AU1x00
FEATURES:=squashfs usb pci source-only
FEATURES:=squashfs usb pci
SUBTARGETS:=au1500 au1550
MAINTAINER:=Florian Fainelli <florian@openwrt.org>

View File

@@ -3,7 +3,6 @@
# Copyright (C) 2011 OpenWrt.org
#
. /lib/functions/system.sh
. /lib/functions/uci-defaults.sh
board_config_update

View File

@@ -300,7 +300,7 @@ TARGET_DEVICES += asus-wl-500gp-v2
define Device/asus-wl-500w
DEVICE_TITLE := Asus WL-500W
DEVICE_PACKAGES := kmod-b43 kmod-usb-uhci kmod-usb2-pci
DEVICE_PACKAGES := kmod-b43 $(USB2_PACKAGES)
$(Device/asus)
PRODUCTID := "WL500W "
endef

View File

@@ -1,38 +0,0 @@
From: Mirko Parthey <mirko.parthey@web.de>
Subject: [PATCH] MIPS: bcm47xx: Fix button inversion for Asus WL-500W
The Asus WL-500W buttons are active high,
but the software treats them as active low.
Fix the inverted logic.
Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
---
arch/mips/bcm47xx/buttons.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
--- a/arch/mips/bcm47xx/buttons.c
+++ b/arch/mips/bcm47xx/buttons.c
@@ -17,6 +17,12 @@
.active_low = 1, \
}
+#define BCM47XX_GPIO_KEY_H(_gpio, _code) \
+ { \
+ .code = _code, \
+ .gpio = _gpio, \
+ }
+
/* Asus */
static const struct gpio_keys_button
@@ -79,8 +85,8 @@ bcm47xx_buttons_asus_wl500gpv2[] __initc
static const struct gpio_keys_button
bcm47xx_buttons_asus_wl500w[] __initconst = {
- BCM47XX_GPIO_KEY(6, KEY_RESTART),
- BCM47XX_GPIO_KEY(7, KEY_WPS_BUTTON),
+ BCM47XX_GPIO_KEY_H(6, KEY_RESTART),
+ BCM47XX_GPIO_KEY_H(7, KEY_WPS_BUTTON),
};
static const struct gpio_keys_button

View File

@@ -31,7 +31,7 @@
{{BCM47XX_BOARD_NETGEAR_WNR3500U, "Netgear WNR3500U"}, "U12H136T00_NETGEAR"},
--- a/arch/mips/bcm47xx/buttons.c
+++ b/arch/mips/bcm47xx/buttons.c
@@ -26,6 +26,12 @@
@@ -20,6 +20,12 @@
/* Asus */
static const struct gpio_keys_button
@@ -44,7 +44,7 @@
bcm47xx_buttons_asus_rtn12[] __initconst = {
BCM47XX_GPIO_KEY(0, KEY_WPS_BUTTON),
BCM47XX_GPIO_KEY(1, KEY_RESTART),
@@ -276,6 +282,18 @@ bcm47xx_buttons_linksys_wrt310nv1[] __in
@@ -270,6 +276,18 @@ bcm47xx_buttons_linksys_wrt310nv1[] __in
};
static const struct gpio_keys_button
@@ -63,7 +63,7 @@
bcm47xx_buttons_linksys_wrt54g3gv2[] __initconst = {
BCM47XX_GPIO_KEY(5, KEY_WIMAX),
BCM47XX_GPIO_KEY(6, KEY_RESTART),
@@ -384,6 +402,17 @@ bcm47xx_buttons_motorola_wr850gv2v3[] __
@@ -378,6 +396,17 @@ bcm47xx_buttons_motorola_wr850gv2v3[] __
/* Netgear */
static const struct gpio_keys_button
@@ -81,7 +81,7 @@
bcm47xx_buttons_netgear_wndr3400v1[] __initconst = {
BCM47XX_GPIO_KEY(4, KEY_RESTART),
BCM47XX_GPIO_KEY(6, KEY_WPS_BUTTON),
@@ -411,6 +440,11 @@ bcm47xx_buttons_netgear_wndr4500v1[] __i
@@ -405,6 +434,11 @@ bcm47xx_buttons_netgear_wndr4500v1[] __i
};
static const struct gpio_keys_button
@@ -93,7 +93,7 @@
bcm47xx_buttons_netgear_wnr3500lv1[] __initconst = {
BCM47XX_GPIO_KEY(4, KEY_RESTART),
BCM47XX_GPIO_KEY(6, KEY_WPS_BUTTON),
@@ -464,6 +498,9 @@ int __init bcm47xx_buttons_register(void
@@ -458,6 +492,9 @@ int __init bcm47xx_buttons_register(void
int err;
switch (board) {
@@ -103,7 +103,7 @@
case BCM47XX_BOARD_ASUS_RTN12:
err = bcm47xx_copy_bdata(bcm47xx_buttons_asus_rtn12);
break;
@@ -594,6 +631,12 @@ int __init bcm47xx_buttons_register(void
@@ -588,6 +625,12 @@ int __init bcm47xx_buttons_register(void
case BCM47XX_BOARD_LINKSYS_WRT310NV1:
err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrt310nv1);
break;
@@ -116,7 +116,7 @@
case BCM47XX_BOARD_LINKSYS_WRT54G3GV2:
err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrt54g3gv2);
break;
@@ -657,6 +700,12 @@ int __init bcm47xx_buttons_register(void
@@ -651,6 +694,12 @@ int __init bcm47xx_buttons_register(void
err = bcm47xx_copy_bdata(bcm47xx_buttons_motorola_wr850gv2v3);
break;
@@ -129,7 +129,7 @@
case BCM47XX_BOARD_NETGEAR_WNDR3400V1:
err = bcm47xx_copy_bdata(bcm47xx_buttons_netgear_wndr3400v1);
break;
@@ -669,6 +718,9 @@ int __init bcm47xx_buttons_register(void
@@ -663,6 +712,9 @@ int __init bcm47xx_buttons_register(void
case BCM47XX_BOARD_NETGEAR_WNDR4500V1:
err = bcm47xx_copy_bdata(bcm47xx_buttons_netgear_wndr4500v1);
break;

View File

@@ -36,7 +36,7 @@
compatible = "simple-bus";
ext_intc: interrupt-controller@10000018 {
compatible = "brcm,bcm6318-ext-intc";
compatible = "brcm,bcm6345-ext-intc";
reg = <0x10000018 0x4>;
interrupt-controller;

View File

@@ -40,12 +40,4 @@
linux,code = <KEY_WPS_BUTTON>;
};
};
switch {
compatible = "realtek,rtl8367";
gpio-sda = <&gpio0 18 0>;
gpio-sck = <&gpio0 20 0>;
realtek,extif0 = <1 5 1 1 1 1 1 1 2>;
};
};

View File

@@ -71,7 +71,7 @@ void board_init(void)
if ((prid & 0xff) == 0x04)
chipid_reg = 0xfff8c000;
else if ((prid & 0xff) == 0x70)
return; /* FIXME: 0002a070 can be 6362 and 3380 */
chipid_reg = 0xb4e00000;
else if ((prid & 0xff) >= 0x30)
chipid_reg = 0xb0000000;
else

View File

@@ -0,0 +1,25 @@
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
@@ -207,6 +207,9 @@ int __init board_register_devices(void)
bcm63xx_hsspi_register();
+ if (board.num_devs)
+ platform_add_devices(board.devs, board.num_devs);
+
bcm63xx_flash_register();
bcm63xx_led_data.num_leds = ARRAY_SIZE(board.leds);
--- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
@@ -53,6 +53,10 @@ struct board_info {
/* External PHY reset GPIO flags from gpio.h */
unsigned long ephy_reset_gpio_flags;
+
+ /* Additional platform devices */
+ struct platform_device **devs;
+ unsigned int num_devs;
};
#endif /* ! BOARD_BCM963XX_H_ */

View File

@@ -8,9 +8,9 @@
#include <asm/addrspace.h>
#include <bcm63xx_board.h>
#include <bcm63xx_cpu.h>
@@ -207,6 +208,9 @@ int __init board_register_devices(void)
bcm63xx_hsspi_register();
@@ -210,6 +211,9 @@ int __init board_register_devices(void)
if (board.num_devs)
platform_add_devices(board.devs, board.num_devs);
+ if (board.num_spis)
+ spi_register_board_info(board.spis, board.num_spis);
@@ -20,10 +20,10 @@
bcm63xx_led_data.num_leds = ARRAY_SIZE(board.leds);
--- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
@@ -53,6 +53,10 @@ struct board_info {
/* External PHY reset GPIO flags from gpio.h */
unsigned long ephy_reset_gpio_flags;
@@ -57,6 +57,10 @@ struct board_info {
/* Additional platform devices */
struct platform_device **devs;
unsigned int num_devs;
+
+ /* Additional platform devices */
+ struct spi_board_info *spis;

View File

@@ -23,7 +23,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+
+Required properties:
+
+- compatible: Should be "brcm,bcm6345-ext-intc" or "brcm,bcm6318-ext-intc".
+- compatible: Should be "brcm,bcm6345-ext-intc".
+- reg: Specifies the base physical addresses and size of the registers.
+- interrupt-controller: identifies the node as an interrupt controller.
+- #interrupt-cells: Specifies the number of cells needed to encode an interrupt
@@ -73,7 +73,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
obj-$(CONFIG_METAG) += irq-metag-ext.o
--- /dev/null
+++ b/drivers/irqchip/irq-bcm6345-ext.c
@@ -0,0 +1,301 @@
@@ -0,0 +1,288 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
+ * License. See the file "COPYING" in the main directory of this archive
@@ -119,7 +119,6 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+ int parent_irq[MAX_IRQS];
+ void __iomem *reg;
+ int shift;
+ unsigned int toggle_clear_on_ack:1;
+};
+
+static void bcm6345_ext_intc_irq_handle(struct irq_desc *desc)
@@ -149,10 +148,8 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+
+ raw_spin_lock(&priv->lock);
+ reg = __raw_readl(priv->reg);
+ __raw_writel(reg | (1 << (hwirq + EXTIRQ_CFG_CLEAR * priv->shift)),
+ priv->reg);
+ if (priv->toggle_clear_on_ack)
+ __raw_writel(reg, priv->reg);
+ reg |= 1 << (hwirq + EXTIRQ_CFG_CLEAR * priv->shift);
+ __raw_writel(reg, priv->reg);
+ raw_spin_unlock(&priv->lock);
+}
+
@@ -266,8 +263,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+
+static int __init __bcm6345_ext_intc_init(struct device_node *node,
+ int num_irqs, int *irqs,
+ void __iomem *reg, int shift,
+ bool toggle_clear_on_ack)
+ void __iomem *reg, int shift)
+{
+ struct intc_data *data;
+ unsigned int i;
@@ -288,7 +284,6 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+
+ data->reg = reg;
+ data->shift = shift;
+ data->toggle_clear_on_ack = toggle_clear_on_ack;
+
+ data->chip.name = "bcm6345-ext-intc";
+ data->chip.irq_ack = bcm6345_ext_intc_irq_ack;
@@ -319,7 +314,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+void __init bcm6345_ext_intc_init(int num_irqs, int *irqs, void __iomem *reg,
+ int shift)
+{
+ __bcm6345_ext_intc_init(NULL, num_irqs, irqs, reg, shift, false);
+ __bcm6345_ext_intc_init(NULL, num_irqs, irqs, reg, shift);
+}
+
+#ifdef CONFIG_OF
@@ -331,7 +326,6 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+ void __iomem *base;
+ int irqs[MAX_IRQS] = { 0 };
+ u32 shift;
+ bool toggle_clear_on_ack = false;
+
+ num_irqs = of_irq_count(node);
+
@@ -341,10 +335,6 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+ if (of_property_read_u32(node, "brcm,field-width", &shift))
+ shift = 4;
+
+ /* on BCM6318 setting CLEAR seems to continuously mask interrupts */
+ if (of_device_is_compatible(node, "brcm,bcm6318-ext-intc"))
+ toggle_clear_on_ack = true;
+
+ for (i = 0; i < num_irqs; i++) {
+ irqs[i] = irq_of_parse_and_map(node, i);
+ if (!irqs[i]) {
@@ -357,8 +347,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+ if (!base)
+ goto out_unmap;
+
+ ret = __bcm6345_ext_intc_init(node, num_irqs, irqs, base, shift,
+ toggle_clear_on_ack);
+ ret = __bcm6345_ext_intc_init(node, num_irqs, irqs, base, shift);
+ if (!ret)
+ return 0;
+out_unmap:
@@ -370,8 +359,6 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+ return ret;
+}
+
+IRQCHIP_DECLARE(bcm6318_ext_intc, "brcm,bcm6318-ext-intc",
+ bcm6345_ext_intc_of_init);
+IRQCHIP_DECLARE(bcm6345_ext_intc, "brcm,bcm6345-ext-intc",
+ bcm6345_ext_intc_of_init);
+#endif

View File

@@ -91,5 +91,5 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+ struct fallback_sprom_data fallback_sprom;
+
/* Additional platform devices */
struct spi_board_info *spis;
unsigned int num_spis;
struct platform_device **devs;
unsigned int num_devs;

View File

@@ -54,7 +54,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
if (strncmp(board_name, bcm963xx_boards[i]->name, 16))
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
@@ -247,3 +247,21 @@ int __init board_register_devices(void)
@@ -250,3 +250,21 @@ int __init board_register_devices(void)
return 0;
}

View File

@@ -26,7 +26,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
@@ -255,9 +255,10 @@ int __init board_register_devices(void)
@@ -258,9 +258,10 @@ int __init board_register_devices(void)
platform_device_register(&bcm63xx_gpio_leds);

View File

@@ -1,28 +0,0 @@
From: Jonas Gorski <jonas.gorski@gmail.com>
Subject: [PATCH] net: bcm63xx_enet: fully reset ephy
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
---
drivers/net/ethernet/broadcom/bcm63xx_enet.c | 4 ++--
1 file changed, 2 insertions(+), , 1 deletions(-)
--- a/drivers/net/ethernet/broadcom/bcm63xx_enet.c
+++ b/drivers/net/ethernet/broadcom/bcm63xx_enet.c
@@ -2857,7 +2857,7 @@ static int bcm_enet_shared_probe(struct
memset(bcm_enet_shared_base, 0, sizeof(bcm_enet_shared_base));
- ephy_reset = devm_gpiod_get_optional(&pdev->dev, "ephy-reset", GPIOD_ASIS);
+ ephy_reset = devm_gpiod_get_optional(&pdev->dev, "ephy-reset", GPIOD_OUT_HIGH);
if (IS_ERR(ephy_reset))
return PTR_ERR(ephy_reset);
@@ -2871,7 +2871,7 @@ static int bcm_enet_shared_probe(struct
memcpy(bcm_enet_shared_base, p, sizeof(bcm_enet_shared_base));
if (ephy_reset)
- gpiod_direction_output(ephy_reset, 0);
+ gpiod_set_value(ephy_reset, 0);
return 0;
}

View File

@@ -26,7 +26,7 @@ Subject: [PATCH 58/72] BCM63XX: allow providing fixup data in board data
#if CONFIG_OF
if (of_have_populated_dt()) {
@@ -262,6 +264,10 @@ int __init board_register_devices(void)
@@ -265,6 +267,10 @@ int __init board_register_devices(void)
board.ephy_reset_gpio_flags);
}

View File

@@ -11,7 +11,7 @@ Subject: [PATCH 69/80] MIPS: BCM63XX: pass caldata info to flash
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
@@ -252,7 +252,7 @@ int __init board_register_devices(void)
@@ -255,7 +255,7 @@ int __init board_register_devices(void)
if (board.num_spis)
spi_register_board_info(board.spis, board.num_spis);

View File

@@ -39,7 +39,7 @@
return;
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
@@ -266,7 +266,8 @@ int __init board_register_devices(void)
@@ -269,7 +269,8 @@ int __init board_register_devices(void)
/* register any fixups */
for (i = 0; i < board.has_caldata; i++)

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
@@ -267,7 +267,7 @@ int __init board_register_devices(void)
@@ -270,7 +270,7 @@ int __init board_register_devices(void)
/* register any fixups */
for (i = 0; i < board.has_caldata; i++)
pci_enable_ath9k_fixup(board.caldata[i].slot, board.caldata[i].caldata_offset,

View File

@@ -36,7 +36,7 @@ Subject: [PATCH 72/72] 446-BCM63XX-add-a-fixup-for-rt2x00-devices
#include "board_common.h"
@@ -265,9 +266,19 @@ int __init board_register_devices(void)
@@ -268,9 +269,19 @@ int __init board_register_devices(void)
}
/* register any fixups */

View File

@@ -1,10 +1,61 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1315,6 +1315,34 @@ static struct board_info __initdata boar
@@ -12,6 +12,8 @@
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/string.h>
+#include <linux/platform_device.h>
+#include <linux/rtl8367.h>
#include <asm/addrspace.h>
#include <bcm63xx_board.h>
#include <bcm63xx_cpu.h>
@@ -27,6 +29,9 @@
#define HCS_OFFSET_128K 0x20000
+#define NB6_GPIO_RTL8367_SDA 18
+#define NB6_GPIO_RTL8367_SCK 20
+
/*
* known 3368 boards
*/
@@ -1315,6 +1320,69 @@ static struct board_info __initdata boar
};
#endif /* CONFIG_BCM63XX_CPU_6358 */
+#ifdef CONFIG_BCM63XX_CPU_6362
+static struct rtl8367_extif_config nb6_rtl8367_extif0_cfg = {
+ .mode = RTL8367_EXTIF_MODE_RGMII,
+ .txdelay = 1,
+ .rxdelay = 5,
+ .ability = {
+ .force_mode = 1,
+ .txpause = 1,
+ .rxpause = 1,
+ .link = 1,
+ .duplex = 1,
+ .speed = RTL8367_PORT_SPEED_1000,
+ },
+};
+
+static struct rtl8367_platform_data nb6_rtl8367_data = {
+ .gpio_sda = NB6_GPIO_RTL8367_SDA,
+ .gpio_sck = NB6_GPIO_RTL8367_SCK,
+ .extif0_cfg = &nb6_rtl8367_extif0_cfg,
+};
+
+static struct platform_device nb6_rtl8367_device = {
+ .name = RTL8367_DRIVER_NAME,
+ .id = -1,
+ .dev = {
+ .platform_data = &nb6_rtl8367_data,
+ }
+};
+
+static struct platform_device * __initdata nb6_devices[] = {
+ &nb6_rtl8367_device,
+};
+
+static struct board_info __initdata board_nb6 = {
+ .name = "NB6",
+ .expected_cpu_id = 0x6362,
@@ -29,13 +80,16 @@
+ },
+ },
+ },
+
+ .devs = nb6_devices,
+ .num_devs = ARRAY_SIZE(nb6_devices),
+};
+#endif /* CONFIG_BCM63XX_CPU_6362 */
+
/*
* known 6368 boards
*/
@@ -1466,6 +1494,10 @@ static const struct board_info __initcon
@@ -1466,6 +1534,10 @@ static const struct board_info __initcon
&board_DVAG3810BN,
#endif
@@ -46,7 +100,7 @@
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
@@ -1534,6 +1566,9 @@ static struct of_device_id const bcm963x
@@ -1534,6 +1606,9 @@ static struct of_device_id const bcm963x
{ .compatible = "t-com,spw303v", .data = &board_spw303v, },
{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
#endif

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -760,6 +760,23 @@ static struct board_info __initdata boar
@@ -765,6 +765,23 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
@@ -24,7 +24,7 @@
static struct board_info __initdata board_rta1025w_16 = {
.name = "RTA1025W_16",
.expected_cpu_id = 0x6348,
@@ -1465,6 +1482,7 @@ static const struct board_info __initcon
@@ -1505,6 +1522,7 @@ static const struct board_info __initcon
&board_96348gw_10,
&board_96348gw_11,
&board_FAST2404,
@@ -32,7 +32,7 @@
&board_DV201AMR,
&board_96348gw_a,
&board_rta1025w_16,
@@ -1540,6 +1558,7 @@ static struct of_device_id const bcm963x
@@ -1580,6 +1598,7 @@ static struct of_device_id const bcm963x
{ .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, },
{ .compatible = "netgear,dg834g-v4", .data = &board_96348W3, },
{ .compatible = "sagem,f@st2404", .data = &board_FAST2404, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -169,6 +169,50 @@ static struct board_info __initdata boar
@@ -174,6 +174,50 @@ static struct board_info __initdata boar
},
};
@@ -51,7 +51,7 @@
static struct board_info __initdata board_dsl_274xb_f1 = {
.name = "AW4339U",
.expected_cpu_id = 0x6328,
@@ -1463,6 +1507,7 @@ static const struct board_info __initcon
@@ -1503,6 +1547,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
&board_963281TAN,
@@ -59,7 +59,7 @@
&board_dsl_274xb_f1,
#endif
#ifdef CONFIG_BCM63XX_CPU_6338
@@ -1528,6 +1573,7 @@ static struct of_device_id const bcm963x
@@ -1568,6 +1613,7 @@ static struct of_device_id const bcm963x
{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
#endif
#ifdef CONFIG_BCM63XX_CPU_6328

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -134,6 +134,79 @@ static struct board_info __initdata boar
@@ -139,6 +139,79 @@ static struct board_info __initdata boar
},
};
@@ -80,7 +80,7 @@
static struct board_info __initdata board_963281TAN = {
.name = "963281TAN",
.expected_cpu_id = 0x6328,
@@ -1506,6 +1579,7 @@ static const struct board_info __initcon
@@ -1546,6 +1619,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
@@ -88,7 +88,7 @@
&board_963281TAN,
&board_A4001N1,
&board_dsl_274xb_f1,
@@ -1576,6 +1650,7 @@ static struct of_device_id const bcm963x
@@ -1616,6 +1690,7 @@ static struct of_device_id const bcm963x
{ .compatible = "adb,a4001n1", .data = &board_A4001N1, },
{ .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
{ .compatible = "brcm,bcm96328avng", .data = &board_96328avng, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -134,6 +134,61 @@ static struct board_info __initdata boar
@@ -139,6 +139,61 @@ static struct board_info __initdata boar
},
};
@@ -62,7 +62,7 @@
static struct sprom_fixup __initdata ar5387un_fixups[] = {
{ .offset = 2, .value = 0x05bb },
{ .offset = 65, .value = 0x1204 },
@@ -1579,6 +1634,7 @@ static const struct board_info __initcon
@@ -1619,6 +1674,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
@@ -70,7 +70,7 @@
&board_AR5387un,
&board_963281TAN,
&board_A4001N1,
@@ -1650,6 +1706,7 @@ static struct of_device_id const bcm963x
@@ -1690,6 +1746,7 @@ static struct of_device_id const bcm963x
{ .compatible = "adb,a4001n1", .data = &board_A4001N1, },
{ .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
{ .compatible = "brcm,bcm96328avng", .data = &board_96328avng, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -520,6 +520,22 @@ static struct board_info __initdata boar
@@ -525,6 +525,22 @@ static struct board_info __initdata boar
.has_uart0 = 1,
};
@@ -23,7 +23,7 @@
#endif /* CONFIG_BCM63XX_CPU_6345 */
/*
@@ -1648,6 +1664,7 @@ static const struct board_info __initcon
@@ -1688,6 +1704,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_6345
&board_96345gw2,
@@ -31,7 +31,7 @@
#endif
#ifdef CONFIG_BCM63XX_CPU_6348
&board_96348r,
@@ -1718,6 +1735,7 @@ static struct of_device_id const bcm963x
@@ -1758,6 +1775,7 @@ static struct of_device_id const bcm963x
#endif
#ifdef CONFIG_BCM63XX_CPU_6345
{ .compatible = "brcm,bcm96345gw2", .data = &board_96345gw2, },

View File

@@ -5,10 +5,10 @@
#include <linux/kernel.h>
#include <linux/string.h>
+#include <linux/pci_ids.h>
#include <linux/platform_device.h>
#include <linux/rtl8367.h>
#include <asm/addrspace.h>
#include <bcm63xx_board.h>
#include <bcm63xx_cpu.h>
@@ -1474,6 +1475,95 @@ static struct board_info __initdata boar
@@ -1479,6 +1480,95 @@ static struct board_info __initdata boar
},
};
@@ -104,7 +104,7 @@
/* T-Home Speedport W 303V Typ B */
static struct board_info __initdata board_spw303v = {
.name = "96358-502V",
@@ -1700,6 +1790,9 @@ static const struct board_info __initcon
@@ -1740,6 +1830,9 @@ static const struct board_info __initcon
&board_nb4_fxc_r1,
&board_ct6373_1,
&board_HW553,
@@ -114,7 +114,7 @@
&board_spw303v,
&board_DVAG3810BN,
#endif
@@ -1772,6 +1865,9 @@ static struct of_device_id const bcm963x
@@ -1812,6 +1905,9 @@ static struct of_device_id const bcm963x
{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
{ .compatible = "d-link,dva-g3810bn/tl", .data = &board_DVAG3810BN, },
{ .compatible = "huawei,hg553", .data = &board_HW553, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -537,6 +537,27 @@ static struct board_info __initdata boar
@@ -542,6 +542,27 @@ static struct board_info __initdata boar
.force_duplex_full = 1,
},
};
@@ -28,7 +28,7 @@
#endif /* CONFIG_BCM63XX_CPU_6345 */
/*
@@ -1755,6 +1776,7 @@ static const struct board_info __initcon
@@ -1795,6 +1816,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6345
&board_96345gw2,
&board_rta770bw,
@@ -36,7 +36,7 @@
#endif
#ifdef CONFIG_BCM63XX_CPU_6348
&board_96348r,
@@ -1829,6 +1851,7 @@ static struct of_device_id const bcm963x
@@ -1869,6 +1891,7 @@ static struct of_device_id const bcm963x
#ifdef CONFIG_BCM63XX_CPU_6345
{ .compatible = "brcm,bcm96345gw2", .data = &board_96345gw2, },
{ .compatible = "dynalink,rta770bw", .data = &board_rta770bw, },

View File

@@ -12,7 +12,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
---
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -387,6 +387,44 @@ static struct board_info __initdata boar
@@ -392,6 +392,44 @@ static struct board_info __initdata boar
},
},
};
@@ -57,7 +57,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
#endif /* CONFIG_BCM63XX_CPU_6328 */
/*
@@ -1766,6 +1804,7 @@ static const struct board_info __initcon
@@ -1806,6 +1844,7 @@ static const struct board_info __initcon
&board_963281TAN,
&board_A4001N1,
&board_dsl_274xb_f1,
@@ -65,7 +65,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
#endif
#ifdef CONFIG_BCM63XX_CPU_6338
&board_96338gw,
@@ -1841,6 +1880,7 @@ static struct of_device_id const bcm963x
@@ -1881,6 +1920,7 @@ static struct of_device_id const bcm963x
{ .compatible = "comtrend,ar-5381u", .data = &board_AR5381u, },
{ .compatible = "comtrend,ar-5387un", .data = &board_AR5387un, },
{ .compatible = "d-link,dsl-274xb-f", .data = &board_dsl_274xb_f1, },

View File

@@ -6,9 +6,9 @@ Signed-off-by: Max Staudt <openwrt.max@enpas.org>
---
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1695,6 +1695,43 @@ static struct board_info __initdata boar
},
},
@@ -1735,6 +1735,43 @@ static struct board_info __initdata boar
.devs = nb6_devices,
.num_devs = ARRAY_SIZE(nb6_devices),
};
+
+static struct board_info __initdata board_fast2504n = {
@@ -50,7 +50,7 @@ Signed-off-by: Max Staudt <openwrt.max@enpas.org>
#endif /* CONFIG_BCM63XX_CPU_6362 */
/*
@@ -1860,6 +1897,7 @@ static const struct board_info __initcon
@@ -1900,6 +1937,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6362
&board_nb6,
@@ -58,7 +58,7 @@ Signed-off-by: Max Staudt <openwrt.max@enpas.org>
#endif
#ifdef CONFIG_BCM63XX_CPU_6368
@@ -1941,6 +1979,7 @@ static struct of_device_id const bcm963x
@@ -1981,6 +2019,7 @@ static struct of_device_id const bcm963x
{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
#endif
#ifdef CONFIG_BCM63XX_CPU_6362

View File

@@ -9,7 +9,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -47,14 +47,6 @@ static struct board_info __initdata boar
@@ -52,14 +52,6 @@ static struct board_info __initdata boar
.use_internal_phy = 1,
},
@@ -24,7 +24,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
.ephy_reset_gpio = 36,
.ephy_reset_gpio_flags = GPIO_ACTIVE_LOW,
};
@@ -78,35 +70,6 @@ static struct board_info __initdata boar
@@ -83,35 +75,6 @@ static struct board_info __initdata boar
.port_no = 0,
},
@@ -60,7 +60,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
.has_enetsw = 1,
.enetsw = {
@@ -445,35 +408,6 @@ static struct board_info __initdata boar
@@ -450,35 +413,6 @@ static struct board_info __initdata boar
},
.has_ohci0 = 1,
@@ -96,7 +96,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
};
static struct board_info __initdata board_96338w = {
@@ -488,35 +422,6 @@ static struct board_info __initdata boar
@@ -493,35 +427,6 @@ static struct board_info __initdata boar
.force_speed_100 = 1,
.force_duplex_full = 1,
},
@@ -132,7 +132,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
};
static struct board_info __initdata board_96338w2_e7t = {
@@ -615,36 +520,6 @@ static struct board_info __initdata boar
@@ -620,36 +525,6 @@ static struct board_info __initdata boar
.has_phy = 1,
.use_internal_phy = 1,
},
@@ -169,7 +169,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
};
static struct board_info __initdata board_96348gw_10 = {
@@ -679,35 +554,6 @@ static struct board_info __initdata boar
@@ -684,35 +559,6 @@ static struct board_info __initdata boar
.cs = 2,
.ext_irq = 2,
},
@@ -205,7 +205,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
};
static struct board_info __initdata board_96348gw_11 = {
@@ -736,35 +582,6 @@ static struct board_info __initdata boar
@@ -741,35 +587,6 @@ static struct board_info __initdata boar
.has_ohci0 = 1,
.has_pccard = 1,
.has_ehci0 = 1,
@@ -241,7 +241,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
};
@@ -890,35 +707,6 @@ static struct board_info __initdata boar
@@ -895,35 +712,6 @@ static struct board_info __initdata boar
.ext_irq = 2,
.cs = 2,
},
@@ -277,7 +277,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
};
static struct board_info __initdata board_gw6200 = {
@@ -1255,33 +1043,6 @@ static struct board_info __initdata boar
@@ -1260,33 +1048,6 @@ static struct board_info __initdata boar
.has_ohci0 = 1,
.has_pccard = 1,
.has_ehci0 = 1,
@@ -311,7 +311,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
};
static struct board_info __initdata board_96358vw2 = {
@@ -1311,29 +1072,6 @@ static struct board_info __initdata boar
@@ -1316,29 +1077,6 @@ static struct board_info __initdata boar
.has_pccard = 1,
.has_ehci0 = 1,
.num_usbh_ports = 2,

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -53,6 +53,56 @@ static struct board_info __initdata boar
@@ -58,6 +58,56 @@ static struct board_info __initdata boar
#endif /* CONFIG_BCM63XX_CPU_3368 */
/*
@@ -57,7 +57,7 @@
* known 6328 boards
*/
#ifdef CONFIG_BCM63XX_CPU_6328
@@ -1572,6 +1622,9 @@ static const struct board_info __initcon
@@ -1612,6 +1662,9 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_3368
&board_cvg834g,
#endif
@@ -67,7 +67,7 @@
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
&board_AR5381u,
@@ -1649,6 +1702,9 @@ static struct of_device_id const bcm963x
@@ -1689,6 +1742,9 @@ static struct of_device_id const bcm963x
#ifdef CONFIG_BCM63XX_CPU_3368
{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
#endif

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -100,6 +100,51 @@ static struct board_info __initdata boar
@@ -105,6 +105,51 @@ static struct board_info __initdata boar
},
},
};
@@ -52,7 +52,7 @@
#endif /* CONFIG_BCM63XX_CPU_6318 */
/*
@@ -1624,6 +1669,7 @@ static const struct board_info __initcon
@@ -1664,6 +1709,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_6318
&board_96318ref,
@@ -60,7 +60,7 @@
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
@@ -1704,6 +1750,7 @@ static struct of_device_id const bcm963x
@@ -1744,6 +1790,7 @@ static struct of_device_id const bcm963x
#endif
#ifdef CONFIG_BCM63XX_CPU_6318
{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1661,6 +1661,52 @@ static struct board_info __initdata boar
@@ -1701,6 +1701,52 @@ static struct board_info __initdata boar
#endif /* CONFIG_BCM63XX_CPU_6368 */
/*
@@ -53,7 +53,7 @@
* all boards
*/
static const struct board_info __initconst *bcm963xx_boards[] = {
@@ -1741,6 +1787,9 @@ static const struct board_info __initcon
@@ -1781,6 +1827,9 @@ static const struct board_info __initcon
&board_96368mvwg,
&board_96368mvngr,
#endif
@@ -63,7 +63,7 @@
};
static struct of_device_id const bcm963xx_boards_dt[] = {
@@ -1828,6 +1877,7 @@ static struct of_device_id const bcm963x
@@ -1868,6 +1917,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
#endif
#ifdef CONFIG_BCM63XX_CPU_63268

View File

@@ -8,7 +8,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
---
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -679,6 +679,22 @@ static struct board_info __initdata boar
@@ -684,6 +684,22 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
@@ -31,7 +31,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
/* BT Voyager 2110 */
static struct board_info __initdata board_V2110 = {
@@ -1758,6 +1774,7 @@ static const struct board_info __initcon
@@ -1798,6 +1814,7 @@ static const struct board_info __initcon
&board_96348A_122,
&board_CPVA502plus,
&board_96348W3,
@@ -39,7 +39,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
#endif
#ifdef CONFIG_BCM63XX_CPU_6358
@@ -1822,6 +1839,7 @@ static struct of_device_id const bcm963x
@@ -1862,6 +1879,7 @@ static struct of_device_id const bcm963x
{ .compatible = "dynalink,rta770w", .data = &board_rta770w, },
#endif
#ifdef CONFIG_BCM63XX_CPU_6348

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1720,6 +1720,53 @@ static struct board_info __initdata boar
@@ -1760,6 +1760,53 @@ static struct board_info __initdata boar
},
},
};
@@ -54,7 +54,7 @@
#endif /* CONFIG_BCM63XX_CPU_63268 */
/*
@@ -1806,6 +1853,7 @@ static const struct board_info __initcon
@@ -1846,6 +1893,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
&board_963269bhr,
@@ -62,7 +62,7 @@
#endif
};
@@ -1896,6 +1944,7 @@ static struct of_device_id const bcm963x
@@ -1936,6 +1984,7 @@ static struct of_device_id const bcm963x
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
{ .compatible = "brcm,bcm963269bhr", .data = &board_963269bhr, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1680,6 +1680,66 @@ static struct board_info __initdata boar
@@ -1720,6 +1720,66 @@ static struct board_info __initdata boar
* known 63268/63269 boards
*/
#ifdef CONFIG_BCM63XX_CPU_63268
@@ -67,7 +67,7 @@
static struct board_info __initdata board_963269bhr = {
.name = "963269BHR",
.expected_cpu_id = 0x63268,
@@ -1852,6 +1912,7 @@ static const struct board_info __initcon
@@ -1892,6 +1952,7 @@ static const struct board_info __initcon
&board_96368mvngr,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
@@ -75,7 +75,7 @@
&board_963269bhr,
&board_vw6339gu,
#endif
@@ -1943,6 +2004,7 @@ static struct of_device_id const bcm963x
@@ -1983,6 +2044,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
#endif
#ifdef CONFIG_BCM63XX_CPU_63268

View File

@@ -1,15 +1,16 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -13,6 +13,8 @@
#include <linux/kernel.h>
@@ -14,7 +14,9 @@
#include <linux/string.h>
#include <linux/pci_ids.h>
#include <linux/platform_device.h>
+#include <linux/platform_data/b53.h>
#include <linux/rtl8367.h>
+#include <linux/spi/spi.h>
#include <asm/addrspace.h>
#include <bcm63xx_board.h>
#include <bcm63xx_cpu.h>
@@ -1674,6 +1676,65 @@ static struct board_info __initdata boar
@@ -1714,6 +1716,65 @@ static struct board_info __initdata boar
.has_ohci0 = 1,
.has_ehci0 = 1,
};
@@ -75,7 +76,7 @@
#endif /* CONFIG_BCM63XX_CPU_6368 */
/*
@@ -1910,6 +1971,7 @@ static const struct board_info __initcon
@@ -1950,6 +2011,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
@@ -83,7 +84,7 @@
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
&board_963268bu_p300,
@@ -2002,6 +2064,7 @@ static struct of_device_id const bcm963x
@@ -2042,6 +2104,7 @@ static struct of_device_id const bcm963x
#ifdef CONFIG_BCM63XX_CPU_6368
{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1677,6 +1677,60 @@ static struct board_info __initdata boar
@@ -1717,6 +1717,60 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
@@ -61,7 +61,7 @@
static struct b53_platform_data WAP5813n_b53_pdata = {
.alias = "eth0",
};
@@ -1971,6 +2025,7 @@ static const struct board_info __initcon
@@ -2011,6 +2065,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
@@ -69,7 +69,7 @@
&board_WAP5813n,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
@@ -2064,6 +2119,7 @@ static struct of_device_id const bcm963x
@@ -2104,6 +2159,7 @@ static struct of_device_id const bcm963x
#ifdef CONFIG_BCM63XX_CPU_6368
{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1731,6 +1731,60 @@ static struct board_info __initdata boar
@@ -1771,6 +1771,60 @@ static struct board_info __initdata boar
},
};
@@ -61,7 +61,7 @@
static struct b53_platform_data WAP5813n_b53_pdata = {
.alias = "eth0",
};
@@ -2026,6 +2080,7 @@ static const struct board_info __initcon
@@ -2066,6 +2120,7 @@ static const struct board_info __initcon
&board_96368mvwg,
&board_96368mvngr,
&board_VR3025u,
@@ -69,7 +69,7 @@
&board_WAP5813n,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
@@ -2120,6 +2175,7 @@ static struct of_device_id const bcm963x
@@ -2160,6 +2215,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1686,6 +1686,49 @@ static struct sprom_fixup __initdata vr3
@@ -1726,6 +1726,49 @@ static struct sprom_fixup __initdata vr3
{ .offset = 115, .value = 0xfad9 },
};
@@ -50,7 +50,7 @@
static struct board_info __initdata board_VR3025u = {
.name = "96368M-1541N",
.expected_cpu_id = 0x6368,
@@ -2079,6 +2122,7 @@ static const struct board_info __initcon
@@ -2119,6 +2162,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
@@ -58,7 +58,7 @@
&board_VR3025u,
&board_VR3025un,
&board_WAP5813n,
@@ -2177,6 +2221,7 @@ static struct of_device_id const bcm963x
@@ -2217,6 +2261,7 @@ static struct of_device_id const bcm963x
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1357,6 +1357,37 @@ static struct board_info __initdata boar
@@ -1362,6 +1362,37 @@ static struct board_info __initdata boar
},
};
@@ -38,7 +38,7 @@
static struct board_info __initdata board_HW553 = {
.name = "HW553",
.expected_cpu_id = 0x6358,
@@ -2106,6 +2137,7 @@ static const struct board_info __initcon
@@ -2146,6 +2177,7 @@ static const struct board_info __initcon
&board_nb4_ser_r0,
&board_nb4_fxc_r1,
&board_ct6373_1,
@@ -46,7 +46,7 @@
&board_HW553,
&board_HW556_A,
&board_HW556_B,
@@ -2198,6 +2230,7 @@ static struct of_device_id const bcm963x
@@ -2238,6 +2270,7 @@ static struct of_device_id const bcm963x
{ .compatible = "d-link,dsl-274xb-c2", .data = &board_dsl_274xb_rev_c, },
{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
{ .compatible = "d-link,dva-g3810bn/tl", .data = &board_DVAG3810BN, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -358,6 +358,50 @@ static struct board_info __initdata boar
@@ -363,6 +363,50 @@ static struct board_info __initdata boar
},
};
@@ -51,7 +51,7 @@
static struct board_info __initdata board_A4001N1 = {
.name = "963281T_TEF",
.expected_cpu_id = 0x6328,
@@ -2088,6 +2132,7 @@ static const struct board_info __initcon
@@ -2128,6 +2172,7 @@ static const struct board_info __initcon
&board_AR5381u,
&board_AR5387un,
&board_963281TAN,
@@ -59,7 +59,7 @@
&board_A4001N1,
&board_dsl_274xb_f1,
&board_FAST2704V2,
@@ -2176,6 +2221,7 @@ static struct of_device_id const bcm963x
@@ -2216,6 +2261,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },
#endif
#ifdef CONFIG_BCM63XX_CPU_6328

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -147,6 +147,75 @@ static struct board_info __initdata boar
@@ -152,6 +152,75 @@ static struct board_info __initdata boar
},
},
};
@@ -76,7 +76,7 @@
#endif /* CONFIG_BCM63XX_CPU_6318 */
/*
@@ -2126,6 +2195,7 @@ static const struct board_info __initcon
@@ -2166,6 +2235,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6318
&board_96318ref,
&board_96318ref_p300,
@@ -84,7 +84,7 @@
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
@@ -2219,6 +2289,7 @@ static struct of_device_id const bcm963x
@@ -2259,6 +2329,7 @@ static struct of_device_id const bcm963x
#ifdef CONFIG_BCM63XX_CPU_6318
{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
{ .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1821,6 +1821,48 @@ static struct board_info __initdata boar
@@ -1861,6 +1861,48 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
@@ -49,7 +49,7 @@
static struct sprom_fixup __initdata vr3025u_fixups[] = {
{ .offset = 97, .value = 0xfeb3 },
{ .offset = 98, .value = 0x1618 },
@@ -2269,6 +2311,7 @@ static const struct board_info __initcon
@@ -2309,6 +2351,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
@@ -57,7 +57,7 @@
&board_P870HW51A_V2,
&board_VR3025u,
&board_VR3025un,
@@ -2371,6 +2414,7 @@ static struct of_device_id const bcm963x
@@ -2411,6 +2454,7 @@ static struct of_device_id const bcm963x
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1470,6 +1470,32 @@ static struct board_info __initdata boar
@@ -1475,6 +1475,32 @@ static struct board_info __initdata boar
},
};
@@ -33,7 +33,7 @@
static struct board_info __initdata board_HW520 = {
.name = "HW6358GW_B",
.expected_cpu_id = 0x6358,
@@ -2294,6 +2320,7 @@ static const struct board_info __initcon
@@ -2334,6 +2360,7 @@ static const struct board_info __initcon
&board_nb4_ser_r0,
&board_nb4_fxc_r1,
&board_ct6373_1,
@@ -41,7 +41,7 @@
&board_HW520,
&board_HW553,
&board_HW556_A,
@@ -2403,6 +2430,7 @@ static struct of_device_id const bcm963x
@@ -2443,6 +2470,7 @@ static struct of_device_id const bcm963x
{ .compatible = "sfr,nb4-fxc-r1", .data = &board_nb4_fxc_r1, },
{ .compatible = "t-com,spw303v", .data = &board_spw303v, },
{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },

View File

@@ -1,6 +1,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -1889,6 +1889,53 @@ static struct board_info __initdata boar
@@ -1929,6 +1929,53 @@ static struct board_info __initdata boar
.num_spis = ARRAY_SIZE(DGND3700v1_3800B_spi_devices),
};
@@ -54,7 +54,7 @@
static struct sprom_fixup __initdata vr3025u_fixups[] = {
{ .offset = 97, .value = 0xfeb3 },
{ .offset = 98, .value = 0x1618 },
@@ -2339,6 +2386,7 @@ static const struct board_info __initcon
@@ -2379,6 +2426,7 @@ static const struct board_info __initcon
&board_96368mvwg,
&board_96368mvngr,
&board_DGND3700v1_3800B,
@@ -62,7 +62,7 @@
&board_P870HW51A_V2,
&board_VR3025u,
&board_VR3025un,
@@ -2442,6 +2490,7 @@ static struct of_device_id const bcm963x
@@ -2482,6 +2530,7 @@ static struct of_device_id const bcm963x
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },

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