[From nobody Thu Jun 25 05:54:42 2020
Received: from mail-ve1eur01on0600.outbound.protection.outlook.com
 ([2a01:111:f400:fe1f::600]
 helo=EUR01-VE1-obe.outbound.protection.outlook.com)
 by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux))
 id 1fW5BX-0004Je-Fp
 for openwrt-devel@lists.openwrt.org; Thu, 21 Jun 2018 19:24:03 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=darbyshire-bryant.me.uk; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WTaTrhgjiFhkeZambf2EZt9P8AvF2pyjZP88byypXqY=;
 b=f6v4BhyKFtV5sg41oD4kHhre20bEURMSZR3zhrnv+bvlE/yJuEmuVPvFljUOdO46UaXIWSUdWF5kt+pPebJYvSgYc3EFtjaaEY+toFQ58G9uj/KOIxhwaXHd4sjSfVSNDV3CCZ8bmqLHBeHtoNE/Wtz/GLc3IXmSUBjbLqhl27A=
Authentication-Results: spf=none (sender IP is )
 smtp.mailfrom=kevin@darbyshire-bryant.me.uk; 
Received: from Kevins-MBP.lan (90.155.95.206) by
 AM0PR07MB4241.eurprd07.prod.outlook.com (2603:10a6:208:b8::25) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.863.6; Thu, 21 Jun 2018 19:23:43 +0000
From: Kevin Darbyshire-Bryant &lt;ldir@darbyshire-bryant.me.uk&gt;
To: openwrt-devel@lists.openwrt.org
Cc: Kevin Darbyshire-Bryant &lt;ldir@darbyshire-bryant.me.uk&gt;
Subject: [PATCH v2] kernel: bump 4.14 to 4.14.51
Date: Thu, 21 Jun 2018 20:23:38 +0100
Message-Id: &lt;20180621192338.84179-1-ldir@darbyshire-bryant.me.uk&gt;
X-Mailer: git-send-email 2.15.2 (Apple Git-101.1)
MIME-Version: 1.0
Content-Type: text/plain
X-Originating-IP: [90.155.95.206]
X-ClientProxiedBy: CWLP265CA0226.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:401:4f::22) To AM0PR07MB4241.eurprd07.prod.outlook.com
 (2603:10a6:208:b8::25)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b66d7499-a91e-4142-0c8d-08d5d7ac80e0
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(7021125)(5600026)(711020)(4534165)(7022125)(4603075)(4627221)(201702281549075)(7048125)(7024125)(7027125)(7028125)(7023125)(2017052603328)(7153060)(7193020);
 SRVR:AM0PR07MB4241; 
X-Microsoft-Exchange-Diagnostics: 1; AM0PR07MB4241;
 3:C7cLrxL/NJg40ZVNzyHrur7ZmGzYft0sfAS6ENIDsKcuSrbaXeJ7pjdpfbTeC+lI+viPWpMZ4iTbrzQmyG9K/4z2ZAeszC8esvdFNxtigV6OpHajxLStJx2hstZZ9oHWaijQ53lCvY1hMZ9uoDlA+iBSeFoRo7sHu66LqUQkmf+d52CnnD/G1njSsHQJOdHRNqmUo92qAEkZSFEuJZ1bCQAqQLsGNif2azZ1xd1yI2od3sTWsHjo6o1dij3cw82t;
 25:BE+LA+E4pweDgBn/Ivv6K+fRF4jUTmE0TiO2pEP3gT5oa7kF8GZ1X4vSWr726rBbcOyvqUUBB19Vk+kuUyyW8/uMvnAyWCst9ORPAeuBJ+eVSM+YXOjdSVLYp1VoHurYjzAFT5EeE19uWyc5u3VKVjr/zFVOVJ4NhXvBqbpvUdgAFYPmQeFTuTsUgeiL63XYEp+ORbTfiOb93WpWSyN4si+hhlx8cyQ5cfDDBq5s7AUDJJ5JBtuwS8LTrOXrC71AkiQt1b8qRyDrF0y1ak5qgRrn1U8/aBYX9JAluE5X6l9Y4XET/qelnpP653D5lkoeHc8WbqjFR7TslJgB/UHzyg==;
 31:QY7QPuH1duWtULeFLSQDC6Ovb0HrQ/ZrIkDA7PajMTOcudeCIkKwdpEqTmRmSuXrsSrhKFEk/cBLPYqgUVVa0FTejZdU9wizztybF0b9IECJwb7ITe6lw4j0VpuMVPtfAF3+dW8qDpASLFvS7V+nRVGp5rOWPKa88dELmkxM631DTeAnHfhFqKVVzJ3YYbwIgSCM5m9vLHlr26+xQC3oEhfWNx13+0+iVNn2sCkXVnA=
X-MS-TrafficTypeDiagnostic: AM0PR07MB4241:
X-Microsoft-Antispam-PRVS: &lt;AM0PR07MB4241DC68D629FD51B9FA1D8CA5760@AM0PR07MB4241.eurprd07.prod.outlook.com&gt;
X-Exchange-Antispam-Report-Test: UriScan:(244540007438412)(209352067349851)(85827821059158); 
X-MS-Exchange-SenderADCheck: 1
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231254)(944501410)(52105095)(10201501046)(3002001)(149027)(150027)(6041310)(20161123562045)(20161123564045)(20161123560045)(20161123558120)(2016111802025)(6043046)(6072148)(201708071742011)(7699016);
 SRVR:AM0PR07MB4241; BCL:0; PCL:0; RULEID:; SRVR:AM0PR07MB4241; 
X-Microsoft-Exchange-Diagnostics: 1; AM0PR07MB4241;
 4:dPKR1I6lGMfIHbmh1ZMduY5z2SrtBzVVYx+81OddpwZGpz4CnYALbSC89ogtC42n+5Coj2RsrYh8Z8t9Us28ynmKQB4SfpMDoN4gynobGM6fnYQjei1yN3lrXitBsPM7Yr8+tHfu6ybZnhQ92u+mBaob3TExiO5VWWrW1KLZ+zSrBcPKn3Xp+Hc6bVEe5v06Klozkeh6xYk5/JFHV1xG16ZjEbb4VfMMUuxdzTTeANSRN2i34ipoW3dfYPcU5d8KeEn18y0miWhX0r73yZ4c/0u2tFFNPv38RvAqinZCf8T5iDVyhj9K7f24fuI2H/0oDB1++L/eNUg/6FcHIuwbL/p8rnT4PMaqd82W68kNXTzwbs+iUVzumBmmX937L4m8
X-Forefront-PRVS: 07106EF9B9
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(366004)(39380400002)(376002)(39830400003)(396003)(346002)(199004)(189003)(305945005)(52116002)(186003)(48376002)(47776003)(476003)(69596002)(486006)(51416003)(105586002)(956004)(478600001)(106356001)(2616005)(6116002)(2361001)(3846002)(6506007)(1076002)(26005)(74482002)(36756003)(59450400001)(16526019)(50466002)(386003)(66066001)(966005)(7736002)(50226002)(8936002)(8676002)(25786009)(53936002)(81156014)(68736007)(5660300001)(16586007)(2351001)(97736004)(21086003)(2906002)(6486002)(6306002)(6666003)(6512007)(316002)(4326008)(81166006)(107886003)(6916009)(575784001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR07MB4241; H:Kevins-MBP.lan; FPR:; SPF:None;
 LANG:en; PTR:InfoNoRecords; A:1; MX:1; 
Received-SPF: None (protection.outlook.com: darbyshire-bryant.me.uk does not
 designate permitted sender hosts)
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM0PR07MB4241;
 23:hKR1kWjHqIJU0VZNJP6md12TL0s3xgwKa0ceVr6X1?=
 =?us-ascii?Q?5BUn/9gevI6wihOIH1j0+qaQCF035dpn4Q0/DYGgb1d+CrZSBDKXx+psV/fF?=
 =?us-ascii?Q?GHFin96vJai2XFeKGfXbMbxQVmaW8rZUxSmVhnDyVA7+uPkUsbZoOT18knjt?=
 =?us-ascii?Q?4dGHzkYPfK+VuXMOzYBTlGUmpV5U+Wzhfn16yaLdRigmARV8NI2LxqPQtbcT?=
 =?us-ascii?Q?ZylJH7Qsbb18LVDdbawdz3yumB4/S/ZrmXACxEydyIiChJAL7ik0KP3EAAG3?=
 =?us-ascii?Q?G8MjYtgkFoBRQnqCuvmRsU0DCnUTWdLyTaiCAOPbKOzMS5AfFoSeJL6uX6n+?=
 =?us-ascii?Q?m3WZihUGPbUZLNX69XYlU7Qfp8v5eeCMmSX+6c6Vvj4JunHHGis31at2oVRg?=
 =?us-ascii?Q?XTPBypMNXPj+oXDNM9JYzB2b08XN5Rc0DiSwGPRFiKASDI36sINZ+CpUep0F?=
 =?us-ascii?Q?OuoI8N7Ezq17YLvKQApMDSJ9Dgc81TZ7MRbxk/jlIJIYfmiL5hxvqhK77YnA?=
 =?us-ascii?Q?hOwNpaQZeryKOtSyfKpdixl30lo+/nhlHVRpUkkuACj9OM+OsCbWb53Eq2RJ?=
 =?us-ascii?Q?YgWm7iniZSgZzD3HcPt9Va86OQeUw6WL/liSdRs9dhwNZ3aH2AMiM2L9IoCE?=
 =?us-ascii?Q?koANx2Y2GU8uRd9WVDxWy4a5QCrWX1E0TWRs/mjFND5E8J8e8U7SrSyJNPqx?=
 =?us-ascii?Q?qr52J1PL4M0VYap+l82zR8TdPmare884rgp6l2/P4vwLuwPEWCXKPBq5MUDj?=
 =?us-ascii?Q?Rdm1D/HdErexHPCF0r11EgR7/n4vwDAjyEydEgnT8xAOY0ilC9Ye4rMysTta?=
 =?us-ascii?Q?wjQpAXOudE4pOUVcMV0xBGltUU7sBl2GZzEsg2+okfd12Ztj7aEYVPrhhoBR?=
 =?us-ascii?Q?QfNSUGjjW/GiJzJkAXJPS2rjS0agaB4JOTsC1w+icU78mNw+Z7MwDugxrX1m?=
 =?us-ascii?Q?B2ezA2NFLMIpWEky7HBBhSoqkgjO8yGZn+CaWsVC2z+ds+TdSK4P56iW/awV?=
 =?us-ascii?Q?KyRO4lU0qvKXHgEIgemrQNhJgbGBuW1KkwJGtuk15ni6wA3xX5zlV+Z9O9x+?=
 =?us-ascii?Q?3l74NBsT6xNrZyHGdACMKjOo4aNOcDd7F7uluZblnVN79eWWY4M0/v/clQWt?=
 =?us-ascii?Q?WgGxK83V64uVRCg16db/5wgXyuu8UgZNkNzUd1dixYgE5zkiIOYdItS8o2iY?=
 =?us-ascii?Q?ekuCI8Vk9RsLjjKptMoFB9RwWi/DIV/lWhWzv29nkoA/iYx2U+0cgn+T0uNM?=
 =?us-ascii?Q?263r1mGTIxUu1WKN0M667P4ZpC456apPwxCItORcD82KfVOboAG0i0KYYS3E?=
 =?us-ascii?Q?m73wYMoZej3fI842oNxVdnYncsCN3xfbASRdzRzPmzt?=
X-Microsoft-Antispam-Message-Info: C681tTGFJgeIROxWf0Fgmx+Wf2+BwB/QpWv1vX8pKyov4QNP4HK5SfKZ3ED7DOaSRxteUtefUg/1brY1FB536sNvk0V9eqtq4hg/YtTzgM2uFtvTqPzgwBI/lrY3lsvfQKaVVyoRF9VHEghM8iBodgrIcRTgXZt2N6elLBX1WceHk+O6CQ/2UubqllPL3Dz4eQyDMxFObWhFr+yoaR69wXLFoQC8uWeqdnCYfqEjV10mVRz8X86raFnljz/ewvk9rEkLQ7WP4PKNIJNEleAKyXPUt6Iw51j6sUt7FbB+R3UoA23+XMZW2UxwvS1/chsd
X-Microsoft-Exchange-Diagnostics: 1; AM0PR07MB4241;
 6:0X8JdmB1FBFOz8Ct1YBjLMmTC9BJGgsjEvJOtwRAFCTiY/dndmJhz4+x2KDDt1AA/9rEzfRZEih572VJ/bfNBgYvHLzD2vLSgIUsRWn+RvFsTNUYwpejyjKR1J2pxpAwjbOGWqgIJlx86o7gG2KfoD098R0bFDKPgRecTbZhI1SM18aXg4BvhS/VA5Lxl3UQb6vr20Xqb6XJYPOjve63wtzGh3F0WCAoDZzUPhNsQcaY0hAzlvjPP9aNTy/CNBZelhVXIQik4tWpZQ3SNA6vKl+BV9UyV64+ebxWMUXDm9bDafc1TXtBA0maBDAu+u0ahzM+X/RDi1zEfF8gKc5NrHOppyyWo0DA6NiY6lmgi2lKB8xTjt7W+9AuBfm1eS6ZZ3wHFaVIqgBo2qKJszBjf4TLj8H5MEOQgYzvsdYGoRFDo94aTFD0W56HuZynELluLEI3PXVnmNinbL16z8wRbQ==;
 5:oJWXGNiL1aDewo/atMgXAm5+ddMqNGTrZMLWQDWq8M84v5b/ZWCo3+pWfsX5FT3fSBsmCB3fYqmOnTWdYpcJvmdzU8r1I44gTHSc7yVv3tigWnfWkZSrqzBrkhriT2bSS8CHc6n0S1G/kcSMp77HQwDdCyhtg4+014rj+nOlY3c=;
 24:/K4Z3cSQ2xP5dMOrKEF9nSGdOHZJrEr03HIIW16AOE+xTS3gxlz2xKOorq4tacV1wMEQl9yCVDJrr1WcjbwHxj6aqHs5ZABkgMLPPuvO150=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM0PR07MB4241;
 7:chTmfDGOKC6eBJK8+uy33uDdnK97feAHM87IxYxnBFKpbdGCacZbBsfxnZqfBZcHFJuEh3QEuzEBourq65j0HlyOl/z/CP+gZlQl4/dooUaowMiFqdm+bi66/zi/ilZeUm9PrKRBHr2UwX2WDF82kCsF4y8MXuSB4XuTcbsdPtSWQQbLlk4NTXC96RpCUWWuy+BpAFEDYLxnIFOeNuoEqXELO2oBdVvsF+HNpci+tdJ2zTNprsbuRsjaEOWHGYL/
X-OriginatorOrg: darbyshire-bryant.me.uk
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2018 19:23:43.7588 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b66d7499-a91e-4142-0c8d-08d5d7ac80e0
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 9151708b-c553-406f-8e56-694f435154a4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR07MB4241
X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 
X-CRM114-CacheID: sfid-20180621_122400_531906_F0041CF4 
X-CRM114-Status: UNSURE (   9.03  )
X-CRM114-Notice: Please train this message.
X-Spam-Score: -0.1 (/)
X-Spam-Report: SpamAssassin version 3.4.1 on bombadil.infradead.org summary:
 Content analysis details:   (-0.1 points)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at http://www.dnswl.org/, no
 trust [2a01:111:f400:fe1f:0:0:0:600 listed in] [list.dnswl.org]
 -0.0 SPF_PASS               SPF: sender matches SPF record
 -0.0 SPF_HELO_PASS          SPF: HELO matches SPF record
 -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
 0.1 DKIM_SIGNED            Message has a DKIM or DK signature,
 not necessarily valid
 -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's
 domain

Refresh patches.

Remove patch that can be reverse applied:
mvebu/patches-4.14/530-ATA-ahci_mvebu-enable-stop_engine-override.patch
mvebu/patches-4.14/531-ATA-ahci_mvebu-pmp-stop-errata-226.patch

Update patch that no longer applied:
ipq806x/patches-4.14/0035-clk-mux-Split-out-register-accessors-for-reuse.patch

Compiled-tested-for: lantiq, ramips
Run-tested-on: lantiq BT hh5a, ramips MIR3g

Signed-off-by: Kevin Darbyshire-Bryant &lt;ldir@darbyshire-bryant.me.uk&gt;
---
v2 - actually it turns out 531-ATA-achi... isn't required &amp; causes build
failure - oops!  Thanks to Gerard Looije for pointing out the error in
my ways :-)

 include/kernel-version.mk                          |   4 +-
 ...stmmac-Disable-frame-filtering-completely.patch |   2 +-
 ....16-netfilter-flow-table-support-for-IPv6.patch |   2 +-
 ...r-improve-flow-table-Kconfig-dependencies.patch |   2 +-
 ...lowtable-infrastructure-depends-on-NETFIL.patch |   2 +-
 .../650-netfilter-add-xt_OFFLOAD-target.patch      |   4 +-
 .../902-essedma-alloc-skb-ip-align.patch           |   7 +-
 .../patches-4.14/997-device_tree_cmdline.patch     |   4 +-
 ...ux-Split-out-register-accessors-for-reuse.patch |   6 +-
 .../patches-4.14/0069-arm-boot-add-dts-files.patch |  12 +-
 .../0012-clk-dont-disable-unused-clocks.patch      |   2 +-
 ...TA-ahci_mvebu-enable-stop_engine-override.patch | 224 ---------------------
 .../531-ATA-ahci_mvebu-pmp-stop-errata-226.patch   | 110 ----------
 13 files changed, 21 insertions(+), 360 deletions(-)
 delete mode 100644 target/linux/mvebu/patches-4.14/530-ATA-ahci_mvebu-enable-stop_engine-override.patch
 delete mode 100644 target/linux/mvebu/patches-4.14/531-ATA-ahci_mvebu-pmp-stop-errata-226.patch

