* [PATCH 8/8] Makefile: drop -D__CHECK_ENDIAN__ from cflags
From: Marc Kleine-Budde @ 2016-12-15 7:57 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1481778865-27667-9-git-send-email-mst@redhat.com>
On 12/15/2016 06:15 AM, Michael S. Tsirkin wrote:
> That's the default now, no need for makefiles to set it.
>
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> ---
[...]
> drivers/net/can/Makefile | 1 -
For drivers/net/can/Makefile:
Acked-by: Marc Kleine-Budde <mkl@pengutronix.de>
regards,
Marc
--
Pengutronix e.K. | Marc Kleine-Budde |
Industrial Linux Solutions | Phone: +49-231-2826-924 |
Vertretung West/Dortmund | Fax: +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de |
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20161215/0b31e486/attachment.sig>
^ permalink raw reply
* [PATCH 20/37] ARM: dts: imx6*-sabrelite: Correct license text
From: Uwe Kleine-König @ 2016-12-15 8:01 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161214235746.7108-21-alexandre.belloni@free-electrons.com>
On Thu, Dec 15, 2016 at 12:57:29AM +0100, Alexandre Belloni wrote:
> The license test has been mangled at some point then copy pasted across
> multiple files. Restore it to what it should be.
> Note that this is not intended as a license change.
>
> Cc: Dong Aisheng <aisheng.dong@freescale.com>
> Cc: Eric Nelson <eric.nelson@boundarydevices.com>
> Cc: Gary Bisson <gary.bisson@boundarydevices.com>
> Cc: Hui Wang <jason77.wang@gmail.com>
> Cc: Lucas Stach <l.stach@pengutronix.de>
> Cc: Marek Vasut <marex@denx.de>
> Cc: Markus Pargmann <mpa@pengutronix.de>
> Cc: Nicolin Chen <b42378@freescale.com>
> Cc: Peter Seiderer <ps.report@gmx.net>
> Cc: Philipp Zabel <p.zabel@pengutronix.de>
> Cc: Rafa? Mi?ecki <zajec5@gmail.com>
> Cc: Richard Zhao <richard.zhao@freescale.com>
> Cc: Richard Zhu <r65037@freescale.com>
> Cc: Sascha Hauer <s.hauer@pengutronix.de>
> Cc: Sudeep Holla <sudeep.holla@arm.com>
> Cc: Troy Kisky <troy.kisky@boundarydevices.com>
> Cc: Ulf Hansson <ulf.hansson@linaro.org>
> Cc: Uwe Kleine-K?nig <uwe@kleine-koenig.org>
Acked-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
for the patches I was Cc:d, i.e. 5, 12, 14, 15, 16, 18, 19, 20 and 24.
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply
* [PATCH 00/39] ARM: dts: mvebu: Fix license text
From: Gregory CLEMENT @ 2016-12-15 8:20 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161214223746.23066-1-alexandre.belloni@free-electrons.com>
Hi Alexandre,
On mer., d?c. 14 2016, Alexandre Belloni <alexandre.belloni@free-electrons.com> wrote:
> When the license was switched to dual GPLv2/X11, the text that was used
> was missing a few characters. Fix that now.
>
> I'll let the maintainers decide whether this change requires an ack of
> every contributors. It has been separated with that in mind if
> necessary.
I don't think this kind of change worth all this churn but if you are
very uncomfortable with these missing commas, could you at least squash
all this series in a single patch?
Furthermore to fix these 4 commas the acked-by of all the committer do
not seem absolutely necessary.
When you will squash them you can also fix your commit log s/test/text/.
Thanks,
Gregory
>
> Cc: Andrew Andrianov <andrew@ncrmnt.org>
> Cc: Arnaud Ebalard <arno@natisbad.org>
> Cc: Arnd Bergmann <arnd@arndb.de>
> Cc: Ben Dooks <ben.dooks@codethink.co.uk>
> Cc: Benjamin Cama <benoar@dolka.fr>
> Cc: Benoit Masson <yahoo@perenite.com>
> Cc: Ben Peddell <klightspeed@killerwolves.net>
> Cc: Boris Brezillon <boris.brezillon@free-electrons.com>
> Cc: Chris Packham <chris.packham@alliedtelesis.co.nz>
> Cc: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
> Cc: Florian Fainelli <florian@openwrt.org>
> Cc: Geert Uytterhoeven <geert+renesas@glider.be>
> Cc: Greg Ungerer <gerg@uclinux.org>
> Cc: Grzegorz Jaszczyk <jaz@semihalf.com>
> Cc: Heikki Krogerus <heikki.krogerus@linux.intel.com>
> Cc: Imre Kaloz <kaloz@openwrt.org>
> Cc: Kevin Hilman <khilman@linaro.org>
> Cc: Lior Amsalem <alior@marvell.com>
> Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> Cc: Marcin Wojtas <mw@semihalf.com>
> Cc: Mario Lange <mario_lange@gmx.net>
> Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
> Cc: Nadav Haklai <nadavh@marvell.com>
> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
> Cc: Paul Bolle <pebolle@tiscali.nl>
> Cc: Philipp Zabel <p.zabel@pengutronix.de>
> Cc: Rafa? Mi?ecki <zajec5@gmail.com>
> Cc: Roger Shimizu <rogershimizu@gmail.com>
> Cc: Russell King <rmk+kernel@arm.linux.org.uk>
> Cc: Ryan Press <ryan@presslab.us>
> Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> Cc: Simon Baatz <gmbnomis@gmail.com>
> Cc: Simon Guinot <simon.guinot@sequanux.org>
> Cc: Stefan Roese <sr@denx.de>
> Cc: Sudeep Holla <sudeep.holla@arm.com>
> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> Cc: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
> Cc: Willy Tarreau <w@1wt.eu>
> Cc: Yehuda Yitschak <yehuday@marvell.com>
>
> Alexandre Belloni (39):
> ARM: dts: armada-370-db: Correct license text
> ARM: dts: armada-370-dlink-dns327l: Correct license text
> ARM: dts: armada-370: Correct license text
> ARM: dts: armada-370-mirabox: Correct license text
> ARM: dts: armada-370-netgear-rn102: Correct license text
> ARM: dts: armada-370-netgear-rn104: Correct license text
> ARM: dts: armada-370-rd: Correct license text
> ARM: dts: armada-370-synology-ds213j: Correct license text
> ARM: dts: armada-370-xp: Correct license text
> ARM: dts: armada-375-db: Correct license text
> ARM: dts: armada-375: Correct license text
> ARM: dts: armada-38x: Correct license text
> ARM: dts: armada-388-clearfog: Correct license text
> ARM: dts: armada-388-db: Correct license text
> ARM: dts: armada-388-rd: Correct license text
> ARM: dts: armada-38x-solidrun-microsom: Correct license text
> ARM: dts: armada-390-db: Correct license text
> ARM: dts: armada-390: Correct license text
> ARM: dts: armada-395: Correct license text
> ARM: dts: armada-398-db: Correct license text
> ARM: dts: armada-398: Correct license text
> ARM: dts: armada-39x: Correct license text
> ARM: dts: armada-xp-axpwifiap: Correct license text
> ARM: dts: armada-xp-db: Correct license text
> ARM: dts: armada-xp: Correct license text
> ARM: dts: armada-xp-gp: Correct license text
> ARM: dts: armada-xp-lenovo-ix4-300d: Correct license text
> ARM: dts: armada-xp-matrix: Correct license text
> ARM: dts: armada-xp-mv78230: Correct license text
> ARM: dts: armada-xp-mv78260: Correct license text
> ARM: dts: armada-xp-mv78460: Correct license text
> ARM: dts: armada-xp-netgear-rn2120: Correct license text
> ARM: dts: armada-xp-openblocks-ax3-4: Correct license text
> ARM: dts: armada-xp-synology-ds414: Correct license text
> ARM: dts: dove-cm-a510: Correct license text
> ARM: dts: dove-sbc-a510: Correct license text
> ARM: dts: kirkwood-linkstation: Correct license text
> ARM: dts: orion5x-kuroboxpro: Correct license text
> ARM: dts: orion5x-lswsgl: Correct license text
>
> arch/arm/boot/dts/armada-370-db.dts | 10 +++++-----
> arch/arm/boot/dts/armada-370-dlink-dns327l.dts | 10 +++++-----
> arch/arm/boot/dts/armada-370-mirabox.dts | 10 +++++-----
> arch/arm/boot/dts/armada-370-netgear-rn102.dts | 10 +++++-----
> arch/arm/boot/dts/armada-370-netgear-rn104.dts | 10 +++++-----
> arch/arm/boot/dts/armada-370-rd.dts | 10 +++++-----
> arch/arm/boot/dts/armada-370-synology-ds213j.dts | 10 +++++-----
> arch/arm/boot/dts/armada-370-xp.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-370.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-375-db.dts | 10 +++++-----
> arch/arm/boot/dts/armada-375.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-380.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-385.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-388-clearfog.dts | 10 +++++-----
> arch/arm/boot/dts/armada-388-db.dts | 10 +++++-----
> arch/arm/boot/dts/armada-388-rd.dts | 10 +++++-----
> arch/arm/boot/dts/armada-38x-solidrun-microsom.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-38x.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-390-db.dts | 10 +++++-----
> arch/arm/boot/dts/armada-390.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-395.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-398-db.dts | 10 +++++-----
> arch/arm/boot/dts/armada-398.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-39x.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-xp-axpwifiap.dts | 10 +++++-----
> arch/arm/boot/dts/armada-xp-db.dts | 10 +++++-----
> arch/arm/boot/dts/armada-xp-gp.dts | 10 +++++-----
> arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 10 +++++-----
> arch/arm/boot/dts/armada-xp-matrix.dts | 10 +++++-----
> arch/arm/boot/dts/armada-xp-mv78230.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-xp-mv78260.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-xp-mv78460.dtsi | 10 +++++-----
> arch/arm/boot/dts/armada-xp-netgear-rn2120.dts | 10 +++++-----
> arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts | 10 +++++-----
> arch/arm/boot/dts/armada-xp-synology-ds414.dts | 10 +++++-----
> arch/arm/boot/dts/armada-xp.dtsi | 10 +++++-----
> arch/arm/boot/dts/dove-cm-a510.dtsi | 10 +++++-----
> arch/arm/boot/dts/dove-sbc-a510.dts | 10 +++++-----
> arch/arm/boot/dts/kirkwood-linkstation-6282.dtsi | 10 +++++-----
> arch/arm/boot/dts/kirkwood-linkstation-duo-6281.dtsi | 10 +++++-----
> arch/arm/boot/dts/kirkwood-linkstation-lsqvl.dts | 10 +++++-----
> arch/arm/boot/dts/kirkwood-linkstation-lsvl.dts | 10 +++++-----
> arch/arm/boot/dts/kirkwood-linkstation-lswsxl.dts | 10 +++++-----
> arch/arm/boot/dts/kirkwood-linkstation-lswvl.dts | 10 +++++-----
> arch/arm/boot/dts/kirkwood-linkstation-lswxl.dts | 10 +++++-----
> arch/arm/boot/dts/kirkwood-linkstation.dtsi | 10 +++++-----
> arch/arm/boot/dts/mvebu-linkstation-fan.dtsi | 10 +++++-----
> arch/arm/boot/dts/mvebu-linkstation-gpio-simple.dtsi | 10 +++++-----
> arch/arm/boot/dts/orion5x-kuroboxpro.dts | 10 +++++-----
> arch/arm/boot/dts/orion5x-linkstation-lsgl.dts | 10 +++++-----
> arch/arm/boot/dts/orion5x-linkstation-lswtgl.dts | 10 +++++-----
> arch/arm/boot/dts/orion5x-linkstation.dtsi | 10 +++++-----
> arch/arm/boot/dts/orion5x-lswsgl.dts | 10 +++++-----
> 53 files changed, 265 insertions(+), 265 deletions(-)
>
> --
> 2.10.2
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply
* [PATCH 0/4] ARM64: dts: marvell: fix license text
From: Gregory CLEMENT @ 2016-12-15 8:23 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161214224620.23830-1-alexandre.belloni@free-electrons.com>
Hi Alexandre,
On mer., d?c. 14 2016, Alexandre Belloni <alexandre.belloni@free-electrons.com> wrote:
> The dual GPLv2/X11 license the text that is used
> is missing a few characters.
As for the other series could you squash all this series in a single
patch and fix the commit log (s/test/text/) ?
Thanks,
Gregory
>
>
> Alexandre Belloni (4):
> ARM64: dts: marvell/armada-371x: Correct license text
> ARM64: dts: marvell/armada-3720-db: Correct license text
> ARM64: dts: marvell/armada-372x: Correct license text
> ARM64: dts: marvell/armada-37xx: Correct license text
>
> arch/arm64/boot/dts/marvell/armada-371x.dtsi | 10 +++++-----
> arch/arm64/boot/dts/marvell/armada-3720-db.dts | 10 +++++-----
> arch/arm64/boot/dts/marvell/armada-372x.dtsi | 10 +++++-----
> arch/arm64/boot/dts/marvell/armada-37xx.dtsi | 10 +++++-----
> 4 files changed, 20 insertions(+), 20 deletions(-)
>
> --
> 2.10.2
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply
* [PATCH 00/39] ARM: dts: mvebu: Fix license text
From: Geert Uytterhoeven @ 2016-12-15 8:27 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161214223746.23066-1-alexandre.belloni@free-electrons.com>
Hi Alexandre,
On Wed, Dec 14, 2016 at 11:37 PM, Alexandre Belloni
<alexandre.belloni@free-electrons.com> wrote:
> When the license was switched to dual GPLv2/X11, the text that was used
> was missing a few characters. Fix that now.
>
> I'll let the maintainers decide whether this change requires an ack of
> every contributors. It has been separated with that in mind if
> necessary.
>
> Cc: [deleted]
The CC-list is a bit long for changes to only 4 platforms.
scripts/get_maintainer.pl considered harmful?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply
* [PATCH 00/39] ARM: dts: mvebu: Fix license text
From: Alexandre Belloni @ 2016-12-15 8:52 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <CAMuHMdWPxcOZJbM9Z03W0aJKx8hMcXQb4AQueOjSNcOLLpZRbg@mail.gmail.com>
On 15/12/2016 at 09:27:35 +0100, Geert Uytterhoeven wrote :
> Hi Alexandre,
>
> On Wed, Dec 14, 2016 at 11:37 PM, Alexandre Belloni
> <alexandre.belloni@free-electrons.com> wrote:
> > When the license was switched to dual GPLv2/X11, the text that was used
> > was missing a few characters. Fix that now.
> >
> > I'll let the maintainers decide whether this change requires an ack of
> > every contributors. It has been separated with that in mind if
> > necessary.
> >
> > Cc: [deleted]
>
> The CC-list is a bit long for changes to only 4 platforms.
> scripts/get_maintainer.pl considered harmful?
>
I didn't use scripts/get_maintainer.pl, I cc'ed every contributors as
you would do for a license change.
--
Alexandre Belloni, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
^ permalink raw reply
* [PATCH] i2c: designware: add reset interface
From: zhangfei @ 2016-12-15 8:56 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1481742050.9552.5.camel@linux.intel.com>
On 2016?12?15? 03:00, Andy Shevchenko wrote:
> On Tue, 2016-12-13 at 21:34 +0100, Wolfram Sang wrote:
>> On Tue, Nov 22, 2016 at 12:41:40PM +0800, Zhangfei Gao wrote:
>>> Some platforms like hi3660 need do reset first to allow accessing
>>> registers
>>>
>>> Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
>> Adding designware maintainers to CC...
>>
>>> ---
>>> drivers/i2c/busses/i2c-designware-core.h | 1 +
>>> drivers/i2c/busses/i2c-designware-platdrv.c | 5 +++++
>>> 2 files changed, 6 insertions(+)
>>>
>>> diff --git a/drivers/i2c/busses/i2c-designware-core.h
>>> b/drivers/i2c/busses/i2c-designware-core.h
>>> index 0d44d2a..94b14fa 100644
>>> --- a/drivers/i2c/busses/i2c-designware-core.h
>>> +++ b/drivers/i2c/busses/i2c-designware-core.h
>>> @@ -80,6 +80,7 @@ struct dw_i2c_dev {
>>> void __iomem *base;
>>> struct completion cmd_complete;
>>> struct clk *clk;
>>> + struct reset_control *rst;
>>> u32 (*get_clk_rate_khz) (struct
>>> dw_i2c_dev *dev);
>>> struct dw_pci_controller *controller;
>>> int cmd_err;
>>> diff --git a/drivers/i2c/busses/i2c-designware-platdrv.c
>>> b/drivers/i2c/busses/i2c-designware-platdrv.c
>>> index 0b42a12..fd80e58 100644
>>> --- a/drivers/i2c/busses/i2c-designware-platdrv.c
>>> +++ b/drivers/i2c/busses/i2c-designware-platdrv.c
>>> @@ -38,6 +38,7 @@
>>> #include <linux/pm_runtime.h>
>>> #include <linux/property.h>
>>> #include <linux/io.h>
>>> +#include <linux/reset.h>
>>> #include <linux/slab.h>
>>> #include <linux/acpi.h>
>>> #include <linux/platform_data/i2c-designware.h>
>>> @@ -176,6 +177,10 @@ static int dw_i2c_plat_probe(struct
>>> platform_device *pdev)
>>> dev->irq = irq;
>>> platform_set_drvdata(pdev, dev);
>>>
>>> + dev->rst = devm_reset_control_get(&pdev->dev, NULL);
>>> + if (!IS_ERR(dev->rst))
>>> + reset_control_reset(dev->rst);
> Do we care about EPROBE_DEFER?
>
> Perhaps on error path we need to assert it.
>
> And I guess it should be devm_reset_control_get_optional().
Thanks Andy
Good suggestion, will update accordingly.
Thanks
^ permalink raw reply
* [PATCH v2] i2c: designware: add reset interface
From: Zhangfei Gao @ 2016-12-15 8:59 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1479789700-19532-1-git-send-email-zhangfei.gao@linaro.org>
Some platforms like hi3660 need do reset first to allow accessing registers
Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
---
drivers/i2c/busses/i2c-designware-core.h | 1 +
drivers/i2c/busses/i2c-designware-platdrv.c | 28 ++++++++++++++++++++++++----
2 files changed, 25 insertions(+), 4 deletions(-)
diff --git a/drivers/i2c/busses/i2c-designware-core.h b/drivers/i2c/busses/i2c-designware-core.h
index 0d44d2a..94b14fa 100644
--- a/drivers/i2c/busses/i2c-designware-core.h
+++ b/drivers/i2c/busses/i2c-designware-core.h
@@ -80,6 +80,7 @@ struct dw_i2c_dev {
void __iomem *base;
struct completion cmd_complete;
struct clk *clk;
+ struct reset_control *rst;
u32 (*get_clk_rate_khz) (struct dw_i2c_dev *dev);
struct dw_pci_controller *controller;
int cmd_err;
diff --git a/drivers/i2c/busses/i2c-designware-platdrv.c b/drivers/i2c/busses/i2c-designware-platdrv.c
index 0b42a12..e9016ae 100644
--- a/drivers/i2c/busses/i2c-designware-platdrv.c
+++ b/drivers/i2c/busses/i2c-designware-platdrv.c
@@ -38,6 +38,7 @@
#include <linux/pm_runtime.h>
#include <linux/property.h>
#include <linux/io.h>
+#include <linux/reset.h>
#include <linux/slab.h>
#include <linux/acpi.h>
#include <linux/platform_data/i2c-designware.h>
@@ -176,6 +177,14 @@ static int dw_i2c_plat_probe(struct platform_device *pdev)
dev->irq = irq;
platform_set_drvdata(pdev, dev);
+ dev->rst = devm_reset_control_get_optional(&pdev->dev, NULL);
+ if (IS_ERR(dev->rst)) {
+ if (PTR_ERR(dev->rst) == -EPROBE_DEFER)
+ return -EPROBE_DEFER;
+ } else {
+ reset_control_deassert(dev->rst);
+ }
+
/* fast mode by default because of legacy reasons */
dev->clk_freq = 400000;
@@ -207,12 +216,13 @@ static int dw_i2c_plat_probe(struct platform_device *pdev)
&& dev->clk_freq != 1000000 && dev->clk_freq != 3400000) {
dev_err(&pdev->dev,
"Only 100kHz, 400kHz, 1MHz and 3.4MHz supported");
- return -EINVAL;
+ r = -EINVAL;
+ goto exit_reset;
}
r = i2c_dw_eval_lock_support(dev);
if (r)
- return r;
+ goto exit_reset;
dev->functionality =
I2C_FUNC_I2C |
@@ -270,10 +280,18 @@ static int dw_i2c_plat_probe(struct platform_device *pdev)
}
r = i2c_dw_probe(dev);
- if (r && !dev->pm_runtime_disabled)
- pm_runtime_disable(&pdev->dev);
+ if (r)
+ goto exit_probe;
return r;
+
+exit_probe:
+ if (!dev->pm_runtime_disabled)
+ pm_runtime_disable(&pdev->dev);
+exit_reset:
+ if (!IS_ERR_OR_NULL(dev->rst))
+ reset_control_assert(dev->rst);
+ return r;
}
static int dw_i2c_plat_remove(struct platform_device *pdev)
@@ -290,6 +308,8 @@ static int dw_i2c_plat_remove(struct platform_device *pdev)
pm_runtime_put_sync(&pdev->dev);
if (!dev->pm_runtime_disabled)
pm_runtime_disable(&pdev->dev);
+ if (!IS_ERR_OR_NULL(dev->rst))
+ reset_control_assert(dev->rst);
return 0;
}
--
2.7.4
^ permalink raw reply related
* [PATCH 00/39] ARM: dts: mvebu: Fix license text
From: Alexandre Belloni @ 2016-12-15 9:03 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <874m25li21.fsf@free-electrons.com>
On 15/12/2016 at 09:20:38 +0100, Gregory CLEMENT wrote :
> Hi Alexandre,
>
> On mer., d?c. 14 2016, Alexandre Belloni <alexandre.belloni@free-electrons.com> wrote:
>
> > When the license was switched to dual GPLv2/X11, the text that was used
> > was missing a few characters. Fix that now.
> >
> > I'll let the maintainers decide whether this change requires an ack of
> > every contributors. It has been separated with that in mind if
> > necessary.
>
> I don't think this kind of change worth all this churn but if you are
> very uncomfortable with these missing commas, could you at least squash
> all this series in a single patch?
>
> Furthermore to fix these 4 commas the acked-by of all the committer do
> not seem absolutely necessary.
>
I'd argue this is not only 4 commas but the X11 license text didn't make
sense without the "AS IS" part.
> When you will squash them you can also fix your commit log s/test/text/.
>
Ok, I'll squash them.
--
Alexandre Belloni, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
^ permalink raw reply
* [PATCH 5/8] linux: drop __bitwise__ everywhere
From: Stefan Schmidt @ 2016-12-15 9:04 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1481778865-27667-6-git-send-email-mst@redhat.com>
Hello.
On 15/12/16 06:15, Michael S. Tsirkin wrote:
> __bitwise__ used to mean "yes, please enable sparse checks
> unconditionally", but now that we dropped __CHECK_ENDIAN__
> __bitwise is exactly the same.
> There aren't many users, replace it by __bitwise everywhere.
>
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> ---
> arch/arm/plat-samsung/include/plat/gpio-cfg.h | 2 +-
> drivers/md/dm-cache-block-types.h | 6 +++---
> drivers/net/ethernet/sun/sunhme.h | 2 +-
> drivers/net/wireless/intel/iwlwifi/iwl-fw-file.h | 4 ++--
> include/linux/mmzone.h | 2 +-
> include/linux/serial_core.h | 4 ++--
> include/linux/types.h | 4 ++--
> include/scsi/iscsi_proto.h | 2 +-
> include/target/target_core_base.h | 2 +-
> include/uapi/linux/virtio_types.h | 6 +++---
> net/ieee802154/6lowpan/6lowpan_i.h | 2 +-
> net/mac80211/ieee80211_i.h | 4 ++--
> 12 files changed, 20 insertions(+), 20 deletions(-)
>
> diff --git a/arch/arm/plat-samsung/include/plat/gpio-cfg.h b/arch/arm/plat-samsung/include/plat/gpio-cfg.h
> index 21391fa..e55d1f5 100644
> --- a/arch/arm/plat-samsung/include/plat/gpio-cfg.h
> +++ b/arch/arm/plat-samsung/include/plat/gpio-cfg.h
> @@ -26,7 +26,7 @@
>
> #include <linux/types.h>
>
> -typedef unsigned int __bitwise__ samsung_gpio_pull_t;
> +typedef unsigned int __bitwise samsung_gpio_pull_t;
>
> /* forward declaration if gpio-core.h hasn't been included */
> struct samsung_gpio_chip;
> diff --git a/drivers/md/dm-cache-block-types.h b/drivers/md/dm-cache-block-types.h
> index bed4ad4..389c9e8 100644
> --- a/drivers/md/dm-cache-block-types.h
> +++ b/drivers/md/dm-cache-block-types.h
> @@ -17,9 +17,9 @@
> * discard bitset.
> */
>
> -typedef dm_block_t __bitwise__ dm_oblock_t;
> -typedef uint32_t __bitwise__ dm_cblock_t;
> -typedef dm_block_t __bitwise__ dm_dblock_t;
> +typedef dm_block_t __bitwise dm_oblock_t;
> +typedef uint32_t __bitwise dm_cblock_t;
> +typedef dm_block_t __bitwise dm_dblock_t;
>
> static inline dm_oblock_t to_oblock(dm_block_t b)
> {
> diff --git a/drivers/net/ethernet/sun/sunhme.h b/drivers/net/ethernet/sun/sunhme.h
> index f430765..4a8d5b1 100644
> --- a/drivers/net/ethernet/sun/sunhme.h
> +++ b/drivers/net/ethernet/sun/sunhme.h
> @@ -302,7 +302,7 @@
> * Always write the address first before setting the ownership
> * bits to avoid races with the hardware scanning the ring.
> */
> -typedef u32 __bitwise__ hme32;
> +typedef u32 __bitwise hme32;
>
> struct happy_meal_rxd {
> hme32 rx_flags;
> diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-fw-file.h b/drivers/net/wireless/intel/iwlwifi/iwl-fw-file.h
> index 1ad0ec1..84813b5 100644
> --- a/drivers/net/wireless/intel/iwlwifi/iwl-fw-file.h
> +++ b/drivers/net/wireless/intel/iwlwifi/iwl-fw-file.h
> @@ -228,7 +228,7 @@ enum iwl_ucode_tlv_flag {
> IWL_UCODE_TLV_FLAGS_BCAST_FILTERING = BIT(29),
> };
>
> -typedef unsigned int __bitwise__ iwl_ucode_tlv_api_t;
> +typedef unsigned int __bitwise iwl_ucode_tlv_api_t;
>
> /**
> * enum iwl_ucode_tlv_api - ucode api
> @@ -258,7 +258,7 @@ enum iwl_ucode_tlv_api {
> #endif
> };
>
> -typedef unsigned int __bitwise__ iwl_ucode_tlv_capa_t;
> +typedef unsigned int __bitwise iwl_ucode_tlv_capa_t;
>
> /**
> * enum iwl_ucode_tlv_capa - ucode capabilities
> diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
> index 0f088f3..36d9896 100644
> --- a/include/linux/mmzone.h
> +++ b/include/linux/mmzone.h
> @@ -246,7 +246,7 @@ struct lruvec {
> #define ISOLATE_UNEVICTABLE ((__force isolate_mode_t)0x8)
>
> /* LRU Isolation modes. */
> -typedef unsigned __bitwise__ isolate_mode_t;
> +typedef unsigned __bitwise isolate_mode_t;
>
> enum zone_watermarks {
> WMARK_MIN,
> diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h
> index 5d49488..5def8e8 100644
> --- a/include/linux/serial_core.h
> +++ b/include/linux/serial_core.h
> @@ -111,8 +111,8 @@ struct uart_icount {
> __u32 buf_overrun;
> };
>
> -typedef unsigned int __bitwise__ upf_t;
> -typedef unsigned int __bitwise__ upstat_t;
> +typedef unsigned int __bitwise upf_t;
> +typedef unsigned int __bitwise upstat_t;
>
> struct uart_port {
> spinlock_t lock; /* port lock */
> diff --git a/include/linux/types.h b/include/linux/types.h
> index baf7183..d501ad3 100644
> --- a/include/linux/types.h
> +++ b/include/linux/types.h
> @@ -154,8 +154,8 @@ typedef u64 dma_addr_t;
> typedef u32 dma_addr_t;
> #endif
>
> -typedef unsigned __bitwise__ gfp_t;
> -typedef unsigned __bitwise__ fmode_t;
> +typedef unsigned __bitwise gfp_t;
> +typedef unsigned __bitwise fmode_t;
>
> #ifdef CONFIG_PHYS_ADDR_T_64BIT
> typedef u64 phys_addr_t;
> diff --git a/include/scsi/iscsi_proto.h b/include/scsi/iscsi_proto.h
> index c1260d8..df156f1 100644
> --- a/include/scsi/iscsi_proto.h
> +++ b/include/scsi/iscsi_proto.h
> @@ -74,7 +74,7 @@ static inline int iscsi_sna_gte(u32 n1, u32 n2)
> #define zero_data(p) {p[0]=0;p[1]=0;p[2]=0;}
>
> /* initiator tags; opaque for target */
> -typedef uint32_t __bitwise__ itt_t;
> +typedef uint32_t __bitwise itt_t;
> /* below makes sense only for initiator that created this tag */
> #define build_itt(itt, age) ((__force itt_t)\
> ((itt) | ((age) << ISCSI_AGE_SHIFT)))
> diff --git a/include/target/target_core_base.h b/include/target/target_core_base.h
> index c211900..0055828 100644
> --- a/include/target/target_core_base.h
> +++ b/include/target/target_core_base.h
> @@ -149,7 +149,7 @@ enum se_cmd_flags_table {
> * Used by transport_send_check_condition_and_sense()
> * to signal which ASC/ASCQ sense payload should be built.
> */
> -typedef unsigned __bitwise__ sense_reason_t;
> +typedef unsigned __bitwise sense_reason_t;
>
> enum tcm_sense_reason_table {
> #define R(x) (__force sense_reason_t )(x)
> diff --git a/include/uapi/linux/virtio_types.h b/include/uapi/linux/virtio_types.h
> index e845e8c..55c3b73 100644
> --- a/include/uapi/linux/virtio_types.h
> +++ b/include/uapi/linux/virtio_types.h
> @@ -39,8 +39,8 @@
> * - __le{16,32,64} for standard-compliant virtio devices
> */
>
> -typedef __u16 __bitwise__ __virtio16;
> -typedef __u32 __bitwise__ __virtio32;
> -typedef __u64 __bitwise__ __virtio64;
> +typedef __u16 __bitwise __virtio16;
> +typedef __u32 __bitwise __virtio32;
> +typedef __u64 __bitwise __virtio64;
>
> #endif /* _UAPI_LINUX_VIRTIO_TYPES_H */
> diff --git a/net/ieee802154/6lowpan/6lowpan_i.h b/net/ieee802154/6lowpan/6lowpan_i.h
> index 5ac7789..ac7c96b 100644
> --- a/net/ieee802154/6lowpan/6lowpan_i.h
> +++ b/net/ieee802154/6lowpan/6lowpan_i.h
> @@ -7,7 +7,7 @@
> #include <net/inet_frag.h>
> #include <net/6lowpan.h>
>
> -typedef unsigned __bitwise__ lowpan_rx_result;
> +typedef unsigned __bitwise lowpan_rx_result;
> #define RX_CONTINUE ((__force lowpan_rx_result) 0u)
> #define RX_DROP_UNUSABLE ((__force lowpan_rx_result) 1u)
> #define RX_DROP ((__force lowpan_rx_result) 2u)
> diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
> index d37a577..b2069fb 100644
> --- a/net/mac80211/ieee80211_i.h
> +++ b/net/mac80211/ieee80211_i.h
> @@ -159,7 +159,7 @@ enum ieee80211_bss_valid_data_flags {
> IEEE80211_BSS_VALID_ERP = BIT(3)
> };
>
> -typedef unsigned __bitwise__ ieee80211_tx_result;
> +typedef unsigned __bitwise ieee80211_tx_result;
> #define TX_CONTINUE ((__force ieee80211_tx_result) 0u)
> #define TX_DROP ((__force ieee80211_tx_result) 1u)
> #define TX_QUEUED ((__force ieee80211_tx_result) 2u)
> @@ -180,7 +180,7 @@ struct ieee80211_tx_data {
> };
>
>
> -typedef unsigned __bitwise__ ieee80211_rx_result;
> +typedef unsigned __bitwise ieee80211_rx_result;
> #define RX_CONTINUE ((__force ieee80211_rx_result) 0u)
> #define RX_DROP_UNUSABLE ((__force ieee80211_rx_result) 1u)
> #define RX_DROP_MONITOR ((__force ieee80211_rx_result) 2u)
>
For net/ieee802154/6lowpan/6lowpan_i.h
Acked-by: Stefan Schmidt <stefan@osg.samsung.com>
regards
Stefan Schmidt
^ permalink raw reply
* [PATCH] drm/mediatek: Support UYVY and YUYV format for overlay
From: Daniel Kurtz @ 2016-12-15 9:08 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1481692473-18755-1-git-send-email-bibby.hsieh@mediatek.com>
Hi Bibby,
On Wed, Dec 14, 2016 at 1:14 PM, Bibby Hsieh <bibby.hsieh@mediatek.com> wrote:
>
> MT8173 overlay can support UYVY and YUYV format,
> we add the format in DRM driver.
>
> Signed-off-by: Bibby Hsieh <bibby.hsieh@mediatek.com>
> ---
> drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 6 ++++++
> drivers/gpu/drm/mediatek/mtk_drm_plane.c | 2 ++
> 2 files changed, 8 insertions(+)
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> index 019b7ca..0a340f3 100644
> --- a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> +++ b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
> @@ -44,6 +44,8 @@
> #define OVL_CON_CLRFMT_RGB888 (1 << 12)
> #define OVL_CON_CLRFMT_RGBA8888 (2 << 12)
> #define OVL_CON_CLRFMT_ARGB8888 (3 << 12)
> +#define OVL_CON_CLRFMT_UYVY (4 << 12)
> +#define OVL_CON_CLRFMT_YUYV (5 << 12)
> #define OVL_CON_AEN BIT(8)
> #define OVL_CON_ALPHA 0xff
>
> @@ -161,6 +163,10 @@ static unsigned int ovl_fmt_convert(unsigned int fmt)
> case DRM_FORMAT_XBGR8888:
> case DRM_FORMAT_ABGR8888:
> return OVL_CON_CLRFMT_RGBA8888 | OVL_CON_BYTE_SWAP;
> + case DRM_FORMAT_YUYV:
> + return OVL_CON_CLRFMT_YUYV;
> + case DRM_FORMAT_UYVY:
> + return OVL_CON_CLRFMT_UYVY;
nit: probably better to alphabetize these (UYVY before YUVU).
> }
> }
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_plane.c b/drivers/gpu/drm/mediatek/mtk_drm_plane.c
> index c461a23..b94c6ee 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_plane.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_plane.c
> @@ -28,6 +28,8 @@
> DRM_FORMAT_XRGB8888,
> DRM_FORMAT_ARGB8888,
> DRM_FORMAT_RGB565,
> + DRM_FORMAT_YUYV,
> + DRM_FORMAT_UYVY,
nit: probably better to alphabetize these.
Other than that,
Reviewed-by: Daniel Kurtz <djkurtz@chromium.org>
>
> };
>
> static void mtk_plane_reset(struct drm_plane *plane)
> --
> 1.9.1
>
^ permalink raw reply
* jemalloc testsuite stalls in memset
From: Andreas Schwab @ 2016-12-15 9:24 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161214235031.GA2912@bbox>
On Dez 15 2016, Minchan Kim <minchan@kernel.org> wrote:
> You mean program itself access the address(ie, 0xffffb7400000) is hang
> while access the address from the debugger is OK?
Yes.
> Can you reproduce it easily?
100%
> Did you test it in real machine or qemu on x86?
Both real and kvm.
> Could you show me how I can reproduce it?
Just run make check.
> I want to test it in x86 machine, first of all.
> Unfortunately, I don't have any aarch64 platform now so maybe I have to
> run it on qemu on x86 until I can set up aarch64 platform if it is reproducible
> on real machine only.
>
>>
>> The kernel has been configured with transparent hugepages.
>>
>> CONFIG_TRANSPARENT_HUGEPAGE=y
>> CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
>> # CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
>> CONFIG_TRANSPARENT_HUGE_PAGECACHE=y
>
> What's the exact kernel version?
Anything >= your commit.
> I don't think it's HUGE_PAGECACHE problem but to narrow down the scope,
> could you test it without CONFIG_TRANSPARENT_HUGE_PAGECACHE?
That cannot be deselected.
Andreas.
--
Andreas Schwab, SUSE Labs, schwab at suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."
^ permalink raw reply
* [PATCH] ARM: dts: r8a7791: link DU to VSPDs
From: Magnus Damm @ 2016-12-15 9:59 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1922293.x1RvWWSErN@wasted.cogentembedded.com>
Hi Sergei,
On Thu, Dec 15, 2016 at 7:07 AM, Sergei Shtylyov
<sergei.shtylyov@cogentembedded.com> wrote:
> Add the "vsps" property to the DU device node in order to link this node to
> the VSPD nodes.
>
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
>
> ---
> This patch is against the 'renesas-devel-20161212-v4.9' of Simon Horman's
> 'renesas.git' repo. It's only meaningful if the DU driver patch I've just
> posted is applied.
Next time, please consider pointing out the exact name of the patch
you are referring to.
Thanks,
/ magnus
^ permalink raw reply
* [PATCH] arm: dt: Initialize boot_command_line from CONFIG_CMDLINE in case DT does not provide /chosen/bootargs
From: Russell King - ARM Linux @ 2016-12-15 10:09 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <201612150109.20868@pali>
On Thu, Dec 15, 2016 at 01:09:20AM +0100, Pali Roh?r wrote:
> If cmdline is not in DT, but /chosen exists, then function
> early_init_dt_scan_chosen() use cmdline from CONFIG_CMDLINE.
Ah, yes. Looks to me then as if the bug exists there, and not in arch
code then. early_init_dt_scan_chosen() completely ignores the CMDLINE
options if the chosen node is not found.
> What is reason that CONFIG_CMDLINE is not supported for DT?
Sorry, that's my mistake - as you've pointed out above, it is supported
but via generic code. I was only looking at arch code when I made the
statement.
This patch (untested) should solve it:
drivers/of/fdt.c | 40 ++++++++++++++++++++--------------------
1 file changed, 20 insertions(+), 20 deletions(-)
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index c89d5d231a0e..fb89157332c6 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -1073,26 +1073,6 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname,
if (p != NULL && l > 0)
strlcpy(data, p, min((int)l, COMMAND_LINE_SIZE));
- /*
- * CONFIG_CMDLINE is meant to be a default in case nothing else
- * managed to set the command line, unless CONFIG_CMDLINE_FORCE
- * is set in which case we override whatever was found earlier.
- */
-#ifdef CONFIG_CMDLINE
-#if defined(CONFIG_CMDLINE_EXTEND)
- strlcat(data, " ", COMMAND_LINE_SIZE);
- strlcat(data, CONFIG_CMDLINE, COMMAND_LINE_SIZE);
-#elif defined(CONFIG_CMDLINE_FORCE)
- strlcpy(data, CONFIG_CMDLINE, COMMAND_LINE_SIZE);
-#else
- /* No arguments from boot loader, use kernel's cmdl*/
- if (!((char *)data)[0])
- strlcpy(data, CONFIG_CMDLINE, COMMAND_LINE_SIZE);
-#endif
-#endif /* CONFIG_CMDLINE */
-
- pr_debug("Command line is: %s\n", (char*)data);
-
/* break now */
return 1;
}
@@ -1205,6 +1185,26 @@ void __init early_init_dt_scan_nodes(void)
/* Retrieve various information from the /chosen node */
of_scan_flat_dt(early_init_dt_scan_chosen, boot_command_line);
+ /*
+ * CONFIG_CMDLINE is meant to be a default in case nothing else
+ * managed to set the command line, unless CONFIG_CMDLINE_FORCE
+ * is set in which case we override whatever was found earlier.
+ */
+#ifdef CONFIG_CMDLINE
+#if defined(CONFIG_CMDLINE_EXTEND)
+ strlcat(boot_command_line, " ", COMMAND_LINE_SIZE);
+ strlcat(boot_command_line, CONFIG_CMDLINE, COMMAND_LINE_SIZE);
+#elif defined(CONFIG_CMDLINE_FORCE)
+ strlcpy(boot_command_line, CONFIG_CMDLINE, COMMAND_LINE_SIZE);
+#else
+ /* No arguments from boot loader, use kernel's cmdline */
+ if (!boot_command_line[0])
+ strlcpy(boot_command_line, CONFIG_CMDLINE, COMMAND_LINE_SIZE);
+#endif
+#endif /* CONFIG_CMDLINE */
+
+ pr_debug("Command line is: %s\n", boot_command_line);
+
/* Initialize {size,address}-cells info */
of_scan_flat_dt(early_init_dt_scan_root, NULL);
--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.
^ permalink raw reply related
* [PATCH 6/6] watchdog: ts4600: add driver for TS-4600 watchdog
From: kbuild test robot @ 2016-12-15 10:28 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161214231237.17496-7-sebastien.bourdelin@savoirfairelinux.com>
Hi Sebastien,
[auto build test ERROR on linus/master]
[also build test ERROR on v4.9]
[cannot apply to next-20161215]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Sebastien-Bourdelin/of-documentation-add-bindings-documentation-for-TS-4600/20161215-072238
config: i386-allyesconfig (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
drivers/built-in.o: In function `ts4600_wdt_start':
>> ts4600_wdt.c:(.text+0x2333d64): undefined reference to `ts_nbus_write'
drivers/built-in.o: In function `ts4600_wdt_stop':
ts4600_wdt.c:(.text+0x2333d85): undefined reference to `ts_nbus_write'
drivers/built-in.o: In function `ts4600_wdt_probe':
ts4600_wdt.c:(.text+0x2333e66): undefined reference to `ts_nbus_write'
>> ts4600_wdt.c:(.text+0x2333ee9): undefined reference to `ts_nbus_is_ready'
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 57052 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20161215/7129c152/attachment-0001.gz>
^ permalink raw reply
* Linux crashes when trying to online secondary core
From: Mason @ 2016-12-15 10:35 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <8a021a90-e69e-f38b-c8df-ea8963f3973f@free.fr>
On 14/12/2016 18:47, Mason wrote:
> On 14/12/2016 18:08, Thomas Gleixner wrote:
>
>> On Wed, 14 Dec 2016, Mason wrote:
>>
>>> I'm seeing Linux v4.9 crash (dereferencing NULL) when I try to online
>>> the secondary core, after putting it offline.
>>
>> Does the patch below fix the issue?
>>
>> Thanks,
>>
>> tglx
>>
>> 8<---------------
>>
>> diff --git a/include/linux/cpuhotplug.h b/include/linux/cpuhotplug.h
>> index 22acee76cf4c..2594c287b078 100644
>> --- a/include/linux/cpuhotplug.h
>> +++ b/include/linux/cpuhotplug.h
>> @@ -101,7 +101,6 @@ enum cpuhp_state {
>> CPUHP_AP_ARM_L2X0_STARTING,
>> CPUHP_AP_ARM_ARCH_TIMER_STARTING,
>> CPUHP_AP_ARM_GLOBAL_TIMER_STARTING,
>> - CPUHP_AP_DUMMY_TIMER_STARTING,
>> CPUHP_AP_JCORE_TIMER_STARTING,
>> CPUHP_AP_EXYNOS4_MCT_TIMER_STARTING,
>> CPUHP_AP_ARM_TWD_STARTING,
>> @@ -111,6 +110,7 @@ enum cpuhp_state {
>> CPUHP_AP_MARCO_TIMER_STARTING,
>> CPUHP_AP_MIPS_GIC_TIMER_STARTING,
>> CPUHP_AP_ARC_TIMER_STARTING,
>> + CPUHP_AP_DUMMY_TIMER_STARTING,
>> CPUHP_AP_KVM_STARTING,
>> CPUHP_AP_KVM_ARM_VGIC_INIT_STARTING,
>> CPUHP_AP_KVM_ARM_VGIC_STARTING,
>
> $ patch -p1 < tglx.patch
> patching file include/linux/cpuhotplug.h
> Hunk #1 succeeded at 80 (offset -21 lines).
> Hunk #2 succeeded at 89 (offset -21 lines).
>
> It does seem to fix the problem:
>
> # echo 0 > /sys/devices/system/cpu/cpu1/online
> SMC called with a0=0x00[000001 a1=0x00000121 a2=0x00000005 a3 =0xc01189b4 0x00000121
> [1][flow/suspend3.c:39] CPU 1 die: jumping6 to. post-boot WFE
> 402826] CPU1: shutdown
> SMC called with a0=0x00000001 a1=0x00000122 a2=0x00000000 a3=0x00000000 0x00000122
> [0][flow/suspend.c:82] Killing core1
> armor+++ armor: core 1 booted, entering wfe...
> # echo 1 > /sys/devices/system/cpu/cpu1/online
> [ 215.692700] tango_boot_secondary from __cpu_up
> SMC called with a0=0x80101500 a1=0x00000105 a2=0x00000000 a3=0x00000000 0x00000105
> [ 215.704494] tango_set_aux_boot_addr=0
> SMC called with a0=0x00000001 a1=0x00000104 a2=0x00000000 a3=0x00000000 0x00000104
> [0][flow/smc_handler.c:127] waking up CPU1
> [ 215.719308] tango_start_aux_core=0
>
>
> I reverted your patch, and the kernel blows up again.
>
> So what's the problem, and how does your patch solve it?
Link to the original report:
https://marc.info/?l=linux-arm-kernel&m=148173152524746&w=2
Forgot to CC Robin Murphy, who had provided valuable input
in similar circumstances a few months back.
Also add LKML, since this doesn't appear to be ARM-specific.
Do I need to specify which device tree I was using?
Regards.
^ permalink raw reply
* [PATCH 23/39] ARM: dts: armada-xp-axpwifiap: Correct license text
From: Sebastian Hesselbarth @ 2016-12-15 10:38 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161214223746.23066-24-alexandre.belloni@free-electrons.com>
On 14.12.2016 23:37, Alexandre Belloni wrote:
> The license test has been mangled at some point then copy pasted across
> multiple files. Restore it to what it should be.
> Note that this is not intended as a license change.
>
> Cc: Arnaud Ebalard <arno@natisbad.org>
> Cc: Boris Brezillon <boris.brezillon@free-electrons.com>
> Cc: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
> Cc: Paul Bolle <pebolle@tiscali.nl>
> Cc: Rafa? Mi?ecki <zajec5@gmail.com>
> Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Feel free to add my
Acked-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
for Patches 23, 25, 27, 29, 30, 31, 32, 33, 35, 36, i.e. all I
have been in Cc.
Sebastian
> Cc: Stefan Roese <sr@denx.de>
> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
> ---
> arch/arm/boot/dts/armada-xp-axpwifiap.dts | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/arch/arm/boot/dts/armada-xp-axpwifiap.dts b/arch/arm/boot/dts/armada-xp-axpwifiap.dts
> index ce152719bc28..6a25eb427822 100644
> --- a/arch/arm/boot/dts/armada-xp-axpwifiap.dts
> +++ b/arch/arm/boot/dts/armada-xp-axpwifiap.dts
> @@ -20,17 +20,17 @@
> * published by the Free Software Foundation; either version 2 of the
> * License, or (at your option) any later version.
> *
> - * This file is distributed in the hope that it will be useful
> + * This file is distributed in the hope that it will be useful,
> * but WITHOUT ANY WARRANTY; without even the implied warranty of
> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> * GNU General Public License for more details.
> *
> - * Or, alternatively
> + * Or, alternatively,
> *
> * b) Permission is hereby granted, free of charge, to any person
> * obtaining a copy of this software and associated documentation
> * files (the "Software"), to deal in the Software without
> - * restriction, including without limitation the rights to use
> + * restriction, including without limitation the rights to use,
> * copy, modify, merge, publish, distribute, sublicense, and/or
> * sell copies of the Software, and to permit persons to whom the
> * Software is furnished to do so, subject to the following
> @@ -39,11 +39,11 @@
> * The above copyright notice and this permission notice shall be
> * included in all copies or substantial portions of the Software.
> *
> - * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
> * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
> * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
> * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
> - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
> + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
> * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
> * OTHER DEALINGS IN THE SOFTWARE.
>
^ permalink raw reply
* Tearing down DMA transfer setup after DMA client has finished
From: Mark Brown @ 2016-12-15 11:17 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <7900ae24-6803-a271-944c-8830f718fef0@free.fr>
On Fri, Dec 09, 2016 at 07:23:17PM +0100, Mason wrote:
> On 09/12/2016 18:56, Vinod Koul wrote:
> > Right, but in that case the fallback would be PIO mode, and if that is
> > not availble (IIRC some f your devices don't) then reject the usage with
> > EAGAIN.
> Maybe I'm missing something, but I don't see how that would help.
> Take the NAND Flash controller driver, for instance. PIO is not
> an option, because the ECC engine is tied to DMA.
> And failing with -EAGAIN doesn't help the busy looping situation.
> The caller should be put on some kind of queue to wait for a
> "channel ready" event.
Even without the tie into ECC being an issue it seems like falling back
to PIO could produce poor results at the system level - it's likely that
the PIO would be very expensive and take longer than waiting would've
done, increasing the burden on the CPU and slowing things down overall
for userspace.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 484 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20161215/e41e6df1/attachment.sig>
^ permalink raw reply
* [PATCH 1/2] ARM: hyp-stub: improve ABI
From: Marc Zyngier @ 2016-12-15 11:18 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <E1cH74w-0003ke-Qp@rmk-PC.armlinux.org.uk>
On 14/12/16 10:46, Russell King wrote:
> Improve the hyp-stub ABI to allow it to do more than just get/set the
> vectors. We follow the example in ARM64, where r0 is used as an opcode
> with the other registers as an argument.
>
> Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
> ---
> arch/arm/kernel/hyp-stub.S | 27 ++++++++++++++++++++++-----
> 1 file changed, 22 insertions(+), 5 deletions(-)
>
> diff --git a/arch/arm/kernel/hyp-stub.S b/arch/arm/kernel/hyp-stub.S
> index 15d073ae5da2..f3e9ba5fb642 100644
> --- a/arch/arm/kernel/hyp-stub.S
> +++ b/arch/arm/kernel/hyp-stub.S
> @@ -22,6 +22,9 @@
> #include <asm/assembler.h>
> #include <asm/virt.h>
>
> +#define HVC_GET_VECTORS 0
> +#define HVC_SET_VECTORS 1
> +
> #ifndef ZIMAGE
> /*
> * For the kernel proper, we need to find out the CPU boot mode long after
> @@ -202,9 +205,19 @@ ARM_BE8(orr r7, r7, #(1 << 25)) @ HSCTLR.EE
> ENDPROC(__hyp_stub_install_secondary)
>
> __hyp_stub_do_trap:
> - cmp r0, #-1
> - mrceq p15, 4, r0, c12, c0, 0 @ get HVBAR
> - mcrne p15, 4, r0, c12, c0, 0 @ set HVBAR
> + teq r0, #HVC_GET_VECTORS
> + bne 1f
> + mrc p15, 4, r0, c12, c0, 0 @ get HVBAR
> + b __hyp_stub_exit
> +
> +1: teq r0, #HVC_SET_VECTORS
> + bne 1f
> + mcr p15, 4, r1, c12, c0, 0 @ set HVBAR
> + b __hyp_stub_exit
> +
> +1: mov r0, #-1
> +
> +__hyp_stub_exit:
> __ERET
> ENDPROC(__hyp_stub_do_trap)
>
> @@ -231,10 +244,14 @@ ENDPROC(__hyp_stub_do_trap)
> * initialisation entry point.
> */
> ENTRY(__hyp_get_vectors)
> - mov r0, #-1
> + mov r0, #HVC_GET_VECTORS
This breaks the KVM implementation of __hyp_get_vectors, easily fixed
with the following patchlet:
diff --git a/arch/arm/include/asm/virt.h b/arch/arm/include/asm/virt.h
index a2e75b8..0fe637e 100644
--- a/arch/arm/include/asm/virt.h
+++ b/arch/arm/include/asm/virt.h
@@ -89,6 +89,14 @@ extern char __hyp_text_start[];
extern char __hyp_text_end[];
#endif
+#else
+
+/* Only assembly code should need those */
+
+#define HVC_GET_VECTORS 0
+#define HVC_SET_VECTORS 1
+#define HVC_SOFT_RESTART 2
+
#endif /* __ASSEMBLY__ */
#endif /* ! VIRT_H */
diff --git a/arch/arm/kernel/hyp-stub.S b/arch/arm/kernel/hyp-stub.S
index ebc26f8..1c6888f 100644
--- a/arch/arm/kernel/hyp-stub.S
+++ b/arch/arm/kernel/hyp-stub.S
@@ -22,10 +22,6 @@
#include <asm/assembler.h>
#include <asm/virt.h>
-#define HVC_GET_VECTORS 0
-#define HVC_SET_VECTORS 1
-#define HVC_SOFT_RESTART 2
-
#ifndef ZIMAGE
/*
* For the kernel proper, we need to find out the CPU boot mode long after
diff --git a/arch/arm/kvm/hyp/hyp-entry.S b/arch/arm/kvm/hyp/hyp-entry.S
index 96beb53..1f8db7d 100644
--- a/arch/arm/kvm/hyp/hyp-entry.S
+++ b/arch/arm/kvm/hyp/hyp-entry.S
@@ -127,7 +127,7 @@ hyp_hvc:
pop {r0, r1, r2}
/* Check for __hyp_get_vectors */
- cmp r0, #-1
+ cmp r0, #HVC_GET_VECTORS
mrceq p15, 4, r0, c12, c0, 0 @ get HVBAR
beq 1f
Thanks,
M.
--
Jazz is not dead. It just smells funny...
^ permalink raw reply related
* [PATCH 2/2] xilinx_dma: Add reset support
From: Ramiro Oliveira @ 2016-12-15 11:26 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <5658430.jXmKZEXWrS@avalon>
Hi Laurent,
Thank you for your feedback.
On 12/14/2016 8:16 PM, Laurent Pinchart wrote:
> Hi Ramiro,
>
> Thank you for the patch.
>
> On Wednesday 14 Dec 2016 17:18:24 Ramiro Oliveira wrote:
>> Add a DT property to control an optional external reset line
>>
>> Signed-off-by: Ramiro Oliveira <roliveir@synopsys.com>
>> ---
>> drivers/dma/xilinx/xilinx_dma.c | 23 +++++++++++++++++++++++
>> 1 file changed, 23 insertions(+)
>>
>> diff --git a/drivers/dma/xilinx/xilinx_dma.c
>> b/drivers/dma/xilinx/xilinx_dma.c index 5c9f11b..b845224 100644
>> --- a/drivers/dma/xilinx/xilinx_dma.c
>> +++ b/drivers/dma/xilinx/xilinx_dma.c
>> @@ -46,6 +46,7 @@
>> #include <linux/slab.h>
>> #include <linux/clk.h>
>> #include <linux/io-64-nonatomic-lo-hi.h>
>> +#include <linux/reset.h>
>
> I had neatly sorted the header alphabetically until someone added clk.h and
> io-64-nonatomic-lo-hi.h :-( Could you please move reset.h just before slab.h ?
>
Sure. Actually I was tempted to reorder it, but I decided not to do it. I'll do
it now
>>
>> #include "../dmaengine.h"
>>
>> @@ -409,6 +410,7 @@ struct xilinx_dma_device {
>> struct clk *rxs_clk;
>> u32 nr_channels;
>> u32 chan_id;
>> + struct reset_control *rst;
>> };
>>
>> /* Macros */
>> @@ -2543,6 +2545,27 @@ static int xilinx_dma_probe(struct platform_device
>> *pdev) if (IS_ERR(xdev->regs))
>> return PTR_ERR(xdev->regs);
>>
>> + xdev->rst = devm_reset_control_get_optional(&pdev->dev, "reset");
>
> devm_reset_control_get_optional() is deprecated as explained in linux/reset.h,
> you should use devm_reset_control_get_optional_exclusive() or
> devm_reset_control_get_optional_shared() instead, as applicable.
>
> This being said, I'm wondering why the optional versions of those functions
> exist, as they do exactly the same as the non-optional versions. The API feels
> wrong, it should have been modelled like the GPIO API. Feel free to fix it if
> you want :-) But that's out of scope for this patch.
>
I missed the comment stating that devm_reset_control_get_optional() was deprecated.
I could fix it. Your sugestion is modelling these functions like the GPIO API?
>> + if (IS_ERR(xdev->rst)) {
>> + err = PTR_ERR(xdev->rst);
>> + switch (err) {
>> + case -ENOENT:
>
> If you drop the name as proposed in the review of patch 1/2 you don't have to
> check for -ENOENT.
>
I'll do that.
>> + case -ENOTSUPP:
>> + xdev->rst = NULL;
>> + break;
>
> Wrong indentation.
>
> You need to handle -EPROBE_DEFER and defer probing of the xilinx_dma device.
>
>> + default:
>> + dev_err(xdev->dev, "error getting reset %d\n", err);
>> + return err;
>
> Wrong indentation.
>
>> + }
>> + } else {
>> + err = reset_control_deassert(xdev->rst);
>> + if (err) {
>> + dev_err(xdev->dev, "failed to deassert reset: %d\n",
>> + err);
>
> Wrong indentation.
>
>> + return err;
>> + }
>> + }
>> +
>> /* Retrieve the DMA engine properties from the device tree */
>> xdev->has_sg = of_property_read_bool(node, "xlnx,include-sg");
>> if (xdev->dma_config->dmatype == XDMA_TYPE_AXIDMA)
>
^ permalink raw reply
* [PATCH v2 1/4] Support for building in a Xen binary
From: Julien Grall @ 2016-12-15 11:34 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161122150917.16524-2-andre.przywara@arm.com>
Hi Andre,
On 22/11/16 15:09, Andre Przywara wrote:
> diff --git a/configure.ac b/configure.ac
> index ab8f5b3..f7e24c7 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -40,6 +40,18 @@ AC_ARG_WITH([dtb],
> AS_HELP_STRING([--with-dtb], [Specify a particular DTB to use]),
> [KERN_DTB="$withval"])
>
> +AC_ARG_WITH([xen],
> + AS_HELP_STRING([--with-xen], [Compile for Xen, and Specify a particular Xen to use]),
NIT: s/Specify/specify/
Reviewed-by: Julien Grall <julien.grall@arm.com>
Cheers,
--
Julien Grall
^ permalink raw reply
* [PATCH v2] ARM: dts: sunxi: Change node name for pwrseq pin on Olinuxino-lime2-emmc
From: Emmanuel Vadot @ 2016-12-15 11:35 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161214153013.bkdm3pu3osepfnn2@lukather>
Hi Maxime,
On Wed, 14 Dec 2016 16:30:13 +0100
Maxime Ripard <maxime.ripard@free-electrons.com> wrote:
> On Wed, Dec 14, 2016 at 03:57:24PM +0100, Emmanuel Vadot wrote:
> > The node name for the power seq pin is mmc2 at 0 like the mmc2_pins_a one.
> > This makes the original node (mmc2_pins_a) scrapped out of the dtb and
> > result in a unusable eMMC if U-Boot didn't configured the pins to the
> > correct functions.
> >
> > Changes since v1:
> > * Rename the node mmc2-rst-pin
>
> That changelog should be after the ---. Removed it and applied.
>
> Thanks!
> Maxime
Sorry, still kinda new at doing patches for Linux, will be more
carefull next time.
Quick question, when you say applied, applied where exactly ? I had a
quick look at your branches on git.kernel.org didn't find anything.
Thanks.
--
Emmanuel Vadot <manu@bidouilliste.com> <manu@freebsd.org>
^ permalink raw reply
* [PATCH 1/2] ARM: hyp-stub: improve ABI
From: Russell King - ARM Linux @ 2016-12-15 11:35 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <72f93940-cf87-fd91-90f2-760b7ff050fb@arm.com>
On Thu, Dec 15, 2016 at 11:18:48AM +0000, Marc Zyngier wrote:
> On 14/12/16 10:46, Russell King wrote:
> > @@ -231,10 +244,14 @@ ENDPROC(__hyp_stub_do_trap)
> > * initialisation entry point.
> > */
> > ENTRY(__hyp_get_vectors)
> > - mov r0, #-1
> > + mov r0, #HVC_GET_VECTORS
>
> This breaks the KVM implementation of __hyp_get_vectors, easily fixed
> with the following patchlet:
Right, so what Mark said is wrong:
"The hyp-stub is part of the kernel image, and the API is private to
that particular image, so we can change things -- there's no ABI to
worry about."
So no, I'm going with my original patch (which TI has tested) which is
the minimal change, and if we _then_ want to rework the HYP mode
interfaces, that's the time to do the other changes when more people
(such as KVM folk) are paying attention and we can come to a cross-
hypervisor agreement on what the interface should be.
--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.
^ permalink raw reply
* [PATCH v2 2/4] Xen: Support adding DT nodes
From: Julien Grall @ 2016-12-15 11:41 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161122150917.16524-3-andre.przywara@arm.com>
Hi Andre,
On 22/11/16 15:09, Andre Przywara wrote:
> From: Christoffer Dall <christoffer.dall@linaro.org>
>
> Support adding xen,xen-bootargs node via --with-xen-bootargs to the
Based the code, the configure option is --with-xen-cmdline.
> configure script and automatically add the Dom0 node to the DT as well.
>
> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
With the above request:
Reviewed-by: Julien Grall <julien.grall@arm.com>
Regards,
--
Julien Grall
^ permalink raw reply
* [PATCH 1/2] ARM: hyp-stub: improve ABI
From: Marc Zyngier @ 2016-12-15 11:46 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20161215113539.GK14217@n2100.armlinux.org.uk>
On 15/12/16 11:35, Russell King - ARM Linux wrote:
> On Thu, Dec 15, 2016 at 11:18:48AM +0000, Marc Zyngier wrote:
>> On 14/12/16 10:46, Russell King wrote:
>>> @@ -231,10 +244,14 @@ ENDPROC(__hyp_stub_do_trap)
>>> * initialisation entry point.
>>> */
>>> ENTRY(__hyp_get_vectors)
>>> - mov r0, #-1
>>> + mov r0, #HVC_GET_VECTORS
>>
>> This breaks the KVM implementation of __hyp_get_vectors, easily fixed
>> with the following patchlet:
>
> Right, so what Mark said is wrong:
>
> "The hyp-stub is part of the kernel image, and the API is private to
> that particular image, so we can change things -- there's no ABI to
> worry about."
I think Mark is right. The API *is* private to the kernel, and KVM being
the only in-kernel hypervisor on ARM, this is not an ABI.
It is an unfortunate bug that no symbolic constant was used to highlight
the two implementations of the same functionality, but I don't think
that makes anything wrong in what Mark said here.
> So no, I'm going with my original patch (which TI has tested) which is
> the minimal change, and if we _then_ want to rework the HYP mode
> interfaces, that's the time to do the other changes when more people
> (such as KVM folk) are paying attention and we can come to a cross-
> hypervisor agreement on what the interface should be.
Given that there is a single in-kernel hypervisor, I can't really see
who we're going to agree anything with...
Thanks,
M.
--
Jazz is not dead. It just smells funny...
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox