summaryrefslogtreecommitdiff
path: root/recipes-kernel
diff options
context:
space:
mode:
authorJeff Hatch <Jeff.Hatch@multitech.com>2017-10-06 12:36:59 -0500
committerJeff Hatch <Jeff.Hatch@multitech.com>2017-10-06 12:36:59 -0500
commit970dc59776b754c51a887f9b2ec4c7bb98589a43 (patch)
treebb4025d3be47132e415b17f327b79be5f19dc73e /recipes-kernel
parente95e175cb545536722ebe845cd8a4f70b189dd1d (diff)
parentf5ff7bc9e79ee975be063eb305423ecdd65ca2b3 (diff)
downloadmeta-multitech-970dc59776b754c51a887f9b2ec4c7bb98589a43.tar.gz
meta-multitech-970dc59776b754c51a887f9b2ec4c7bb98589a43.tar.bz2
meta-multitech-970dc59776b754c51a887f9b2ec4c7bb98589a43.zip
Merge branch 'master' of gitlab.multitech.net:mirrors/meta-multitech
Diffstat (limited to 'recipes-kernel')
-rw-r--r--recipes-kernel/linux/linux-3.12.27/mtcap/defconfig10
-rw-r--r--recipes-kernel/linux/linux-3.12.27/mtcdt/defconfig7
-rw-r--r--recipes-kernel/linux/linux-3.12.70/bluetooth_l2cap.patch357
-rw-r--r--recipes-kernel/linux/linux-3.12.70/mtcap/defconfig14
-rw-r--r--recipes-kernel/linux/linux-3.12.70/mtcap/linux-3.12-mtcap-device-tree.patch38
-rw-r--r--recipes-kernel/linux/linux-3.12.70/mtcdt/defconfig9
-rw-r--r--recipes-kernel/linux/linux-3.12.70/option.patch26
-rw-r--r--recipes-kernel/linux/linux_3.12.27.bb.old72
-rw-r--r--recipes-kernel/linux/linux_3.12.27.bb.orig59
-rw-r--r--recipes-kernel/linux/linux_3.12.70.bb3
-rw-r--r--recipes-kernel/rs9113/rs9113-from-src_1.4.3.bb52
-rw-r--r--recipes-kernel/rs9113/rs9113-from-src_1.5.5.bb (renamed from recipes-kernel/rs9113/rs9113-from-src_1.5.0.bb)11
-rw-r--r--recipes-kernel/rs9113/rs9113.inc11
-rw-r--r--recipes-kernel/rs9113/rs9113_1.4.3.bb26
-rw-r--r--recipes-kernel/rs9113/rs9113_1.5.5.bb (renamed from recipes-kernel/rs9113/rs9113_1.5.0.bb)7
15 files changed, 454 insertions, 248 deletions
diff --git a/recipes-kernel/linux/linux-3.12.27/mtcap/defconfig b/recipes-kernel/linux/linux-3.12.27/mtcap/defconfig
index 9854c64..5f90130 100644
--- a/recipes-kernel/linux/linux-3.12.27/mtcap/defconfig
+++ b/recipes-kernel/linux/linux-3.12.27/mtcap/defconfig
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.12.27 Kernel Configuration
+# Linux/arm 3.12.27r14 Kernel Configuration
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -83,7 +83,6 @@ CONFIG_TICK_CPU_ACCOUNTING=y
# RCU Subsystem
#
CONFIG_TREE_PREEMPT_RCU=y
-# CONFIG_TINY_RCU is not set
CONFIG_PREEMPT_RCU=y
CONFIG_RCU_STALL_COMMON=y
CONFIG_RCU_FANOUT=32
@@ -624,7 +623,7 @@ CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=y
-# CONFIG_NETFILTER_XT_TARGET_TEE is not set
+CONFIG_NETFILTER_XT_TARGET_TEE=m
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
@@ -648,7 +647,7 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
CONFIG_NETFILTER_XT_MATCH_ECN=y
# CONFIG_NETFILTER_XT_MATCH_ESP is not set
-# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
# CONFIG_NETFILTER_XT_MATCH_HELPER is not set
CONFIG_NETFILTER_XT_MATCH_HL=y
# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set
@@ -1131,7 +1130,7 @@ CONFIG_SCSI_LOWLEVEL=y
CONFIG_NETDEVICES=y
CONFIG_MII=m
CONFIG_NET_CORE=y
-# CONFIG_BONDING is not set
+CONFIG_BONDING=m
CONFIG_DUMMY=m
# CONFIG_EQUALIZER is not set
# CONFIG_NET_TEAM is not set
@@ -1275,6 +1274,7 @@ CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_NET_CX82310_ETH=m
# CONFIG_USB_NET_KALMIA is not set
CONFIG_USB_NET_QMI_WWAN=m
+# CONFIG_USB_HSO is not set
CONFIG_USB_NET_INT51X1=m
CONFIG_USB_IPHETH=m
CONFIG_USB_SIERRA_NET=m
diff --git a/recipes-kernel/linux/linux-3.12.27/mtcdt/defconfig b/recipes-kernel/linux/linux-3.12.27/mtcdt/defconfig
index f6cbf83..bca3a94 100644
--- a/recipes-kernel/linux/linux-3.12.27/mtcdt/defconfig
+++ b/recipes-kernel/linux/linux-3.12.27/mtcdt/defconfig
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.12.27 Kernel Configuration
+# Linux/arm 3.12.27r14 Kernel Configuration
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -83,7 +83,6 @@ CONFIG_TICK_CPU_ACCOUNTING=y
# RCU Subsystem
#
CONFIG_TREE_PREEMPT_RCU=y
-# CONFIG_TINY_RCU is not set
CONFIG_PREEMPT_RCU=y
CONFIG_RCU_STALL_COMMON=y
CONFIG_RCU_FANOUT=32
@@ -624,7 +623,7 @@ CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=y
-# CONFIG_NETFILTER_XT_TARGET_TEE is not set
+CONFIG_NETFILTER_XT_TARGET_TEE=m
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
@@ -648,7 +647,7 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
CONFIG_NETFILTER_XT_MATCH_ECN=y
# CONFIG_NETFILTER_XT_MATCH_ESP is not set
-CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
# CONFIG_NETFILTER_XT_MATCH_HELPER is not set
CONFIG_NETFILTER_XT_MATCH_HL=y
# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set
diff --git a/recipes-kernel/linux/linux-3.12.70/bluetooth_l2cap.patch b/recipes-kernel/linux/linux-3.12.70/bluetooth_l2cap.patch
new file mode 100644
index 0000000..c6bfdf7
--- /dev/null
+++ b/recipes-kernel/linux/linux-3.12.70/bluetooth_l2cap.patch
@@ -0,0 +1,357 @@
+From e860d2c904d1a9f38a24eb44c9f34b8f915a6ea3 Mon Sep 17 00:00:00 2001
+From: Ben Seri <ben@armis.com>
+Date: Sat, 9 Sep 2017 23:15:59 +0200
+Subject: Bluetooth: Properly check L2CAP config option output buffer length
+
+Validate the output buffer length for L2CAP config requests and responses
+to avoid overflowing the stack buffer used for building the option blocks.
+
+Cc: stable@vger.kernel.org
+Signed-off-by: Ben Seri <ben@armis.com>
+Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+---
+ net/bluetooth/l2cap_core.c | 80 +++++++++++++++++++++++++---------------------
+ 1 file changed, 43 insertions(+), 37 deletions(-)
+
+diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
+index 303c779..43ba91c 100644
+--- a/net/bluetooth/l2cap_core.c
++++ b/net/bluetooth/l2cap_core.c
+@@ -58,7 +58,7 @@ static struct sk_buff *l2cap_build_cmd(struct l2cap_conn *conn,
+ u8 code, u8 ident, u16 dlen, void *data);
+ static void l2cap_send_cmd(struct l2cap_conn *conn, u8 ident, u8 code, u16 len,
+ void *data);
+-static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data);
++static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data, size_t data_size);
+ static void l2cap_send_disconn_req(struct l2cap_chan *chan, int err);
+
+ static void l2cap_tx(struct l2cap_chan *chan, struct l2cap_ctrl *control,
+@@ -1473,7 +1473,7 @@ static void l2cap_conn_start(struct l2cap_conn *conn)
+
+ set_bit(CONF_REQ_SENT, &chan->conf_state);
+ l2cap_send_cmd(conn, l2cap_get_ident(conn), L2CAP_CONF_REQ,
+- l2cap_build_conf_req(chan, buf), buf);
++ l2cap_build_conf_req(chan, buf, sizeof(buf)), buf);
+ chan->num_conf_req++;
+ }
+
+@@ -2987,12 +2987,15 @@ static inline int l2cap_get_conf_opt(void **ptr, int *type, int *olen,
+ return len;
+ }
+
+-static void l2cap_add_conf_opt(void **ptr, u8 type, u8 len, unsigned long val)
++static void l2cap_add_conf_opt(void **ptr, u8 type, u8 len, unsigned long val, size_t size)
+ {
+ struct l2cap_conf_opt *opt = *ptr;
+
+ BT_DBG("type 0x%2.2x len %u val 0x%lx", type, len, val);
+
++ if (size < L2CAP_CONF_OPT_SIZE + len)
++ return;
++
+ opt->type = type;
+ opt->len = len;
+
+@@ -3017,7 +3020,7 @@ static void l2cap_add_conf_opt(void **ptr, u8 type, u8 len, unsigned long val)
+ *ptr += L2CAP_CONF_OPT_SIZE + len;
+ }
+
+-static void l2cap_add_opt_efs(void **ptr, struct l2cap_chan *chan)
++static void l2cap_add_opt_efs(void **ptr, struct l2cap_chan *chan, size_t size)
+ {
+ struct l2cap_conf_efs efs;
+
+@@ -3045,7 +3048,7 @@ static void l2cap_add_opt_efs(void **ptr, struct l2cap_chan *chan)
+ }
+
+ l2cap_add_conf_opt(ptr, L2CAP_CONF_EFS, sizeof(efs),
+- (unsigned long) &efs);
++ (unsigned long) &efs, size);
+ }
+
+ static void l2cap_ack_timeout(struct work_struct *work)
+@@ -3191,11 +3194,12 @@ static inline void l2cap_txwin_setup(struct l2cap_chan *chan)
+ chan->ack_win = chan->tx_win;
+ }
+
+-static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data)
++static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data, size_t data_size)
+ {
+ struct l2cap_conf_req *req = data;
+ struct l2cap_conf_rfc rfc = { .mode = chan->mode };
+ void *ptr = req->data;
++ void *endptr = data + data_size;
+ u16 size;
+
+ BT_DBG("chan %p", chan);
+@@ -3220,7 +3224,7 @@ static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data)
+
+ done:
+ if (chan->imtu != L2CAP_DEFAULT_MTU)
+- l2cap_add_conf_opt(&ptr, L2CAP_CONF_MTU, 2, chan->imtu);
++ l2cap_add_conf_opt(&ptr, L2CAP_CONF_MTU, 2, chan->imtu, endptr - ptr);
+
+ switch (chan->mode) {
+ case L2CAP_MODE_BASIC:
+@@ -3239,7 +3243,7 @@ done:
+ rfc.max_pdu_size = 0;
+
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_RFC, sizeof(rfc),
+- (unsigned long) &rfc);
++ (unsigned long) &rfc, endptr - ptr);
+ break;
+
+ case L2CAP_MODE_ERTM:
+@@ -3259,21 +3263,21 @@ done:
+ L2CAP_DEFAULT_TX_WINDOW);
+
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_RFC, sizeof(rfc),
+- (unsigned long) &rfc);
++ (unsigned long) &rfc, endptr - ptr);
+
+ if (test_bit(FLAG_EFS_ENABLE, &chan->flags))
+- l2cap_add_opt_efs(&ptr, chan);
++ l2cap_add_opt_efs(&ptr, chan, endptr - ptr);
+
+ if (test_bit(FLAG_EXT_CTRL, &chan->flags))
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_EWS, 2,
+- chan->tx_win);
++ chan->tx_win, endptr - ptr);
+
+ if (chan->conn->feat_mask & L2CAP_FEAT_FCS)
+ if (chan->fcs == L2CAP_FCS_NONE ||
+ test_bit(CONF_RECV_NO_FCS, &chan->conf_state)) {
+ chan->fcs = L2CAP_FCS_NONE;
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_FCS, 1,
+- chan->fcs);
++ chan->fcs, endptr - ptr);
+ }
+ break;
+
+@@ -3291,17 +3295,17 @@ done:
+ rfc.max_pdu_size = cpu_to_le16(size);
+
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_RFC, sizeof(rfc),
+- (unsigned long) &rfc);
++ (unsigned long) &rfc, endptr - ptr);
+
+ if (test_bit(FLAG_EFS_ENABLE, &chan->flags))
+- l2cap_add_opt_efs(&ptr, chan);
++ l2cap_add_opt_efs(&ptr, chan, endptr - ptr);
+
+ if (chan->conn->feat_mask & L2CAP_FEAT_FCS)
+ if (chan->fcs == L2CAP_FCS_NONE ||
+ test_bit(CONF_RECV_NO_FCS, &chan->conf_state)) {
+ chan->fcs = L2CAP_FCS_NONE;
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_FCS, 1,
+- chan->fcs);
++ chan->fcs, endptr - ptr);
+ }
+ break;
+ }
+@@ -3312,10 +3316,11 @@ done:
+ return ptr - data;
+ }
+
+-static int l2cap_parse_conf_req(struct l2cap_chan *chan, void *data)
++static int l2cap_parse_conf_req(struct l2cap_chan *chan, void *data, size_t data_size)
+ {
+ struct l2cap_conf_rsp *rsp = data;
+ void *ptr = rsp->data;
++ void *endptr = data + data_size;
+ void *req = chan->conf_req;
+ int len = chan->conf_len;
+ int type, hint, olen;
+@@ -3417,7 +3422,7 @@ done:
+ return -ECONNREFUSED;
+
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_RFC, sizeof(rfc),
+- (unsigned long) &rfc);
++ (unsigned long) &rfc, endptr - ptr);
+ }
+
+ if (result == L2CAP_CONF_SUCCESS) {
+@@ -3430,7 +3435,7 @@ done:
+ chan->omtu = mtu;
+ set_bit(CONF_MTU_DONE, &chan->conf_state);
+ }
+- l2cap_add_conf_opt(&ptr, L2CAP_CONF_MTU, 2, chan->omtu);
++ l2cap_add_conf_opt(&ptr, L2CAP_CONF_MTU, 2, chan->omtu, endptr - ptr);
+
+ if (remote_efs) {
+ if (chan->local_stype != L2CAP_SERV_NOTRAFIC &&
+@@ -3444,7 +3449,7 @@ done:
+
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_EFS,
+ sizeof(efs),
+- (unsigned long) &efs);
++ (unsigned long) &efs, endptr - ptr);
+ } else {
+ /* Send PENDING Conf Rsp */
+ result = L2CAP_CONF_PENDING;
+@@ -3477,7 +3482,7 @@ done:
+ set_bit(CONF_MODE_DONE, &chan->conf_state);
+
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_RFC,
+- sizeof(rfc), (unsigned long) &rfc);
++ sizeof(rfc), (unsigned long) &rfc, endptr - ptr);
+
+ if (test_bit(FLAG_EFS_ENABLE, &chan->flags)) {
+ chan->remote_id = efs.id;
+@@ -3491,7 +3496,7 @@ done:
+ le32_to_cpu(efs.sdu_itime);
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_EFS,
+ sizeof(efs),
+- (unsigned long) &efs);
++ (unsigned long) &efs, endptr - ptr);
+ }
+ break;
+
+@@ -3505,7 +3510,7 @@ done:
+ set_bit(CONF_MODE_DONE, &chan->conf_state);
+
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_RFC, sizeof(rfc),
+- (unsigned long) &rfc);
++ (unsigned long) &rfc, endptr - ptr);
+
+ break;
+
+@@ -3527,10 +3532,11 @@ done:
+ }
+
+ static int l2cap_parse_conf_rsp(struct l2cap_chan *chan, void *rsp, int len,
+- void *data, u16 *result)
++ void *data, size_t size, u16 *result)
+ {
+ struct l2cap_conf_req *req = data;
+ void *ptr = req->data;
++ void *endptr = data + size;
+ int type, olen;
+ unsigned long val;
+ struct l2cap_conf_rfc rfc = { .mode = L2CAP_MODE_BASIC };
+@@ -3548,13 +3554,13 @@ static int l2cap_parse_conf_rsp(struct l2cap_chan *chan, void *rsp, int len,
+ chan->imtu = L2CAP_DEFAULT_MIN_MTU;
+ } else
+ chan->imtu = val;
+- l2cap_add_conf_opt(&ptr, L2CAP_CONF_MTU, 2, chan->imtu);
++ l2cap_add_conf_opt(&ptr, L2CAP_CONF_MTU, 2, chan->imtu, endptr - ptr);
+ break;
+
+ case L2CAP_CONF_FLUSH_TO:
+ chan->flush_to = val;
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_FLUSH_TO,
+- 2, chan->flush_to);
++ 2, chan->flush_to, endptr - ptr);
+ break;
+
+ case L2CAP_CONF_RFC:
+@@ -3568,13 +3574,13 @@ static int l2cap_parse_conf_rsp(struct l2cap_chan *chan, void *rsp, int len,
+ chan->fcs = 0;
+
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_RFC,
+- sizeof(rfc), (unsigned long) &rfc);
++ sizeof(rfc), (unsigned long) &rfc, endptr - ptr);
+ break;
+
+ case L2CAP_CONF_EWS:
+ chan->ack_win = min_t(u16, val, chan->ack_win);
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_EWS, 2,
+- chan->tx_win);
++ chan->tx_win, endptr - ptr);
+ break;
+
+ case L2CAP_CONF_EFS:
+@@ -3587,7 +3593,7 @@ static int l2cap_parse_conf_rsp(struct l2cap_chan *chan, void *rsp, int len,
+ return -ECONNREFUSED;
+
+ l2cap_add_conf_opt(&ptr, L2CAP_CONF_EFS, sizeof(efs),
+- (unsigned long) &efs);
++ (unsigned long) &efs, endptr - ptr);
+ break;
+
+ case L2CAP_CONF_FCS:
+@@ -3692,7 +3698,7 @@ void __l2cap_connect_rsp_defer(struct l2cap_chan *chan)
+ return;
+
+ l2cap_send_cmd(conn, l2cap_get_ident(conn), L2CAP_CONF_REQ,
+- l2cap_build_conf_req(chan, buf), buf);
++ l2cap_build_conf_req(chan, buf, sizeof(buf)), buf);
+ chan->num_conf_req++;
+ }
+
+@@ -3900,7 +3906,7 @@ sendresp:
+ u8 buf[128];
+ set_bit(CONF_REQ_SENT, &chan->conf_state);
+ l2cap_send_cmd(conn, l2cap_get_ident(conn), L2CAP_CONF_REQ,
+- l2cap_build_conf_req(chan, buf), buf);
++ l2cap_build_conf_req(chan, buf, sizeof(buf)), buf);
+ chan->num_conf_req++;
+ }
+
+@@ -3978,7 +3984,7 @@ static int l2cap_connect_create_rsp(struct l2cap_conn *conn,
+ break;
+
+ l2cap_send_cmd(conn, l2cap_get_ident(conn), L2CAP_CONF_REQ,
+- l2cap_build_conf_req(chan, req), req);
++ l2cap_build_conf_req(chan, req, sizeof(req)), req);
+ chan->num_conf_req++;
+ break;
+
+@@ -4090,7 +4096,7 @@ static inline int l2cap_config_req(struct l2cap_conn *conn,
+ }
+
+ /* Complete config. */
+- len = l2cap_parse_conf_req(chan, rsp);
++ len = l2cap_parse_conf_req(chan, rsp, sizeof(rsp));
+ if (len < 0) {
+ l2cap_send_disconn_req(chan, ECONNRESET);
+ goto unlock;
+@@ -4124,7 +4130,7 @@ static inline int l2cap_config_req(struct l2cap_conn *conn,
+ if (!test_and_set_bit(CONF_REQ_SENT, &chan->conf_state)) {
+ u8 buf[64];
+ l2cap_send_cmd(conn, l2cap_get_ident(conn), L2CAP_CONF_REQ,
+- l2cap_build_conf_req(chan, buf), buf);
++ l2cap_build_conf_req(chan, buf, sizeof(buf)), buf);
+ chan->num_conf_req++;
+ }
+
+@@ -4184,7 +4190,7 @@ static inline int l2cap_config_rsp(struct l2cap_conn *conn,
+ char buf[64];
+
+ len = l2cap_parse_conf_rsp(chan, rsp->data, len,
+- buf, &result);
++ buf, sizeof(buf), &result);
+ if (len < 0) {
+ l2cap_send_disconn_req(chan, ECONNRESET);
+ goto done;
+@@ -4214,7 +4220,7 @@ static inline int l2cap_config_rsp(struct l2cap_conn *conn,
+ /* throw out any old stored conf requests */
+ result = L2CAP_CONF_SUCCESS;
+ len = l2cap_parse_conf_rsp(chan, rsp->data, len,
+- req, &result);
++ req, sizeof(req), &result);
+ if (len < 0) {
+ l2cap_send_disconn_req(chan, ECONNRESET);
+ goto done;
+@@ -4791,7 +4797,7 @@ static void l2cap_do_create(struct l2cap_chan *chan, int result,
+ set_bit(CONF_REQ_SENT, &chan->conf_state);
+ l2cap_send_cmd(chan->conn, l2cap_get_ident(chan->conn),
+ L2CAP_CONF_REQ,
+- l2cap_build_conf_req(chan, buf), buf);
++ l2cap_build_conf_req(chan, buf, sizeof(buf)), buf);
+ chan->num_conf_req++;
+ }
+ }
+@@ -7465,7 +7471,7 @@ static void l2cap_security_cfm(struct hci_conn *hcon, u8 status, u8 encrypt)
+ set_bit(CONF_REQ_SENT, &chan->conf_state);
+ l2cap_send_cmd(conn, l2cap_get_ident(conn),
+ L2CAP_CONF_REQ,
+- l2cap_build_conf_req(chan, buf),
++ l2cap_build_conf_req(chan, buf, sizeof(buf)),
+ buf);
+ chan->num_conf_req++;
+ }
+--
+cgit v1.1
+
diff --git a/recipes-kernel/linux/linux-3.12.70/mtcap/defconfig b/recipes-kernel/linux/linux-3.12.70/mtcap/defconfig
index da689cf..3fa7f34 100644
--- a/recipes-kernel/linux/linux-3.12.70/mtcap/defconfig
+++ b/recipes-kernel/linux/linux-3.12.70/mtcap/defconfig
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.12.27 Kernel Configuration
+# Linux/arm 3.12.70 Kernel Configuration
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -624,7 +624,7 @@ CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=y
-# CONFIG_NETFILTER_XT_TARGET_TEE is not set
+CONFIG_NETFILTER_XT_TARGET_TEE=m
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
@@ -648,7 +648,7 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
CONFIG_NETFILTER_XT_MATCH_ECN=y
# CONFIG_NETFILTER_XT_MATCH_ESP is not set
-# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
# CONFIG_NETFILTER_XT_MATCH_HELPER is not set
CONFIG_NETFILTER_XT_MATCH_HL=y
# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set
@@ -876,7 +876,10 @@ CONFIG_MAC80211_LEDS=y
# CONFIG_MAC80211_MESSAGE_TRACING is not set
# CONFIG_MAC80211_DEBUG_MENU is not set
# CONFIG_WIMAX is not set
-# CONFIG_RFKILL is not set
+CONFIG_RFKILL=m
+CONFIG_RFKILL_LEDS=y
+# CONFIG_RFKILL_INPUT is not set
+CONFIG_RFKILL_GPIO=m
# CONFIG_NET_9P is not set
# CONFIG_CAIF is not set
# CONFIG_CEPH_LIB is not set
@@ -1128,7 +1131,7 @@ CONFIG_SCSI_LOWLEVEL=y
CONFIG_NETDEVICES=y
CONFIG_MII=m
CONFIG_NET_CORE=y
-# CONFIG_BONDING is not set
+CONFIG_BONDING=m
CONFIG_DUMMY=m
# CONFIG_EQUALIZER is not set
# CONFIG_NET_TEAM is not set
@@ -1272,6 +1275,7 @@ CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_NET_CX82310_ETH=m
# CONFIG_USB_NET_KALMIA is not set
CONFIG_USB_NET_QMI_WWAN=m
+# CONFIG_USB_HSO is not set
CONFIG_USB_NET_INT51X1=m
CONFIG_USB_IPHETH=m
CONFIG_USB_SIERRA_NET=m
diff --git a/recipes-kernel/linux/linux-3.12.70/mtcap/linux-3.12-mtcap-device-tree.patch b/recipes-kernel/linux/linux-3.12.70/mtcap/linux-3.12-mtcap-device-tree.patch
index 474f606..f6addbc 100644
--- a/recipes-kernel/linux/linux-3.12.70/mtcap/linux-3.12-mtcap-device-tree.patch
+++ b/recipes-kernel/linux/linux-3.12.70/mtcap/linux-3.12-mtcap-device-tree.patch
@@ -1,8 +1,7 @@
-Index: linux-3.12.27/arch/arm/boot/dts/mtcap.dts
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.12.27/arch/arm/boot/dts/mtcap.dts 2015-01-13 13:58:20.766078428 -0600
-@@ -0,0 +1,210 @@
+diff -Naru linux-3.12.70.orig/arch/arm/boot/dts/mtcap.dts linux-3.12.70/arch/arm/boot/dts/mtcap.dts
+--- linux-3.12.70.orig/arch/arm/boot/dts/mtcap.dts 1969-12-31 18:00:00.000000000 -0600
++++ linux-3.12.70/arch/arm/boot/dts/mtcap.dts 2017-09-07 18:36:07.841825140 -0500
+@@ -0,0 +1,235 @@
+/*
+ * DTS file for Multi-Tech Systems MTCAP Hardware
+ */
@@ -44,7 +43,27 @@ Index: linux-3.12.27/arch/arm/boot/dts/mtcap.dts
+ status = "okay";
+ };
+
++ mmc0: mmc@f0008000 {
++ pinctrl-names = "default";
++ pinctrl-0 = <
++ /* &pinctrl_board_mmc0 */
++ &pinctrl_mmc0_slot0_clk_cmd_dat0
++ &pinctrl_mmc0_slot0_dat1_3>;
++ status = "okay";
++ slot@0 {
++ reg = <0>;
++ bus-width = <4>;
++ };
++ };
++
+ pinctrl@fffff400 {
++ mmc0 {
++ pinctrl_board_mmc0: mmc0-board {
++ atmel,pins =
++ <AT91_PIOA 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PA4 gpio pin pull up and deglitch - WIFI enable */
++ };
++ };
++
+ nand {
+ pinctrl_nand: nand-0 {
+ atmel,pins =
@@ -93,14 +112,19 @@ Index: linux-3.12.27/arch/arm/boot/dts/mtcap.dts
+ };
+ };
+
-+ spi0: spi@f0000000 {
++ spi@f0000000 {
+ status = "okay";
-+ cs-gpios = <&pioA 7 0>, <0>, <0>, <0>;
++ cs-gpios = <&pioA 7 0>, <&pioA 1 0>, <0>, <0>;
+ lora-spi@0 {
+ compatible = "spidev";
+ spi-max-frequency = <2000000>;
+ reg = <0>;
+ };
++ lora-spi@1 {
++ compatible = "spidev";
++ spi-max-frequency = <2000000>;
++ reg = <1>;
++ };
+ };
+
+ dbgu: serial@fffff200 {
diff --git a/recipes-kernel/linux/linux-3.12.70/mtcdt/defconfig b/recipes-kernel/linux/linux-3.12.70/mtcdt/defconfig
index 88608ca..28070c7 100644
--- a/recipes-kernel/linux/linux-3.12.70/mtcdt/defconfig
+++ b/recipes-kernel/linux/linux-3.12.70/mtcdt/defconfig
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.12.27 Kernel Configuration
+# Linux/arm 3.12.70 Kernel Configuration
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -83,7 +83,6 @@ CONFIG_TICK_CPU_ACCOUNTING=y
# RCU Subsystem
#
CONFIG_TREE_PREEMPT_RCU=y
-# CONFIG_TINY_RCU is not set
CONFIG_PREEMPT_RCU=y
CONFIG_RCU_STALL_COMMON=y
CONFIG_RCU_FANOUT=32
@@ -624,7 +623,7 @@ CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=y
-# CONFIG_NETFILTER_XT_TARGET_TEE is not set
+CONFIG_NETFILTER_XT_TARGET_TEE=m
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
@@ -648,7 +647,7 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
CONFIG_NETFILTER_XT_MATCH_ECN=y
# CONFIG_NETFILTER_XT_MATCH_ESP is not set
-CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
# CONFIG_NETFILTER_XT_MATCH_HELPER is not set
CONFIG_NETFILTER_XT_MATCH_HL=y
# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set
@@ -964,7 +963,7 @@ CONFIG_MTD_CFI_I2=y
#
# CONFIG_MTD_DATAFLASH is not set
CONFIG_MTD_M25P80=m
-
+CONFIG_M25PXX_USE_FAST_READ=y
# CONFIG_MTD_SST25L is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_PHRAM is not set
diff --git a/recipes-kernel/linux/linux-3.12.70/option.patch b/recipes-kernel/linux/linux-3.12.70/option.patch
index 6f07a87..247aa70 100644
--- a/recipes-kernel/linux/linux-3.12.70/option.patch
+++ b/recipes-kernel/linux/linux-3.12.70/option.patch
@@ -1,8 +1,7 @@
-Index: linux-3.12.70/drivers/usb/serial/option.c
-===================================================================
---- linux-3.12.70.orig/drivers/usb/serial/option.c 2014-08-26 07:12:26.000000000 -0500
-+++ linux-3.12.70/drivers/usb/serial/option.c 2017-02-02 16:39:53.522427060 -0600
-@@ -268,6 +268,7 @@
+diff -Naru linux-3.12.orig/drivers/usb/serial/option.c linux-3.12/drivers/usb/serial/option.c
+--- linux-3.12.orig/drivers/usb/serial/option.c 2017-09-19 10:43:24.127970622 -0500
++++ linux-3.12/drivers/usb/serial/option.c 2017-09-19 10:49:07.791960448 -0500
+@@ -268,12 +268,14 @@
#define TELIT_PRODUCT_CC864_DUAL 0x1005
#define TELIT_PRODUCT_CC864_SINGLE 0x1006
#define TELIT_PRODUCT_DE910_DUAL 0x1010
@@ -10,7 +9,14 @@ Index: linux-3.12.70/drivers/usb/serial/option.c
#define TELIT_PRODUCT_UE910_V2 0x1012
#define TELIT_PRODUCT_LE922_USBCFG1 0x1040
#define TELIT_PRODUCT_LE922_USBCFG2 0x1041
-@@ -1211,6 +1212,7 @@
+ #define TELIT_PRODUCT_LE922_USBCFG0 0x1042
+ #define TELIT_PRODUCT_LE922_USBCFG3 0x1043
+ #define TELIT_PRODUCT_LE922_USBCFG5 0x1045
++#define TELIT_PRODUCT_ME910 0x1101
+ #define TELIT_PRODUCT_LE920 0x1200
+ #define TELIT_PRODUCT_LE910 0x1201
+ #define TELIT_PRODUCT_LE910_USBCFG4 0x1206
+@@ -1211,6 +1213,7 @@
{ USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_CC864_DUAL) },
{ USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_CC864_SINGLE) },
{ USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_DE910_DUAL) },
@@ -18,3 +24,11 @@ Index: linux-3.12.70/drivers/usb/serial/option.c
{ USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_UE910_V2) },
{ USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE922_USBCFG0),
.driver_info = (kernel_ulong_t)&telit_le922_blacklist_usbcfg0 },
+@@ -1226,6 +1229,7 @@
+ .driver_info = (kernel_ulong_t)&telit_le910_blacklist },
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE910_USBCFG4),
+ .driver_info = (kernel_ulong_t)&telit_le922_blacklist_usbcfg3 },
++ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_ME910) },
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE920),
+ .driver_info = (kernel_ulong_t)&telit_le920_blacklist },
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE920A4_1207) },
diff --git a/recipes-kernel/linux/linux_3.12.27.bb.old b/recipes-kernel/linux/linux_3.12.27.bb.old
deleted file mode 100644
index 5f1851d..0000000
--- a/recipes-kernel/linux/linux_3.12.27.bb.old
+++ /dev/null
@@ -1,72 +0,0 @@
-inherit kernel
-# mts class to build dtb and append to kernel image
-inherit linux-append-dtb
-
-PR = "r13"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
-
-DEPENDS += "xz-native bc-native"
-
-SRC_URI = "https://www.kernel.org/pub/linux/kernel/v3.x/linux-${PV}.tar.gz \
-"
-
-S = "${WORKDIR}/${PN}-${PV}"
-
-COMMON_PATCHES = " \
- file://linux-3.12-gpio-expose-pullups.patch \
- file://linux-3.12-gpio-expose-deglitch.patch \
- file://linux-3.12-atmel-spi.patch \
- file://linux-3.12-atmel-mci-force-detect.patch \
- file://linux-3.12-atmel-pmecc-debug-bitflips.patch \
- file://linux-3.12-at91sam9_wdt-10second-timeout.patch \
- file://linux-3.12.27-option-telit.patch \
- file://linux-3.12-cdc-acm-ignore-exar-devices.patch \
- file://linux-3.12-release-rfcomm-port-fix.patch \
- file://linux-3.12-spi-atmel-dma-min.patch \
- file://linux-3.12.27-USB-option-reduce-interrupt-urb-logging-verbosity.patch \
- file://linux-3.12-pps-gpio.patch \
- file://linux-3.12-cadence-macb.patch \
- file://linux-3.12-time-leap-second-v3.patch \
- "
-
-SRC_URI_append_mtcdt = "\
- ${COMMON_PATCHES} \
- file://defconfig \
- file://linux-3.12-eeprom-setup-mtcdt.patch \
- file://linux-3.12-mtcdt-device-tree.patch \
- file://linux-3.12-add-num_accessory_ports-config-option.patch \
- file://linux-3.12-usb-serial-simple-telit.patch \
- "
-
-SRC_URI_append_mtcap = "\
- ${COMMON_PATCHES} \
- file://defconfig \
- file://linux-3.12-eeprom-setup-mtcdt.patch \
- file://linux-3.12-mtcap-device-tree.patch \
- file://linux-3.12-add-num_accessory_ports-config-option.patch \
- "
-
-SRC_URI[md5sum] = "2f05332bfca89ae1348ae454af2f5ffb"
-SRC_URI[sha256sum] = "2014c55257dda311779359d6b42931079a687c154777cc528c44e25f262194cd"
-
-COMPATIBLE_MACHINE = "(mtcdt|mtcap)"
-DTB_APPEND_mtcdt = "mtcdt"
-DTB_APPEND_mtcap = "mtcap"
-do_patch_append() {
- # Makefile location
- makefl="${S}" + "/Makefile"
- # String to find: EXTRAVERSION =
- original="'^(.*EXTRAVERSION[[:space:]]*=)[[:space:]]*'"
- # Update for string Copy variable = and set to PR version
- upd="'\\1 " + "${PR}" + "'"
- # Use sed to write the data to the file.
- print "Setting EXTRAVERSION to ${PR}\n"
- os.system("sed -ri -e s/" + original + "/" + upd + "/ " + makefl)
-}
-
-# disable this on purpose for dev purposes
-do_rm_work() {
- echo "skipping"
-}
diff --git a/recipes-kernel/linux/linux_3.12.27.bb.orig b/recipes-kernel/linux/linux_3.12.27.bb.orig
deleted file mode 100644
index 1d82e66..0000000
--- a/recipes-kernel/linux/linux_3.12.27.bb.orig
+++ /dev/null
@@ -1,59 +0,0 @@
-inherit kernel
-# mts class to build dtb and append to kernel image
-inherit linux-append-dtb
-
-PR = "r12"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
-
-DEPENDS += "xz-native bc-native"
-
-SRC_URI = "https://www.kernel.org/pub/linux/kernel/v3.x/linux-${PV}.tar.gz \
-"
-
-S = "${WORKDIR}/${PN}-${PV}"
-
-COMMON_PATCHES = " \
- file://linux-3.12-gpio-expose-pullups.patch \
- file://linux-3.12-gpio-expose-deglitch.patch \
- file://linux-3.12-atmel-spi.patch \
- file://linux-3.12-atmel-mci-force-detect.patch \
- file://linux-3.12-atmel-pmecc-debug-bitflips.patch \
- file://linux-3.12-at91sam9_wdt-10second-timeout.patch \
- file://linux-3.12.27-option-telit.patch \
- file://linux-3.12-cdc-acm-ignore-exar-devices.patch \
- file://linux-3.12-release-rfcomm-port-fix.patch \
- file://linux-3.12-spi-atmel-dma-min.patch \
- file://linux-3.12.27-USB-option-reduce-interrupt-urb-logging-verbosity.patch \
- file://linux-3.12-pps-gpio.patch \
- file://linux-3.12-cadence-macb.patch \
- "
-
-SRC_URI_append_mtcdt = "\
- ${COMMON_PATCHES} \
- file://defconfig \
- file://linux-3.12-eeprom-setup-mtcdt.patch \
- file://linux-3.12-mtcdt-device-tree.patch \
- file://linux-3.12-add-num_accessory_ports-config-option.patch \
- "
-
-SRC_URI_append_mtcap = "\
- ${COMMON_PATCHES} \
- file://defconfig \
- file://linux-3.12-eeprom-setup-mtcdt.patch \
- file://linux-3.12-mtcap-device-tree.patch \
- file://linux-3.12-add-num_accessory_ports-config-option.patch \
- "
-
-SRC_URI[md5sum] = "2f05332bfca89ae1348ae454af2f5ffb"
-SRC_URI[sha256sum] = "2014c55257dda311779359d6b42931079a687c154777cc528c44e25f262194cd"
-
-COMPATIBLE_MACHINE = "(mtcdt|mtcap)"
-DTB_APPEND_mtcdt = "mtcdt"
-DTB_APPEND_mtcap = "mtcap"
-
-# disable this on purpose for dev purposes
-do_rm_work() {
- echo "skipping"
-}
diff --git a/recipes-kernel/linux/linux_3.12.70.bb b/recipes-kernel/linux/linux_3.12.70.bb
index 9cdfef8..36d8e35 100644
--- a/recipes-kernel/linux/linux_3.12.70.bb
+++ b/recipes-kernel/linux/linux_3.12.70.bb
@@ -2,7 +2,7 @@ inherit kernel
# mts class to build dtb and append to kernel image
inherit linux-append-dtb
-PR = "r13"
+PR = "r16"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
@@ -27,6 +27,7 @@ COMMON_PATCHES = " \
file://linux-3.12-spi-atmel-dma-min.patch \
file://linux-3.12-pps-gpio.patch \
file://linux-3.12-cadence-macb.patch \
+ file://bluetooth_l2cap.patch \
"
SRC_URI_append_mtcdt = "\
diff --git a/recipes-kernel/rs9113/rs9113-from-src_1.4.3.bb b/recipes-kernel/rs9113/rs9113-from-src_1.4.3.bb
deleted file mode 100644
index f2f2319..0000000
--- a/recipes-kernel/rs9113/rs9113-from-src_1.4.3.bb
+++ /dev/null
@@ -1,52 +0,0 @@
-DESCRIPTION = "USB Driver for Redpine RS9113"
-LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Proprietary;md5=0557f9d92cf58f2ccdd50f62f8ac0b28"
-PACKAGE_ARCH = "mtcdt"
-PROVIDES = "rs9113-from-src"
-
-inherit module
-
-SRCREV = "${AUTOREV}"
-
-SRC_URI = " \
- git://git@${MTS_INTERNAL_GIT}/mlinux/meta-rs9113.git;protocol=ssh;branch=${PV};destsuffix=meta/ \
- git://git@${MTS_INTERNAL_GIT}/mlinux/Redpine.git;protocol=ssh;branch=${PV} \
-"
-SRCXX_URI = " \
- git://git@${MTS_INTERNAL_GIT}/mlinux/Redpine.git;protocol=ssh;branch=${PV};name=machine \
- git://git@${MTS_INTERNAL_GIT}/mlinux/meta-rs9113.git;protocol=ssh;branch=${PV};name=meta \
-"
-
-S = "${WORKDIR}/git/source/host"
-M = "${WORKDIR}/meta"
-
-EXTRA_OEMAKE = " KERNELDIR=${STAGING_KERNEL_DIR} \
- CROSS_COMPILE=${TARGET_PREFIX} \
- ARCH=arm \
- WLAN_COMPILE_FLAGS='' \
- V=1 \
- "
-
-FILES_${PN} = "/opt/rs9113 ${sbindir}"
-FILES_${PN}-dbg = "/opt/rs9113/.debug/"
-
-PARALLEL_MAKE = ""
-
-do_configure() {
- cp ${M}/mtcdt/defconfig .config
-}
-
-do_compile () {
- unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
- oe_runmake
-}
-
-do_install() {
- install -m 0755 -d ${D}/opt/rs9113
- cp -r ${S}/release/* ${D}/opt/rs9113/
- rm -rf ${D}/opt/rs9113/flash ${D}/opt/rs9113/certs ${D}/opt/rs9113/*zigb*
- install -m 0755 -d ${D}${sbindir}
- install -m 0755 ${M}/rs9113_load_modules.sh ${D}${sbindir}/
- install -m 0755 ${M}/rs9113_remove_modules.sh ${D}${sbindir}/
-}
-
diff --git a/recipes-kernel/rs9113/rs9113-from-src_1.5.0.bb b/recipes-kernel/rs9113/rs9113-from-src_1.5.5.bb
index 7d93952..57b17a3 100644
--- a/recipes-kernel/rs9113/rs9113-from-src_1.5.0.bb
+++ b/recipes-kernel/rs9113/rs9113-from-src_1.5.5.bb
@@ -4,6 +4,7 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Proprietary;md5=0557f9d92cf58f2
PACKAGE_ARCH = "mtcdt"
PROVIDES = "rs9113-from-src"
PR = "${MLINUX_KERNEL_VERSION}${MLINUX_KERNEL_EXTRA_VERSION}"
+INHIBIT_PACKAGE_STRIP = "1"
inherit module
@@ -33,6 +34,10 @@ FILES_${PN}-dbg = "/opt/rs9113/.debug/"
PARALLEL_MAKE = ""
+# Avoid QA Issue: No GNU_HASH in the elf binary
+INSANE_SKIP_${PN} = "ldflags"
+INSANE_SKIP_${PN}-dev = "ldflags"
+
do_configure() {
cp ${M}/mtcdt/defconfig .config
}
@@ -51,12 +56,18 @@ do_patch () {
cd ${WORKDIR}/git
echo "patches" ${M}/patches/*
for f in ${M}/patches/* ; do
+ # If no patches, * is not expanded.
+ # Do not try to use "*" as a patch file.
+ if ! [[ -r ${f} ]] ; then
+ continue
+ fi
echo "Patching with ${f}"
patch -p1 < ${f}
done
}
do_install() {
+ echo D is ${D}
install -m 0755 -d ${D}/opt/rs9113
cp -r ${S}/release/* ${D}/opt/rs9113/
rm -rf ${D}/opt/rs9113/flash ${D}/opt/rs9113/certs ${D}/opt/rs9113/*zigb*
diff --git a/recipes-kernel/rs9113/rs9113.inc b/recipes-kernel/rs9113/rs9113.inc
index 1a238e1..1bf5768 100644
--- a/recipes-kernel/rs9113/rs9113.inc
+++ b/recipes-kernel/rs9113/rs9113.inc
@@ -1,10 +1,15 @@
inherit update-rc.d
DR = "${DL_DIR}/rs9113-ipk"
+FILESEXTRAPATHS_append := "${DR}:"
INITSCRIPT_NAME = "rs9113"
INITSCRIPT_PARAMS = "start 50 S ."
+# Avoid QA Issue: No GNU_HASH in the elf binary
+INSANE_SKIP_${PN} = "ldflags"
+INSANE_SKIP_${PN}-dev = "ldflags"
+
python do_fetch_prepend () {
# d.setVar('BB_STRICT_CHECKSUM',False)
DR = d.getVar("DR",True)
@@ -62,9 +67,9 @@ do_install () {
bbnote "pwd,ls: $(pwd) $(ls) WORKDIR is ${WORKDIR}"
(
cd ${WORKDIR}
- find etc -print0 | cpio -0 -pdum ${D}
- find usr -print0 | cpio -0 -pdum ${D}
- find opt -print0 | cpio -0 -pdum ${D}
+ find etc -print0 | cpio --owner root:root -0 -pdum ${D}
+ find usr -print0 | cpio --owner root:root -0 -pdum ${D}
+ find opt -print0 | cpio --owner root:root -0 -pdum ${D}
)
install -d ${D}/opt/rs9113/init.d
install -d ${D}${sysconfdir}/init.d/
diff --git a/recipes-kernel/rs9113/rs9113_1.4.3.bb b/recipes-kernel/rs9113/rs9113_1.4.3.bb
deleted file mode 100644
index fe47e2d..0000000
--- a/recipes-kernel/rs9113/rs9113_1.4.3.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-require rs9113.inc
-DESCRIPTION = "USB Driver for Redpine RS9113"
-LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Proprietary;md5=0557f9d92cf58f2ccdd50f62f8ac0b28"
-PACKAGE_ARCH = "mtcdt"
-PROVIDES = "rs9113"
-FILES_${PN} = "/opt/rs9113 ${sbindir} ${sysconfdir}"
-
-# This bitbake recipe requires SSH_AUTH_SOCK to be set if ssh key pass
-# phrases are used. SSH_AUTH_SOCK is set by a keyserver,
-# such as gnome-keyring-daemon or ssh-keyagent.
-
-# NOTE: rs9113 binary is built with Jenkin's job using rs9113-from-src_${PV}.bb
-# To update this, manually copy ipk from Jenkin's job to
-# git://git@${MTS_INTERNAL_GIT}/mlinux/ipk.git;protocol=ssh;branch=${PV}
-#
-PR = "r0"
-SRC_URI = " \
- file://rs9113/rs9113.init \
- file://rs9113/rs9113.default \
- file://rs9113/wpa_supplicant \
- file://rs9113-ipk/rs9113-from-src_${PV}-${PR}.0_mtcdt.ipk \
-"
-SRCREV = "${AUTOREV}"
-SRC_URI[md5sum] = "ff2238e0fb52b1627e76ca366fc83919"
-SRC_URI[sha256sum] = "e303c5bc2e89e0c36303642d2677eadb2f4a9e2e0bb9a8622883abd97fe6e742"
diff --git a/recipes-kernel/rs9113/rs9113_1.5.0.bb b/recipes-kernel/rs9113/rs9113_1.5.5.bb
index fbfb706..b68ab40 100644
--- a/recipes-kernel/rs9113/rs9113_1.5.0.bb
+++ b/recipes-kernel/rs9113/rs9113_1.5.5.bb
@@ -5,6 +5,7 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Proprietary;md5=0557f9d92cf58f2
PACKAGE_ARCH = "mtcdt"
PROVIDES = "rs9113"
FILES_${PN} = "/opt/rs9113 ${sbindir} ${sysconfdir}"
+RDEPENDS_${PN} += "perl bash"
# This bitbake recipe requires SSH_AUTH_SOCK to be set if ssh key pass
# phrases are used. SSH_AUTH_SOCK is set by a keyserver,
@@ -19,9 +20,9 @@ SRC_URI = " \
file://rs9113/rs9113.init \
file://rs9113/rs9113.default \
file://rs9113/wpa_supplicant \
- file://rs9113-ipk/rs9113-from-src_${PV}-${MLINUX_KERNEL_VERSION}${MLINUX_KERNEL_EXTRA_VERSION}.0_mtcdt.ipk \
+ file://rs9113-ipk/rs9113-from-src_${PV}-${MLINUX_KERNEL_VERSION}${MLINUX_KERNEL_EXTRA_VERSION}.0_mtcdt.ipk;name=binaries \
"
SRCREV = "${AUTOREV}"
# For some reason the md5sum and sha256sum are ignored
-SRC_URI[md5sum] = "def9fd10a77cae9df9bcb2e20626795e"
-SRC_URI[sha256sum] = "367e942618143d4967273ce44120098a98e2ad1f543a9a404af7082b40c5066e"
+SRC_URI[binaries.md5sum] = "7c0f7badf5a2a3b3dacc790ff0a9ce55"
+SRC_URI[binaries.sha256sum] = "2780d417295999724ada4a08e6a196aaca55324af24b404e0f9b2f2ea7d4d830"