diff --git a/include/kernel-version.mk b/include/kernel-version.mk
index 825a227915..52a8433ec6 100644
--- a/include/kernel-version.mk
+++ b/include/kernel-version.mk
@@ -5,12 +5,12 @@ LINUX_RELEASE?=1
 LINUX_VERSION-3.18 = .71
 LINUX_VERSION-4.4 = .121
 LINUX_VERSION-4.9 = .109
-LINUX_VERSION-4.14 = .50
+LINUX_VERSION-4.14 = .51
 
 LINUX_KERNEL_HASH-3.18.71 = 5abc9778ad44ce02ed6c8ab52ece8a21c6d20d21f6ed8a19287b4a38a50c1240
 LINUX_KERNEL_HASH-4.4.121 = 44a88268b5088dc326b30c9b9133ac35a9a200b636b7268d08f32abeae6ca729
 LINUX_KERNEL_HASH-4.9.109 = 3dcd5654a553432119492b69e649c4ed117781bfd571edcb02346c945be359b0
-LINUX_KERNEL_HASH-4.14.50 = 703a8d013b25dc428d936f72858fa0c702c22cb3114a040fb9bb47562e4ea2ac
+LINUX_KERNEL_HASH-4.14.51 = dab2402baa2444348f9b3c354e8f65382a466d1766942a57441209f9a2df972b
 
 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
 sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
diff --git a/target/linux/arc770/patches-4.14/700-stmmac-Disable-frame-filtering-completely.patch b/target/linux/arc770/patches-4.14/700-stmmac-Disable-frame-filtering-completely.patch
index 58094ae96d..e63c2e934b 100644
--- a/target/linux/arc770/patches-4.14/700-stmmac-Disable-frame-filtering-completely.patch
+++ b/target/linux/arc770/patches-4.14/700-stmmac-Disable-frame-filtering-completely.patch
@@ -20,7 +20,7 @@ Signed-off-by: Alexey Brodkin &lt;abrodkin@synopsys.com&gt;
 
 --- a/drivers/net/ethernet/stmicro/stmmac/common.h
 +++ b/drivers/net/ethernet/stmicro/stmmac/common.h
-@@ -49,7 +49,7 @@
+@@ -46,7 +46,7 @@
  #define STMMAC_GET_ENTRY(x, size)	((x + 1) &amp; (size - 1))
  
  #undef FRAME_FILTER_DEBUG
diff --git a/target/linux/generic/backport-4.14/324-v4.16-netfilter-flow-table-support-for-IPv6.patch b/target/linux/generic/backport-4.14/324-v4.16-netfilter-flow-table-support-for-IPv6.patch
index a561f2669d..874195558c 100644
--- a/target/linux/generic/backport-4.14/324-v4.16-netfilter-flow-table-support-for-IPv6.patch
+++ b/target/linux/generic/backport-4.14/324-v4.16-netfilter-flow-table-support-for-IPv6.patch
@@ -45,7 +45,7 @@ Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
  {
 --- a/net/ipv6/netfilter/Kconfig
 +++ b/net/ipv6/netfilter/Kconfig
-@@ -71,6 +71,14 @@ config NFT_FIB_IPV6
+@@ -99,6 +99,14 @@ config NFT_FIB_IPV6
  endif # NF_TABLES_IPV6
  endif # NF_TABLES
  
diff --git a/target/linux/generic/backport-4.14/329-v4.16-netfilter-improve-flow-table-Kconfig-dependencies.patch b/target/linux/generic/backport-4.14/329-v4.16-netfilter-improve-flow-table-Kconfig-dependencies.patch
index c897c36724..7174723fc9 100644
--- a/target/linux/generic/backport-4.14/329-v4.16-netfilter-improve-flow-table-Kconfig-dependencies.patch
+++ b/target/linux/generic/backport-4.14/329-v4.16-netfilter-improve-flow-table-Kconfig-dependencies.patch
@@ -72,7 +72,7 @@ Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
  
 --- a/net/ipv6/netfilter/Kconfig
 +++ b/net/ipv6/netfilter/Kconfig
-@@ -72,8 +72,9 @@ endif # NF_TABLES_IPV6
+@@ -100,8 +100,9 @@ endif # NF_TABLES_IPV6
  endif # NF_TABLES
  
  config NF_FLOW_TABLE_IPV6
diff --git a/target/linux/generic/backport-4.14/346-v4.16-netfilter-flowtable-infrastructure-depends-on-NETFIL.patch b/target/linux/generic/backport-4.14/346-v4.16-netfilter-flowtable-infrastructure-depends-on-NETFIL.patch
index 5267fd2f67..162086e340 100644
--- a/target/linux/generic/backport-4.14/346-v4.16-netfilter-flowtable-infrastructure-depends-on-NETFIL.patch
+++ b/target/linux/generic/backport-4.14/346-v4.16-netfilter-flowtable-infrastructure-depends-on-NETFIL.patch
@@ -37,7 +37,7 @@ Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
  
 --- a/net/ipv6/netfilter/Kconfig
 +++ b/net/ipv6/netfilter/Kconfig
-@@ -73,8 +73,7 @@ endif # NF_TABLES
+@@ -101,8 +101,7 @@ endif # NF_TABLES
  
  config NF_FLOW_TABLE_IPV6
  	tristate &quot;Netfilter flow table IPv6 module&quot;
diff --git a/target/linux/generic/hack-4.14/650-netfilter-add-xt_OFFLOAD-target.patch b/target/linux/generic/hack-4.14/650-netfilter-add-xt_OFFLOAD-target.patch
index 418ea469e6..308fe0974d 100644
--- a/target/linux/generic/hack-4.14/650-netfilter-add-xt_OFFLOAD-target.patch
+++ b/target/linux/generic/hack-4.14/650-netfilter-add-xt_OFFLOAD-target.patch
@@ -28,7 +28,7 @@ Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
  	depends on !NF_CONNTRACK || NF_CONNTRACK
 --- a/net/ipv6/netfilter/Kconfig
 +++ b/net/ipv6/netfilter/Kconfig
-@@ -69,7 +69,6 @@ config NFT_FIB_IPV6
+@@ -97,7 +97,6 @@ config NFT_FIB_IPV6
  	  multicast or blackhole.
  
  endif # NF_TABLES_IPV6
@@ -36,7 +36,7 @@ Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
  
  config NF_FLOW_TABLE_IPV6
  	tristate &quot;Netfilter flow table IPv6 module&quot;
-@@ -79,6 +78,8 @@ config NF_FLOW_TABLE_IPV6
+@@ -107,6 +106,8 @@ config NF_FLOW_TABLE_IPV6
  
  	  To compile it as a module, choose M here.
  
diff --git a/target/linux/ipq40xx/patches-4.14/902-essedma-alloc-skb-ip-align.patch b/target/linux/ipq40xx/patches-4.14/902-essedma-alloc-skb-ip-align.patch
index 82766c1f2c..8c70fceb01 100644
--- a/target/linux/ipq40xx/patches-4.14/902-essedma-alloc-skb-ip-align.patch
+++ b/target/linux/ipq40xx/patches-4.14/902-essedma-alloc-skb-ip-align.patch
@@ -8,11 +8,9 @@ Signed-off-by: Chen Minqiang &lt;ptpt52@gmail.com&gt;
  drivers/net/ethernet/qualcomm/essedma/edma.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
-diff --git a/drivers/net/ethernet/qualcomm/essedma/edma.c b/drivers/net/ethernet/qualcomm/essedma/edma.c
-index a3c0d66..29bc9f8 100644
 --- a/drivers/net/ethernet/qualcomm/essedma/edma.c
 +++ b/drivers/net/ethernet/qualcomm/essedma/edma.c
-@@ -193,7 +193,7 @@ static int edma_alloc_rx_buf(struct edma_common_info
+@@ -201,7 +201,7 @@ static int edma_alloc_rx_buf(struct edma
  			skb = sw_desc-&gt;skb;
  		} else {
  			/* alloc skb */
@@ -21,6 +19,3 @@ index a3c0d66..29bc9f8 100644
  			if (!skb) {
  				/* Better luck next round */
  				break;
--- 
-2.17.1
-
diff --git a/target/linux/ipq40xx/patches-4.14/997-device_tree_cmdline.patch b/target/linux/ipq40xx/patches-4.14/997-device_tree_cmdline.patch
index 51a35c17d9..8b5e64a2d4 100644
--- a/target/linux/ipq40xx/patches-4.14/997-device_tree_cmdline.patch
+++ b/target/linux/ipq40xx/patches-4.14/997-device_tree_cmdline.patch
@@ -1,12 +1,12 @@
 --- a/drivers/of/fdt.c
 +++ b/drivers/of/fdt.c
-@@ -1127,6 +1127,9 @@ int __init early_init_dt_scan_chosen(uns
+@@ -1130,6 +1130,9 @@ int __init early_init_dt_scan_chosen(uns
  	p = of_get_flat_dt_prop(node, &quot;bootargs&quot;, &amp;l);
  	if (p != NULL &amp;&amp; l &gt; 0)
  		strlcpy(data, p, min((int)l, COMMAND_LINE_SIZE));
 +	p = of_get_flat_dt_prop(node, &quot;bootargs-append&quot;, &amp;l);
 +	if (p != NULL &amp;&amp; l &gt; 0)
 +		strlcat(data, p, min_t(int, strlen(data) + (int)l, COMMAND_LINE_SIZE));
-
+ 
  	/*
  	 * CONFIG_CMDLINE is meant to be a default in case nothing else
diff --git a/target/linux/ipq806x/patches-4.14/0035-clk-mux-Split-out-register-accessors-for-reuse.patch b/target/linux/ipq806x/patches-4.14/0035-clk-mux-Split-out-register-accessors-for-reuse.patch
index 0d919ee668..e65ca02980 100644
--- a/target/linux/ipq806x/patches-4.14/0035-clk-mux-Split-out-register-accessors-for-reuse.patch
+++ b/target/linux/ipq806x/patches-4.14/0035-clk-mux-Split-out-register-accessors-for-reuse.patch
@@ -135,14 +135,14 @@ Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
  	if (mux-&gt;lock)
  		spin_lock_irqsave(mux-&gt;lock, flags);
  	else
-@@ -102,14 +121,14 @@ static int clk_mux_set_parent(struct clk
+@@ -110,14 +129,14 @@ static int clk_mux_determine_rate(struct
  }
  
  const struct clk_ops clk_mux_ops = {
 -	.get_parent = clk_mux_get_parent,
 +	.get_parent = _clk_mux_get_parent,
  	.set_parent = clk_mux_set_parent,
- 	.determine_rate = __clk_mux_determine_rate,
+ 	.determine_rate = clk_mux_determine_rate,
  };
  EXPORT_SYMBOL_GPL(clk_mux_ops);
  
@@ -152,7 +152,7 @@ Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
  };
  EXPORT_SYMBOL_GPL(clk_mux_ro_ops);
  
-@@ -117,7 +136,7 @@ struct clk_hw *clk_hw_register_mux_table
+@@ -125,7 +144,7 @@ struct clk_hw *clk_hw_register_mux_table
  		const char * const *parent_names, u8 num_parents,
  		unsigned long flags,
  		void __iomem *reg, u8 shift, u32 mask,
diff --git a/target/linux/ipq806x/patches-4.14/0069-arm-boot-add-dts-files.patch b/target/linux/ipq806x/patches-4.14/0069-arm-boot-add-dts-files.patch
index 59f37a7027..b94e4828c9 100644
--- a/target/linux/ipq806x/patches-4.14/0069-arm-boot-add-dts-files.patch
+++ b/target/linux/ipq806x/patches-4.14/0069-arm-boot-add-dts-files.patch
@@ -11,9 +11,9 @@ Signed-off-by: John Crispin &lt;john@phrozen.org&gt;
 --- a/arch/arm/boot/dts/Makefile
 +++ b/arch/arm/boot/dts/Makefile
 @@ -699,6 +699,16 @@ dtb-$(CONFIG_ARCH_QCOM) += \
-	qcom-apq8084-mtp.dtb \
-	qcom-ipq4019-ap.dk01.1-c1.dtb \
-	qcom-ipq8064-ap148.dtb \
+ 	qcom-apq8084-mtp.dtb \
+ 	qcom-ipq4019-ap.dk01.1-c1.dtb \
+ 	qcom-ipq8064-ap148.dtb \
 +	qcom-ipq8064-c2600.dtb \
 +	qcom-ipq8064-d7800.dtb \
 +	qcom-ipq8064-db149.dtb \
@@ -24,6 +24,6 @@ Signed-off-by: John Crispin &lt;john@phrozen.org&gt;
 +	qcom-ipq8064-wpq864.dtb \
 +	qcom-ipq8065-nbg6817.dtb \
 +	qcom-ipq8065-r7800.dtb \
-	qcom-msm8660-surf.dtb \
-	qcom-msm8960-cdp.dtb \
-	qcom-msm8974-lge-nexus5-hammerhead.dtb \
+ 	qcom-msm8660-surf.dtb \
+ 	qcom-msm8960-cdp.dtb \
+ 	qcom-msm8974-lge-nexus5-hammerhead.dtb \
diff --git a/target/linux/mediatek/patches-4.14/0012-clk-dont-disable-unused-clocks.patch b/target/linux/mediatek/patches-4.14/0012-clk-dont-disable-unused-clocks.patch
index ed4111dce3..33ede7d3a6 100644
--- a/target/linux/mediatek/patches-4.14/0012-clk-dont-disable-unused-clocks.patch
+++ b/target/linux/mediatek/patches-4.14/0012-clk-dont-disable-unused-clocks.patch
@@ -10,7 +10,7 @@ Signed-off-by: John Crispin &lt;blogic@openwrt.org&gt;
 
 --- a/drivers/clk/clk.c
 +++ b/drivers/clk/clk.c
-@@ -796,7 +796,7 @@ unlock_out:
+@@ -797,7 +797,7 @@ unlock_out:
  		clk_core_disable_unprepare(core-&gt;parent);
  }
  
diff --git a/target/linux/mvebu/patches-4.14/530-ATA-ahci_mvebu-enable-stop_engine-override.patch b/target/linux/mvebu/patches-4.14/530-ATA-ahci_mvebu-enable-stop_engine-override.patch
deleted file mode 100644
index 2d56749607..0000000000
--- a/target/linux/mvebu/patches-4.14/530-ATA-ahci_mvebu-enable-stop_engine-override.patch
+++ /dev/null
@@ -1,224 +0,0 @@
-From fa89f53bd7288d6aa7a982841119e7123faf5a53 Mon Sep 17 00:00:00 2001
-From: Evan Wang &lt;xswang@marvell.com&gt;
-Date: Fri, 13 Apr 2018 12:32:30 +0800
-Subject: [PATCH] libahci: Allow drivers to override stop_engine
-
-Marvell armada37xx, armada7k and armada8k share the same
-AHCI sata controller IP, and currently there is an issue
-(Errata Ref#226)that the SATA can not be detected via SATA
-Port-MultiPlayer(PMP). After debugging, the reason is
-found that the value of Port-x FIS-based Switching Control
-(PxFBS@0x40) became wrong.
-According to design, the bits[11:8, 0] of register PxFBS
-are cleared when Port Command and Status (0x18) bit[0]
-changes its value from 1 to 0, i.e. falling edge of Port
-Command and Status bit[0] sends PULSE that resets PxFBS
-bits[11:8; 0].
-So it needs save the port PxFBS register before PxCMD
-ST write and restore the port PxFBS register afterwards
-in ahci_stop_engine().
-
-This commit allows drivers to override ahci_stop_engine
-behavior for use by the Marvell AHCI driver(and potentially
-other drivers in the future).
-
-Signed-off-by: Evan Wang &lt;xswang@marvell.com&gt;
-Cc: Ofer Heifetz &lt;oferh@marvell.com&gt;
-Cc: Tejun Heo &lt;tj@kernel.org&gt;
-Cc: Thomas Petazzoni &lt;thomas.petazzoni@bootlin.com&gt;
-Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
----
- drivers/ata/ahci.c          |  6 +++---
- drivers/ata/ahci.h          |  7 +++++++
- drivers/ata/ahci_qoriq.c    |  2 +-
- drivers/ata/ahci_xgene.c    |  4 ++--
- drivers/ata/libahci.c       | 20 ++++++++++++--------
- drivers/ata/sata_highbank.c |  2 +-
- 6 files changed, 26 insertions(+), 15 deletions(-)
-
-diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
-index 1ff17799769d0..6389c88b3500a 100644
---- a/drivers/ata/ahci.c
-+++ b/drivers/ata/ahci.c
-@@ -698,7 +698,7 @@ static int ahci_vt8251_hardreset(struct ata_link *link, unsigned int *class,
- 
- 	DPRINTK(&quot;ENTER\n&quot;);
- 
--	ahci_stop_engine(ap);
-+	hpriv-&gt;stop_engine(ap);
- 
- 	rc = sata_link_hardreset(link, sata_ehc_deb_timing(&amp;link-&gt;eh_context),
- 				 deadline, &amp;online, NULL);
-@@ -724,7 +724,7 @@ static int ahci_p5wdh_hardreset(struct ata_link *link, unsigned int *class,
- 	bool online;
- 	int rc;
- 
--	ahci_stop_engine(ap);
-+	hpriv-&gt;stop_engine(ap);
- 
- 	/* clear D2H reception area to properly wait for D2H FIS */
- 	ata_tf_init(link-&gt;device, &amp;tf);
-@@ -788,7 +788,7 @@ static int ahci_avn_hardreset(struct ata_link *link, unsigned int *class,
- 
- 	DPRINTK(&quot;ENTER\n&quot;);
- 
--	ahci_stop_engine(ap);
-+	hpriv-&gt;stop_engine(ap);
- 
- 	for (i = 0; i &lt; 2; i++) {
- 		u16 val;
-diff --git a/drivers/ata/ahci.h b/drivers/ata/ahci.h
-index a9d996e17d75e..824bd399f02ea 100644
---- a/drivers/ata/ahci.h
-+++ b/drivers/ata/ahci.h
-@@ -365,6 +365,13 @@ struct ahci_host_priv {
- 	 * be overridden anytime before the host is activated.
- 	 */
- 	void			(*start_engine)(struct ata_port *ap);
-+	/*
-+	 * Optional ahci_stop_engine override, if not set this gets set to the
-+	 * default ahci_stop_engine during ahci_save_initial_config, this can
-+	 * be overridden anytime before the host is activated.
-+	 */
-+	int			(*stop_engine)(struct ata_port *ap);
-+
- 	irqreturn_t 		(*irq_handler)(int irq, void *dev_instance);
- 
- 	/* only required for per-port MSI(-X) support */
-diff --git a/drivers/ata/ahci_qoriq.c b/drivers/ata/ahci_qoriq.c
-index 2685f28160f70..cfdef4d44ae92 100644
---- a/drivers/ata/ahci_qoriq.c
-+++ b/drivers/ata/ahci_qoriq.c
-@@ -96,7 +96,7 @@ static int ahci_qoriq_hardreset(struct ata_link *link, unsigned int *class,
- 
- 	DPRINTK(&quot;ENTER\n&quot;);
- 
--	ahci_stop_engine(ap);
-+	hpriv-&gt;stop_engine(ap);
- 
- 	/*
- 	 * There is a errata on ls1021a Rev1.0 and Rev2.0 which is:
-diff --git a/drivers/ata/ahci_xgene.c b/drivers/ata/ahci_xgene.c
-index c2b5941d9184d..ad58da7c9affd 100644
---- a/drivers/ata/ahci_xgene.c
-+++ b/drivers/ata/ahci_xgene.c
-@@ -165,7 +165,7 @@ static int xgene_ahci_restart_engine(struct ata_port *ap)
- 				    PORT_CMD_ISSUE, 0x0, 1, 100))
- 		  return -EBUSY;
- 
--	ahci_stop_engine(ap);
-+	hpriv-&gt;stop_engine(ap);
- 	ahci_start_fis_rx(ap);
- 
- 	/*
-@@ -421,7 +421,7 @@ static int xgene_ahci_hardreset(struct ata_link *link, unsigned int *class,
- 	portrxfis_saved = readl(port_mmio + PORT_FIS_ADDR);
- 	portrxfishi_saved = readl(port_mmio + PORT_FIS_ADDR_HI);
- 
--	ahci_stop_engine(ap);
-+	hpriv-&gt;stop_engine(ap);
- 
- 	rc = xgene_ahci_do_hardreset(link, deadline, &amp;online);
- 
-diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c
-index 7adcf3caabd00..e5d90977caec2 100644
---- a/drivers/ata/libahci.c
-+++ b/drivers/ata/libahci.c
-@@ -560,6 +560,9 @@ void ahci_save_initial_config(struct device *dev, struct ahci_host_priv *hpriv)
- 	if (!hpriv-&gt;start_engine)
- 		hpriv-&gt;start_engine = ahci_start_engine;
- 
-+	if (!hpriv-&gt;stop_engine)
-+		hpriv-&gt;stop_engine = ahci_stop_engine;
-+
- 	if (!hpriv-&gt;irq_handler)
- 		hpriv-&gt;irq_handler = ahci_single_level_irq_intr;
- }
-@@ -897,9 +900,10 @@ static void ahci_start_port(struct ata_port *ap)
- static int ahci_deinit_port(struct ata_port *ap, const char **emsg)
- {
- 	int rc;
-+	struct ahci_host_priv *hpriv = ap-&gt;host-&gt;private_data;
- 
- 	/* disable DMA */
--	rc = ahci_stop_engine(ap);
-+	rc = hpriv-&gt;stop_engine(ap);
- 	if (rc) {
- 		*emsg = &quot;failed to stop engine&quot;;
- 		return rc;
-@@ -1310,7 +1314,7 @@ int ahci_kick_engine(struct ata_port *ap)
- 	int busy, rc;
- 
- 	/* stop engine */
--	rc = ahci_stop_engine(ap);
-+	rc = hpriv-&gt;stop_engine(ap);
- 	if (rc)
- 		goto out_restart;
- 
-@@ -1549,7 +1553,7 @@ int ahci_do_hardreset(struct ata_link *link, unsigned int *class,
- 
- 	DPRINTK(&quot;ENTER\n&quot;);
- 
--	ahci_stop_engine(ap);
-+	hpriv-&gt;stop_engine(ap);
- 
- 	/* clear D2H reception area to properly wait for D2H FIS */
- 	ata_tf_init(link-&gt;device, &amp;tf);
-@@ -2075,14 +2079,14 @@ void ahci_error_handler(struct ata_port *ap)
- 
- 	if (!(ap-&gt;pflags &amp; ATA_PFLAG_FROZEN)) {
- 		/* restart engine */
--		ahci_stop_engine(ap);
-+		hpriv-&gt;stop_engine(ap);
- 		hpriv-&gt;start_engine(ap);
- 	}
- 
- 	sata_pmp_error_handler(ap);
- 
- 	if (!ata_dev_enabled(ap-&gt;link.device))
--		ahci_stop_engine(ap);
-+		hpriv-&gt;stop_engine(ap);
- }
- EXPORT_SYMBOL_GPL(ahci_error_handler);
- 
-@@ -2129,7 +2133,7 @@ static void ahci_set_aggressive_devslp(struct ata_port *ap, bool sleep)
- 		return;
- 
- 	/* set DITO, MDAT, DETO and enable DevSlp, need to stop engine first */
--	rc = ahci_stop_engine(ap);
-+	rc = hpriv-&gt;stop_engine(ap);
- 	if (rc)
- 		return;
- 
-@@ -2189,7 +2193,7 @@ static void ahci_enable_fbs(struct ata_port *ap)
- 		return;
- 	}
- 
--	rc = ahci_stop_engine(ap);
-+	rc = hpriv-&gt;stop_engine(ap);
- 	if (rc)
- 		return;
- 
-@@ -2222,7 +2226,7 @@ static void ahci_disable_fbs(struct ata_port *ap)
- 		return;
- 	}
- 
--	rc = ahci_stop_engine(ap);
-+	rc = hpriv-&gt;stop_engine(ap);
- 	if (rc)
- 		return;
- 
-diff --git a/drivers/ata/sata_highbank.c b/drivers/ata/sata_highbank.c
-index aafb8cc035232..e67815b896fcc 100644
---- a/drivers/ata/sata_highbank.c
-+++ b/drivers/ata/sata_highbank.c
-@@ -410,7 +410,7 @@ static int ahci_highbank_hardreset(struct ata_link *link, unsigned int *class,
- 	int rc;
- 	int retry = 100;
- 
--	ahci_stop_engine(ap);
-+	hpriv-&gt;stop_engine(ap);
- 
- 	/* clear D2H reception area to properly wait for D2H FIS */
- 	ata_tf_init(link-&gt;device, &amp;tf);
-
diff --git a/target/linux/mvebu/patches-4.14/531-ATA-ahci_mvebu-pmp-stop-errata-226.patch b/target/linux/mvebu/patches-4.14/531-ATA-ahci_mvebu-pmp-stop-errata-226.patch
deleted file mode 100644
index e71cc0c49f..0000000000
--- a/target/linux/mvebu/patches-4.14/531-ATA-ahci_mvebu-pmp-stop-errata-226.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-From daa2e3bdbb0b3e691cf20a042350817310cb8cb5 Mon Sep 17 00:00:00 2001
-From: Evan Wang &lt;xswang@marvell.com&gt;
-Date: Fri, 13 Apr 2018 12:32:31 +0800
-Subject: [PATCH] ata: ahci: mvebu: override ahci_stop_engine for mvebu AHCI
-
-There is an issue(Errata Ref#226) that the SATA can not be
-detected via SATA Port-MultiPlayer(PMP) with following
-error log:
-  ata1.15: PMP product ID mismatch
-  ata1.15: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
-  ata1.15: Port Multiplier vendor mismatch '0x1b4b'!='0x0'
-  ata1.15: PMP revalidation failed (errno=-19)
-
-After debugging, the reason is found that the value Port-x
-FIS-based Switching Control(PxFBS@0x40) become wrong.
-According to design, the bits[11:8, 0] of register PxFBS
-are cleared when Port Command and Status (0x18) bit[0]
-changes its value from 1 to 0, i.e. falling edge of Port
-Command and Status bit[0] sends PULSE that resets PxFBS
-bits[11:8; 0].
-So it needs a mvebu SATA WA to save the port PxFBS register
-before PxCMD ST write and restore it afterwards.
-
-This patch implements the WA in a separate function of
-ahci_mvebu_stop_engine to override ahci_stop_gngine.
-
-Signed-off-by: Evan Wang &lt;xswang@marvell.com&gt;
-Cc: Ofer Heifetz &lt;oferh@marvell.com&gt;
-Cc: Tejun Heo &lt;tj@kernel.org&gt;
-Cc: Thomas Petazzoni &lt;thomas.petazzoni@bootlin.com&gt;
-Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
----
- drivers/ata/ahci_mvebu.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 56 insertions(+)
-
-diff --git a/drivers/ata/ahci_mvebu.c b/drivers/ata/ahci_mvebu.c
-index de7128d81e9cc..0045dacd814b4 100644
---- a/drivers/ata/ahci_mvebu.c
-+++ b/drivers/ata/ahci_mvebu.c
-@@ -62,6 +62,60 @@ static void ahci_mvebu_regret_option(struct ahci_host_priv *hpriv)
- 	writel(0x80, hpriv-&gt;mmio + AHCI_VENDOR_SPECIFIC_0_DATA);
- }
- 
-+/**
-+ * ahci_mvebu_stop_engine
-+ *
-+ * @ap:	Target ata port
-+ *
-+ * Errata Ref#226 - SATA Disk HOT swap issue when connected through
-+ * Port Multiplier in FIS-based Switching mode.
-+ *
-+ * To avoid the issue, according to design, the bits[11:8, 0] of
-+ * register PxFBS are cleared when Port Command and Status (0x18) bit[0]
-+ * changes its value from 1 to 0, i.e. falling edge of Port
-+ * Command and Status bit[0] sends PULSE that resets PxFBS
-+ * bits[11:8; 0].
-+ *
-+ * This function is used to override function of &quot;ahci_stop_engine&quot;
-+ * from libahci.c by adding the mvebu work around(WA) to save PxFBS
-+ * value before the PxCMD ST write of 0, then restore PxFBS value.
-+ *
-+ * Return: 0 on success; Error code otherwise.
-+ */
-+int ahci_mvebu_stop_engine(struct ata_port *ap)
-+{
-+	void __iomem *port_mmio = ahci_port_base(ap);
-+	u32 tmp, port_fbs;
-+
-+	tmp = readl(port_mmio + PORT_CMD);
-+
-+	/* check if the HBA is idle */
-+	if ((tmp &amp; (PORT_CMD_START | PORT_CMD_LIST_ON)) == 0)
-+		return 0;
-+
-+	/* save the port PxFBS register for later restore */
-+	port_fbs = readl(port_mmio + PORT_FBS);
-+
-+	/* setting HBA to idle */
-+	tmp &amp;= ~PORT_CMD_START;
-+	writel(tmp, port_mmio + PORT_CMD);
-+
-+	/*
-+	 * bit #15 PxCMD signal doesn't clear PxFBS,
-+	 * restore the PxFBS register right after clearing the PxCMD ST,
-+	 * no need to wait for the PxCMD bit #15.
-+	 */
-+	writel(port_fbs, port_mmio + PORT_FBS);
-+
-+	/* wait for engine to stop. This could be as long as 500 msec */
-+	tmp = ata_wait_register(ap, port_mmio + PORT_CMD,
-+				PORT_CMD_LIST_ON, PORT_CMD_LIST_ON, 1, 500);
-+	if (tmp &amp; PORT_CMD_LIST_ON)
-+		return -EIO;
-+
-+	return 0;
-+}
-+
- #ifdef CONFIG_PM_SLEEP
- static int ahci_mvebu_suspend(struct platform_device *pdev, pm_message_t state)
- {
-@@ -112,6 +166,8 @@ static int ahci_mvebu_probe(struct platform_device *pdev)
- 	if (rc)
- 		return rc;
- 
-+	hpriv-&gt;stop_engine = ahci_mvebu_stop_engine;
-+
- 	if (of_device_is_compatible(pdev-&gt;dev.of_node,
- 				    &quot;marvell,armada-380-ahci&quot;)) {
- 		dram = mv_mbus_dram_info();
-
-- 
2.15.2 (Apple Git-101.1)


]