* [PATCH 15/20] nvmem: snvs_lpgpr: Convert commas to semicolons
From: Andrey Smirnov @ 2017-12-27 22:59 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171227225956.14442-1-andrew.smirnov@gmail.com>
Looks like commas were accidentally used where semicolons were
supposed to be. Fix that.
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Carlo Caione <carlo@caione.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: Joachim Eastwood <manabian@gmail.com>
Cc: cphealy at gmail.com
Cc: linux-kernel at vger.kernel.org
Cc: linux-mediatek at lists.infradead.org
Cc: linux-rockchip at lists.infradead.org
Cc: linux-amlogic at lists.infradead.org
Cc: linux-arm-kernel at lists.infradead.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
---
drivers/nvmem/snvs_lpgpr.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/nvmem/snvs_lpgpr.c b/drivers/nvmem/snvs_lpgpr.c
index 6a2fdd09e74a..90aaf818563b 100644
--- a/drivers/nvmem/snvs_lpgpr.c
+++ b/drivers/nvmem/snvs_lpgpr.c
@@ -110,12 +110,12 @@ static int snvs_lpgpr_probe(struct platform_device *pdev)
cfg->priv = priv;
cfg->name = dev_name(dev);
cfg->dev = dev;
- cfg->stride = 4,
- cfg->word_size = 4,
- cfg->size = 4,
- cfg->owner = THIS_MODULE,
- cfg->reg_read = snvs_lpgpr_read,
- cfg->reg_write = snvs_lpgpr_write,
+ cfg->stride = 4;
+ cfg->word_size = 4;
+ cfg->size = 4;
+ cfg->owner = THIS_MODULE;
+ cfg->reg_read = snvs_lpgpr_read;
+ cfg->reg_write = snvs_lpgpr_write;
nvmem = devm_nvmem_register(dev, cfg);
if (IS_ERR(nvmem))
--
2.14.3
^ permalink raw reply related
* [PATCH 16/20] nvmem: rockchip-efuse: Make use of of_device_get_match_data()
From: Andrey Smirnov @ 2017-12-27 22:59 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171227225956.14442-1-andrew.smirnov@gmail.com>
Simplify code a bit by using of_device_get_match_data() instead of
of_match_device().
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Carlo Caione <carlo@caione.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: Joachim Eastwood <manabian@gmail.com>
Cc: cphealy at gmail.com
Cc: linux-kernel at vger.kernel.org
Cc: linux-mediatek at lists.infradead.org
Cc: linux-rockchip at lists.infradead.org
Cc: linux-amlogic at lists.infradead.org
Cc: linux-arm-kernel at lists.infradead.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
---
drivers/nvmem/rockchip-efuse.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/nvmem/rockchip-efuse.c b/drivers/nvmem/rockchip-efuse.c
index d6dc1330f895..979ba0a376a0 100644
--- a/drivers/nvmem/rockchip-efuse.c
+++ b/drivers/nvmem/rockchip-efuse.c
@@ -193,11 +193,11 @@ static int rockchip_efuse_probe(struct platform_device *pdev)
struct resource *res;
struct nvmem_device *nvmem;
struct rockchip_efuse_chip *efuse;
- const struct of_device_id *match;
+ const void *data;
struct device *dev = &pdev->dev;
- match = of_match_device(dev->driver->of_match_table, dev);
- if (!match || !match->data) {
+ data = of_device_get_match_data(dev);
+ if (!data) {
dev_err(dev, "failed to get match data\n");
return -EINVAL;
}
@@ -218,7 +218,7 @@ static int rockchip_efuse_probe(struct platform_device *pdev)
efuse->dev = &pdev->dev;
econfig.size = resource_size(res);
- econfig.reg_read = match->data;
+ econfig.reg_read = data;
econfig.priv = efuse;
econfig.dev = efuse->dev;
nvmem = devm_nvmem_register(dev, &econfig);
--
2.14.3
^ permalink raw reply related
* [PATCH 17/20] nvmem: vf610-ocotp: Do not use "&pdev->dev" explicitly
From: Andrey Smirnov @ 2017-12-27 22:59 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171227225956.14442-1-andrew.smirnov@gmail.com>
There already a "dev" variable for that. Use it.
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Carlo Caione <carlo@caione.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: Joachim Eastwood <manabian@gmail.com>
Cc: cphealy at gmail.com
Cc: linux-kernel at vger.kernel.org
Cc: linux-mediatek at lists.infradead.org
Cc: linux-rockchip at lists.infradead.org
Cc: linux-amlogic at lists.infradead.org
Cc: linux-arm-kernel at lists.infradead.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
---
drivers/nvmem/vf610-ocotp.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/nvmem/vf610-ocotp.c b/drivers/nvmem/vf610-ocotp.c
index 752a0983e7fb..6e6bf7987d9d 100644
--- a/drivers/nvmem/vf610-ocotp.c
+++ b/drivers/nvmem/vf610-ocotp.c
@@ -223,8 +223,7 @@ static int vf610_ocotp_probe(struct platform_device *pdev)
struct resource *res;
struct vf610_ocotp *ocotp_dev;
- ocotp_dev = devm_kzalloc(&pdev->dev,
- sizeof(struct vf610_ocotp), GFP_KERNEL);
+ ocotp_dev = devm_kzalloc(dev, sizeof(struct vf610_ocotp), GFP_KERNEL);
if (!ocotp_dev)
return -ENOMEM;
--
2.14.3
^ permalink raw reply related
* [PATCH 18/20] nvmem: rockchip-efuse: Do not use "&pdev->dev" explicitly
From: Andrey Smirnov @ 2017-12-27 22:59 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171227225956.14442-1-andrew.smirnov@gmail.com>
There's "dev" variable for this already. Use it.
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Carlo Caione <carlo@caione.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: Joachim Eastwood <manabian@gmail.com>
Cc: cphealy at gmail.com
Cc: linux-kernel at vger.kernel.org
Cc: linux-mediatek at lists.infradead.org
Cc: linux-rockchip at lists.infradead.org
Cc: linux-amlogic at lists.infradead.org
Cc: linux-arm-kernel at lists.infradead.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
---
drivers/nvmem/rockchip-efuse.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/nvmem/rockchip-efuse.c b/drivers/nvmem/rockchip-efuse.c
index 979ba0a376a0..3120329aea94 100644
--- a/drivers/nvmem/rockchip-efuse.c
+++ b/drivers/nvmem/rockchip-efuse.c
@@ -202,21 +202,21 @@ static int rockchip_efuse_probe(struct platform_device *pdev)
return -EINVAL;
}
- efuse = devm_kzalloc(&pdev->dev, sizeof(struct rockchip_efuse_chip),
+ efuse = devm_kzalloc(dev, sizeof(struct rockchip_efuse_chip),
GFP_KERNEL);
if (!efuse)
return -ENOMEM;
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- efuse->base = devm_ioremap_resource(&pdev->dev, res);
+ efuse->base = devm_ioremap_resource(dev, res);
if (IS_ERR(efuse->base))
return PTR_ERR(efuse->base);
- efuse->clk = devm_clk_get(&pdev->dev, "pclk_efuse");
+ efuse->clk = devm_clk_get(dev, "pclk_efuse");
if (IS_ERR(efuse->clk))
return PTR_ERR(efuse->clk);
- efuse->dev = &pdev->dev;
+ efuse->dev = dev;
econfig.size = resource_size(res);
econfig.reg_read = data;
econfig.priv = efuse;
--
2.14.3
^ permalink raw reply related
* [PATCH 19/20] nvmem: imx-iim: Do not use "&pdev->dev" explicitly
From: Andrey Smirnov @ 2017-12-27 22:59 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171227225956.14442-1-andrew.smirnov@gmail.com>
There's already "dev" variable for that. Use it.
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Carlo Caione <carlo@caione.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: Joachim Eastwood <manabian@gmail.com>
Cc: cphealy at gmail.com
Cc: linux-kernel at vger.kernel.org
Cc: linux-mediatek at lists.infradead.org
Cc: linux-rockchip at lists.infradead.org
Cc: linux-amlogic at lists.infradead.org
Cc: linux-arm-kernel at lists.infradead.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
---
drivers/nvmem/imx-iim.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/nvmem/imx-iim.c b/drivers/nvmem/imx-iim.c
index 635561a441bd..3022bd96bd7e 100644
--- a/drivers/nvmem/imx-iim.c
+++ b/drivers/nvmem/imx-iim.c
@@ -125,7 +125,7 @@ static int imx_iim_probe(struct platform_device *pdev)
drvdata = of_id->data;
- iim->clk = devm_clk_get(&pdev->dev, NULL);
+ iim->clk = devm_clk_get(dev, NULL);
if (IS_ERR(iim->clk))
return PTR_ERR(iim->clk);
--
2.14.3
^ permalink raw reply related
* [PATCH 20/20] nvmem: bcm-ocotp: Do not use "&pdev->dev" explicitly
From: Andrey Smirnov @ 2017-12-27 22:59 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171227225956.14442-1-andrew.smirnov@gmail.com>
There's "dev" variable for this already. Use it.
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Carlo Caione <carlo@caione.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: Joachim Eastwood <manabian@gmail.com>
Cc: cphealy at gmail.com
Cc: linux-kernel at vger.kernel.org
Cc: linux-mediatek at lists.infradead.org
Cc: linux-rockchip at lists.infradead.org
Cc: linux-amlogic at lists.infradead.org
Cc: linux-arm-kernel at lists.infradead.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
---
drivers/nvmem/bcm-ocotp.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/nvmem/bcm-ocotp.c b/drivers/nvmem/bcm-ocotp.c
index 24c30fa475cc..4159b3f41d79 100644
--- a/drivers/nvmem/bcm-ocotp.c
+++ b/drivers/nvmem/bcm-ocotp.c
@@ -262,8 +262,7 @@ static int bcm_otpc_probe(struct platform_device *pdev)
else if (of_device_is_compatible(dev->of_node, "brcm,ocotp-v2"))
priv->map = &otp_map_v2;
else {
- dev_err(&pdev->dev,
- "%s otpc config map not defined\n", __func__);
+ dev_err(dev, "%s otpc config map not defined\n", __func__);
return -EINVAL;
}
--
2.14.3
^ permalink raw reply related
* [PATCH net-next 5/6] arm64: dts: marvell: mcbin: enable the fourth network interface
From: Russell King - ARM Linux @ 2017-12-27 23:20 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171227224252.GB2626@kwain>
On Wed, Dec 27, 2017 at 11:42:52PM +0100, Antoine Tenart wrote:
> Hi Russell,
>
> On Wed, Dec 27, 2017 at 10:24:01PM +0000, Russell King - ARM Linux wrote:
> > On Wed, Dec 27, 2017 at 11:14:45PM +0100, Antoine Tenart wrote:
> > >
> > > +&cps_eth2 {
> > > + /* CPS Lane 5 */
> > > + status = "okay";
> > > + phy-mode = "2500base-x";
> > > + /* Generic PHY, providing serdes lanes */
> > > + phys = <&cps_comphy5 2>;
> > > +};
> > > +
> >
> > This is wrong. This lane is connected to a SFP cage which can support
> > more than just 2500base-X. Tying it in this way to 2500base-X means
> > that this port does not support conenctions at 1000base-X, despite
> > that's one of the most popular and more standardised speeds.
>
> What do you suggest to describe this in the dt, to enable a port using
> the current PPv2 driver?
I don't - I'm merely pointing out that you're bodging support for the
SFP cage rather than productively discussing phylink for mvpp2.
As far as I remember, the discussion stalled at this point:
- You think there's modes that mvpp2 supports that are not supportable
if you use phylink.
- I've described what phylink supports, and I've asked you for details
about what you can't support.
Unfortunately, no details have been forthcoming, and no further
discussion has occurred - the ball is entirely in your court to
progress this issue since I requested information from you and that
is where things seem to have stalled.
The result is that, with your patch, you're locking the port to 2.5G
speeds, meaning that only 4.3Mbps Fibrechannel SFPs can be used with
the port, and it can only be used with another device that supports
2.5G speeds. You can't use a copper RJ45 module, and you can't use
a standard 1000base-X module either in this configuration.
What I'm most concerned about, given the bindings for comphy that
have been merged, is that Free Electrons is pushing forward seemingly
with no regard to the requirement that the serdes lanes are dynamically
reconfigurable, and that's a basic requirement for SFP, and for the
88x3310 PHYs on the Macchiatobin platform.
So, my question to you is: what is Free Electrons plans to properly
support the ethernet ports on the Macchiatobin platform?
For those on the Cc list who don't know, phylink is part of full support
for SFP and SFP+ cages, sponsored (in terms of hardware including SFP
modules) by SolidRun on both SolidRun's Clearfog and Macchiatobin
platforms, supporting a wide range of SFP modules including:
- 1G Optical ethernet modules (duplex and bidi modules)
- 10/100/1G RJ45 modules
- 10G SFP+ modules
- 2.5Gbase-X using 4.3Mbps Fibrechannel modules
- Direct attach cables
There is work ongoing between Florian, Andrew and myself to switch DSA
to phylink, and have SFP modules working with both Marvell and Broadcom
DSA switches.
Phylink and SFP was already merged into mainline, and has been usable
(provided that the network driver is converted to phylink rather than
phylib) since 4.14-rc1.
--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 8.8Mbps down 630kbps up
According to speedtest.net: 8.21Mbps down 510kbps up
^ permalink raw reply
* [PATCH] ARM: dts: qcom: msm8974: Add Sony Xperia Z1 Compact
From: Bjorn Andersson @ 2017-12-27 23:22 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171203040919.16243-1-ata2001@airmail.cc>
On Sat 02 Dec 20:09 PST 2017, Attila Sz?ll??si wrote:
> This patch adds a DTS file for Sony Xperia Z1 Compact with support for
> regulators, serial UART, eMMC/SD-card, USB, charger, backlight,
> coincell and buttons.
>
> Work based on arch/arm/boot/dts/qcom-msm8974-sony-xperia-honami.dts.
>
> Signed-off-by: Attila Sz?ll??si <ata2001@airmail.cc>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Regards,
Bjorn
^ permalink raw reply
* [PATCH v2 2/3] dt-bindings: media: Add Allwinner V3s Camera Sensor Interface (CSI)
From: Yong @ 2017-12-28 1:04 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171227214723.rcssyay2lqqjf6ty@valkosipuli.retiisi.org.uk>
Hi,
On Wed, 27 Dec 2017 23:47:23 +0200
Sakari Ailus <sakari.ailus@iki.fi> wrote:
> Hi Yong,
>
> On Thu, Dec 21, 2017 at 10:49:35AM +0800, Yong wrote:
> > Hi,
> >
> > On Tue, 19 Dec 2017 13:53:28 +0200
> > Sakari Ailus <sakari.ailus@iki.fi> wrote:
> >
> > > Hi Yong,
> > >
> > > On Thu, Jul 27, 2017 at 01:01:36PM +0800, Yong Deng wrote:
> > > > Add binding documentation for Allwinner V3s CSI.
> > > >
> > > > Signed-off-by: Yong Deng <yong.deng@magewell.com>
> > >
> > > DT bindings should precede the driver.
> >
> > OK.
> >
> > >
> > > > ---
> > > > .../devicetree/bindings/media/sun6i-csi.txt | 49 ++++++++++++++++++++++
> > > > 1 file changed, 49 insertions(+)
> > > > create mode 100644 Documentation/devicetree/bindings/media/sun6i-csi.txt
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/media/sun6i-csi.txt b/Documentation/devicetree/bindings/media/sun6i-csi.txt
> > > > new file mode 100644
> > > > index 0000000..f8d83f6
> > > > --- /dev/null
> > > > +++ b/Documentation/devicetree/bindings/media/sun6i-csi.txt
> > > > @@ -0,0 +1,49 @@
> > > > +Allwinner V3s Camera Sensor Interface
> > > > +------------------------------
> > > > +
> > > > +Required properties:
> > > > + - compatible: value must be "allwinner,sun8i-v3s-csi"
> > >
> > > What are sun6i and sun8i? Is this device first present in sun6i SoCs,
> > > whereas you have only defined bindings for sun8i?
> >
> > Yes, some sun6i SoCs has the almost same CSI module.
> > There is only V3s on my hand. So, I only tested it on V3s. But
> > some people work on the others.
>
> Ack.
>
> >
> > >
> > > > + - reg: base address and size of the memory-mapped region.
> > > > + - interrupts: interrupt associated to this IP
> > > > + - clocks: phandles to the clocks feeding the CSI
> > > > + * ahb: the CSI interface clock
> > > > + * mod: the CSI module clock
> > > > + * ram: the CSI DRAM clock
> > > > + - clock-names: the clock names mentioned above
> > > > + - resets: phandles to the reset line driving the CSI
> > > > +
> > > > +- ports: A ports node with endpoint definitions as defined in
> > > > + Documentation/devicetree/bindings/media/video-interfaces.txt.
> > >
> > > Please document mandatory and optional endpoint properties relevant for the
> > > hardware.
> >
> > I have added below commit in my v3:
> > Currently, the driver only support the parallel interface. So, a single port
> > node with one endpoint and parallel bus is supported.
>
> Please specify the exact properties that are relevant for the hardware. No
> references should be made to the driver, the bindings are entirely
> separate.
>
> Are the non-parallel (CSI-2?) and parallel bus on the same interface? If
> yes, they should probably use different endpoints, if not, then different
> ports.
>
> You could document the other bus or omit it now altogether, in which case
> you'd only detail the parallel bus properties here.
Thanks for your explication. I have misunderstood this.
>
> >
> > >
> > > > +
> > > > +Example:
> > > > +
> > > > + csi1: csi at 01cb4000 {
> > > > + compatible = "allwinner,sun8i-v3s-csi";
> > > > + reg = <0x01cb4000 0x1000>;
> > > > + interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
> > > > + clocks = <&ccu CLK_BUS_CSI>,
> > > > + <&ccu CLK_CSI1_SCLK>,
> > > > + <&ccu CLK_DRAM_CSI>;
> > > > + clock-names = "ahb", "mod", "ram";
> > > > + resets = <&ccu RST_BUS_CSI>;
> > > > +
> > > > + port {
> > > > + #address-cells = <1>;
> > > > + #size-cells = <0>;
> > > > +
> > > > + /* Parallel bus endpoint */
> > > > + csi1_ep: endpoint {
> > > > + remote-endpoint = <&adv7611_ep>;
> > > > + bus-width = <16>;
> > > > + data-shift = <0>;
> > > > +
> > > > + /* If hsync-active/vsync-active are missing,
> > > > + embedded BT.656 sync is used */
> > > > + hsync-active = <0>; /* Active low */
> > > > + vsync-active = <0>; /* Active low */
> > > > + data-active = <1>; /* Active high */
> > > > + pclk-sample = <1>; /* Rising */
> > > > + };
> > > > + };
> > > > + };
> > > > +
> > >
> > > --
> > > Kind regards,
> > >
> > > Sakari Ailus
> > > e-mail: sakari.ailus at iki.fi
> >
> >
> > Thanks,
> > Yong
>
> --
> Regards,
>
> Sakari Ailus
> e-mail: sakari.ailus at iki.fi
Thanks,
Yong
^ permalink raw reply
* [PATCH v4 1/2] dt-bindings: media: Add Allwinner V3s Camera Sensor Interface (CSI)
From: Yong @ 2017-12-28 1:05 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171226215537.cmn4l7k2w764yrsg@rob-hp-laptop>
Hi,
On Tue, 26 Dec 2017 15:55:37 -0600
Rob Herring <robh@kernel.org> wrote:
> On Fri, Dec 22, 2017 at 05:41:29PM +0800, Yong Deng wrote:
> > Add binding documentation for Allwinner V3s CSI.
> >
> > Signed-off-by: Yong Deng <yong.deng@magewell.com>
> > ---
> > .../devicetree/bindings/media/sun6i-csi.txt | 51 ++++++++++++++++++++++
> > 1 file changed, 51 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/media/sun6i-csi.txt
> >
> > diff --git a/Documentation/devicetree/bindings/media/sun6i-csi.txt b/Documentation/devicetree/bindings/media/sun6i-csi.txt
> > new file mode 100644
> > index 0000000..b5bfe3f
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/media/sun6i-csi.txt
> > @@ -0,0 +1,51 @@
> > +Allwinner V3s Camera Sensor Interface
> > +------------------------------
> > +
> > +Required properties:
> > + - compatible: value must be "allwinner,sun8i-v3s-csi"
> > + - reg: base address and size of the memory-mapped region.
> > + - interrupts: interrupt associated to this IP
> > + - clocks: phandles to the clocks feeding the CSI
> > + * bus: the CSI interface clock
> > + * mod: the CSI module clock
> > + * ram: the CSI DRAM clock
> > + - clock-names: the clock names mentioned above
> > + - resets: phandles to the reset line driving the CSI
> > +
> > +- ports: A ports node with endpoint definitions as defined in
> > + Documentation/devicetree/bindings/media/video-interfaces.txt.
> > + Currently, the driver only support the parallel interface. So, a single port
> > + node with one endpoint and parallel bus is supported.
>
> What the driver supports is not relevant. Please document what the h/w
> has.
OK.
>
> > +
> > +Example:
> > +
> > + csi1: csi at 1cb4000 {
> > + compatible = "allwinner,sun8i-v3s-csi";
> > + reg = <0x01cb4000 0x1000>;
> > + interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
> > + clocks = <&ccu CLK_BUS_CSI>,
> > + <&ccu CLK_CSI1_SCLK>,
> > + <&ccu CLK_DRAM_CSI>;
> > + clock-names = "bus", "mod", "ram";
> > + resets = <&ccu RST_BUS_CSI>;
> > +
> > + port {
>
> > + #address-cells = <1>;
> > + #size-cells = <0>;
>
> These are not needed with a single endpoint.
OK.
>
> > +
> > + /* Parallel bus endpoint */
> > + csi1_ep: endpoint {
> > + remote-endpoint = <&adv7611_ep>;
> > + bus-width = <16>;
> > + data-shift = <0>;
> > +
> > + /* If hsync-active/vsync-active are missing,
> > + embedded BT.656 sync is used */
> > + hsync-active = <0>; /* Active low */
> > + vsync-active = <0>; /* Active low */
> > + data-active = <1>; /* Active high */
> > + pclk-sample = <1>; /* Rising */
> > + };
> > + };
> > + };
> > +
> > --
> > 1.8.3.1
> >
Thanks,
Yong
^ permalink raw reply
* [PATCH v5 2/2] PCI: mediatek: Set up class type and vendor ID for MT7622
From: Honghui Zhang @ 2017-12-28 1:39 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171227184542.GA79892@bhelgaas-glaptop.roam.corp.google.com>
On Wed, 2017-12-27 at 12:45 -0600, Bjorn Helgaas wrote:
> On Wed, Dec 27, 2017 at 08:59:54AM +0800, honghui.zhang at mediatek.com wrote:
> > From: Honghui Zhang <honghui.zhang@mediatek.com>
> >
> > The hardware default value of IDs and class type is not correct,
> > fix that by setup the correct values before start up.
> >
> > Signed-off-by: Honghui Zhang <honghui.zhang@mediatek.com>
> > ---
> > drivers/pci/host/pcie-mediatek.c | 12 ++++++++++++
> > include/linux/pci_ids.h | 2 ++
> > 2 files changed, 14 insertions(+)
> >
> > diff --git a/drivers/pci/host/pcie-mediatek.c b/drivers/pci/host/pcie-mediatek.c
> > index fc29a9a..62aac0ea 100644
> > --- a/drivers/pci/host/pcie-mediatek.c
> > +++ b/drivers/pci/host/pcie-mediatek.c
> > @@ -74,6 +74,10 @@
> >
> > /* PCIe V2 per-port registers */
> > #define PCIE_MSI_VECTOR 0x0c0
> > +
> > +#define PCIE_CONF_ID 0x100
> > +#define PCIE_CONF_CLASS 0x104
> > +
> > #define PCIE_INT_MASK 0x420
> > #define INTX_MASK GENMASK(19, 16)
> > #define INTX_SHIFT 16
> > @@ -393,6 +397,14 @@ static int mtk_pcie_startup_port_v2(struct mtk_pcie_port *port)
> > val |= PCIE_CSR_LTSSM_EN(port->slot) |
> > PCIE_CSR_ASPM_L1_EN(port->slot);
> > writel(val, pcie->base + PCIE_SYS_CFG_V2);
> > +
> > + /* Set up vendor ID and device ID for MT7622*/
> > + val = PCI_VENDOR_ID_MEDIATEK;
> > + writel(val, port->base + PCIE_CONF_ID);
> > +
> > + /* Set up class code for MT7622 */
> > + val = PCI_CLASS_BRIDGE_PCI << 16;
> > + writel(val, port->base + PCIE_CONF_CLASS);
>
> 1) Your comments mention MT7622 specifically, but this code is run for
> both mt2712-pcie and mt7622-pcie. If this code is safe and necessary
> for both mt2712-pcie and mt7622-pcie, please remove the mention of
> MT7622.
Hmm, the code snippet added here will only be executed by MT7622, since
MT2712 will not enter this "if (pcie->base) {" condition.
Should the mention of MT7622 must be removed in this case?
>
> 2) The first comment mentions both "vendor ID and device ID" but you
> don't write the device ID. Since this code applies to both
> mt2712-pcie and mt7622-pcie, my guess is that you don't *want* to
> write the device ID. If that's the case, please fix the comment.
>
My bad, I did not check the comments carefully.
Thanks.
> 3) If you only need to set the vendor ID, you're performing a 32-bit
> write (writel()) to update a 16-bit value. Please use writew()
> instead.
>
Ok, thanks, I guess I could use the following code snippet in the next
version:
val = readl(port->base + PCIE_CONF_VENDOR_ID)
val &= ~GENMASK(15, 0);
val |= PCI_VENDOR_ID_MEDIATEK;
writel(val, port->base + PCIE_CONF_VENDOR_ID);
> 4) If you only need to set the vendor ID, please use a definition like
> "PCIE_CONF_VENDOR_ID" instead of the ambiguous "PCIE_CONF_ID".
>
> 5) If you only need to set the vendor ID, please update the changelog
> to mention "vendor ID" specifically instead of the ambiguous "IDs".
> 6) Please add a space before the closing "*/" of the first comment.
>
> 7) PCI_CLASS_BRIDGE_PCI is for a PCI-to-PCI bridge, i.e., one that has
> PCI on both the primary (upstream) side and the secondary (downstream)
> side. That kind of bridge has a type 1 config header (see
> PCI_HEADER_TYPE) and the PCI_PRIMARY_BUS and PCI_SECONDARY_BUS
> registers tell us the bus number of the primary and secondary sides.
>
> I don't believe this device is a PCI-to-PCI bridge. I think it's a
> *host* bridge that has some non-PCI interface on the upstream side and
> should have a type 0 config header. If that's the case you should use
> PCI_CLASS_BRIDGE_HOST instead.
>
Thanks very much for your help with the review, I will fix the other
issue in the next version.
> > }
> >
> > /* Assert all reset signals */
> > diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
> > index ab20dc5..2480b0e 100644
> > --- a/include/linux/pci_ids.h
> > +++ b/include/linux/pci_ids.h
> > @@ -2113,6 +2113,8 @@
> >
> > #define PCI_VENDOR_ID_MYRICOM 0x14c1
> >
> > +#define PCI_VENDOR_ID_MEDIATEK 0x14c3
> > +
> > #define PCI_VENDOR_ID_TITAN 0x14D2
> > #define PCI_DEVICE_ID_TITAN_010L 0x8001
> > #define PCI_DEVICE_ID_TITAN_100L 0x8010
> > --
> > 2.6.4
> >
^ permalink raw reply
* [GIT PULL 1/3] ARM: Keystone DTS for 4.16
From: Santosh Shilimkar @ 2017-12-28 2:07 UTC (permalink / raw)
To: linux-arm-kernel
The following changes since commit 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323:
Linux 4.15-rc1 (2017-11-26 16:01:47 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone.git tags/keystone_dts_for_4.16
for you to fetch changes up to 4fe85b0cdd06f8fef2631923799bdc95380badb5:
ARM: dts: keystone-k2l-clocks: Add missing unit name to clock nodes that have regs (2017-12-16 14:36:57 -0800)
----------------------------------------------------------------
ARM: Keystone DTS update for 4.16
- Enable GPIO bank2 for K2L
- Enable QSPI for K2G & K2G-EVM
- Enable UART1/2 for K2G & K2G-EVM
- Enable peripherals for K2G-ICE
- Fix C1 and C2 DTS warnings
----------------------------------------------------------------
Franklin S Cooper Jr (2):
ARM: dts: k2g: Add UART 1 and 2 instances
ARM: dts: k2g-evm: Enable UART 2
Javier Martinez Canillas (1):
ARM: dts: keystone: Add generic compatible string for I2C EEPROM
Keerthy (1):
ARM: dts: keystone-k2l: Add the second gpio bank node
Nishanth Menon (8):
ARM: dts: keystone*: Standardize license with SPDX tag
ARM: dts: keystone*: Use a single soc0 instance
ARM: dts: keystone: Get rid of usage of skeleton.dtsi
ARM: dts: keystone: Add missing unit name to interrupt controller
ARM: dts: keystone-clocks: Add missing unit name to clock nodes that have regs
ARM: dts: keystone-hk-clocks: Add missing unit name to clock nodes that have regs
ARM: dts: keystone-k2e-clocks: Add missing unit name to clock nodes that have regs
ARM: dts: keystone-k2l-clocks: Add missing unit name to clock nodes that have regs
Vignesh R (5):
ARM: dts: keystone-k2g: Add QSPI DT entry
ARM: dts: keystone-k2g-evm: Fix botched up merge
ARM: dts: keystone-k2g: Move ti,non-removable property to board dts
ARM: dts: keystone-k2g-evm: Add QSPI DT node.
ARM: dts: keystone-k2g-ice: Add DT nodes for few peripherals
arch/arm/boot/dts/keystone-clocks.dtsi | 59 +++--
arch/arm/boot/dts/keystone-k2e-clocks.dtsi | 15 +-
arch/arm/boot/dts/keystone-k2e-evm.dts | 13 +-
arch/arm/boot/dts/keystone-k2e-netcp.dtsi | 7 +-
arch/arm/boot/dts/keystone-k2e.dtsi | 11 +-
arch/arm/boot/dts/keystone-k2g-evm.dts | 115 +++++++---
arch/arm/boot/dts/keystone-k2g-ice.dts | 339 +++++++++++++++++++++++++++-
arch/arm/boot/dts/keystone-k2g.dtsi | 58 +++--
arch/arm/boot/dts/keystone-k2hk-clocks.dtsi | 81 ++++---
arch/arm/boot/dts/keystone-k2hk-evm.dts | 59 +++--
arch/arm/boot/dts/keystone-k2hk-netcp.dtsi | 7 +-
arch/arm/boot/dts/keystone-k2hk.dtsi | 11 +-
arch/arm/boot/dts/keystone-k2l-clocks.dtsi | 51 ++---
arch/arm/boot/dts/keystone-k2l-evm.dts | 13 +-
arch/arm/boot/dts/keystone-k2l-netcp.dtsi | 7 +-
arch/arm/boot/dts/keystone-k2l.dtsi | 55 ++++-
arch/arm/boot/dts/keystone.dtsi | 18 +-
17 files changed, 676 insertions(+), 243 deletions(-)
^ permalink raw reply
* [GIT PULL 2/3] SOC: Keystone SOC update for 4.16
From: Santosh Shilimkar @ 2017-12-28 2:07 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1514426872-5769-1-git-send-email-santosh.shilimkar@oracle.com>
The following changes since commit 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323:
Linux 4.15-rc1 (2017-11-26 16:01:47 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone.git tags/keystone_driver_soc_for_4.16
for you to fetch changes up to aefc5818553680c50c9f6840e47c01b80edd9b3a:
soc: ti: fix max dup length for kstrndup (2017-12-16 14:45:33 -0800)
----------------------------------------------------------------
SOC: Keystone Soc driver updates for 4.16
- TI EMIF-SRAM driver
- TI SCI print format fix
- Navigator strndup lenth fix
----------------------------------------------------------------
Arnd Bergmann (1):
memory: ti-emif-sram: remove unused variable
Dave Gerlach (2):
Documentation: dt: Update ti,emif bindings
memory: ti-emif-sram: introduce relocatable suspend/resume handlers
Ma Shimiao (1):
soc: ti: fix max dup length for kstrndup
Nishanth Menon (1):
firmware: ti_sci: Use %zu for size_t print format
.../bindings/memory-controllers/ti/emif.txt | 17 +-
drivers/firmware/ti_sci.c | 4 +-
drivers/memory/Kconfig | 10 +
drivers/memory/Makefile | 8 +
drivers/memory/Makefile.asm-offsets | 5 +
drivers/memory/emif-asm-offsets.c | 92 ++++++
drivers/memory/emif.h | 17 ++
drivers/memory/ti-emif-pm.c | 324 ++++++++++++++++++++
drivers/memory/ti-emif-sram-pm.S | 334 +++++++++++++++++++++
drivers/soc/ti/knav_qmss_queue.c | 4 +-
include/linux/ti-emif-sram.h | 69 +++++
11 files changed, 879 insertions(+), 5 deletions(-)
create mode 100644 drivers/memory/Makefile.asm-offsets
create mode 100644 drivers/memory/emif-asm-offsets.c
create mode 100644 drivers/memory/ti-emif-pm.c
create mode 100644 drivers/memory/ti-emif-sram-pm.S
create mode 100644 include/linux/ti-emif-sram.h
^ permalink raw reply
* [GIT PULL 3/3] ARM: Keystone config update for 4.16
From: Santosh Shilimkar @ 2017-12-28 2:07 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1514426872-5769-1-git-send-email-santosh.shilimkar@oracle.com>
Also had patch to sync up multi-v7 config but because of conflicts
in next, have to drop it. Will send that post merge window separately
The following changes since commit 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323:
Linux 4.15-rc1 (2017-11-26 16:01:47 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone.git tags/keystone_config_for_4.16
for you to fetch changes up to 10f06c70f337494fc2fec623542186fec80fc395:
ARM: configs: keystone_defconfig: Enable few peripheral drivers (2017-12-02 19:34:36 -0800)
----------------------------------------------------------------
ARM: Keystone configs for 4.16
- Enable QSPI
- Enable LEDs
- Enable GPIO-decoder
----------------------------------------------------------------
Vignesh R (1):
ARM: configs: keystone_defconfig: Enable few peripheral drivers
arch/arm/configs/keystone_defconfig | 7 +++++++
1 file changed, 7 insertions(+)
^ permalink raw reply
* [PATCH -next] clk: meson-axg: fix return value check in axg_clkc_probe()
From: Wei Yongjun @ 2017-12-28 2:40 UTC (permalink / raw)
To: linux-arm-kernel
In case of error, the function devm_ioremap() returns NULL pointer
not ERR_PTR(). The IS_ERR() test in the return value check should be
replaced with NULL test.
Fixes: 78b4af312f91 ("clk: meson-axg: add clock controller drivers")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
---
drivers/clk/meson/axg.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/clk/meson/axg.c b/drivers/clk/meson/axg.c
index a66b3a5..717c02d 100644
--- a/drivers/clk/meson/axg.c
+++ b/drivers/clk/meson/axg.c
@@ -880,7 +880,7 @@ static int axg_clkc_probe(struct platform_device *pdev)
/* Generic clocks and PLLs */
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
clk_base = devm_ioremap(&pdev->dev, res->start, resource_size(res));
- if (IS_ERR(clk_base)) {
+ if (!clk_base) {
dev_err(&pdev->dev, "Unable to map clk base\n");
return -ENXIO;
}
^ permalink raw reply related
* [PATCH -next] clk: meson-axg: make local symbol axg_gp0_params_table static
From: Wei Yongjun @ 2017-12-28 3:18 UTC (permalink / raw)
To: linux-arm-kernel
Fixes the following sparse warning:
drivers/clk/meson/axg.c:260:25: warning:
symbol 'axg_gp0_params_table' was not declared. Should it be static?
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
---
drivers/clk/meson/axg.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/clk/meson/axg.c b/drivers/clk/meson/axg.c
index a66b3a5..f979cb6 100644
--- a/drivers/clk/meson/axg.c
+++ b/drivers/clk/meson/axg.c
@@ -257,7 +257,7 @@
{ /* sentinel */ },
};
-struct pll_params_table axg_gp0_params_table[] = {
+static struct pll_params_table axg_gp0_params_table[] = {
PLL_PARAM(HHI_GP0_PLL_CNTL, 0x40010250),
PLL_PARAM(HHI_GP0_PLL_CNTL1, 0xc084a000),
PLL_PARAM(HHI_GP0_PLL_CNTL2, 0xb75020be),
^ permalink raw reply related
* [GIT PULL] Allwinner fixes for 4.15
From: Chen-Yu Tsai @ 2017-12-28 3:22 UTC (permalink / raw)
To: linux-arm-kernel
The following changes since commit 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323:
Linux 4.15-rc1 (2017-11-26 16:01:47 -0800)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git tags/sunxi-fixes-for-4.15
for you to fetch changes up to eac6a3639decefcc8eb0941dd3cebe79993670ad:
ARM: dts: sun8i: a711: Reinstate the PMIC compatible (2017-12-19 09:56:57 +0100)
----------------------------------------------------------------
Allwinner fixes for 4.15
First, one fix that adds proper regulator references for the EMAC
external PHYs on A64 boards. The EMAC bindings were developed for 4.13,
but reverted at the last minute. They were finalized and brought back
for 4.15. However in the time between, regulator support for the A64
boards was merged. When EMAC device tree changes were reintroduced,
this was not taken into account.
Second, a patch that adds OF based modalias uevent for RSB slave devices.
This has been missing since the introduction of RSB, and recently with
PMIC regulator support introduced for the A64, has been seen affecting
distributions, which have the all-important PMIC mfd drivers built as
modules, which then don't get loaded.
Other minor cleanups include final conversion of raw indices to CCU
binding macros for sun[4567]i HDMI, cleanup of dummy regulators on the
A64 SOPINE, a SD card detection polarity fix for the Orange Pi Zero
Plus2, and adding a missing compatible for the PMIC on the TBS A711
tablet.
----------------------------------------------------------------
Chen-Yu Tsai (1):
ARM: dts: sunxi: Convert to CCU index macros for HDMI controller
Icenowy Zheng (1):
arm64: allwinner: a64: add Ethernet PHY regulator for several boards
Jagan Teki (1):
arm64: allwinner: a64-sopine: Fix to use dcdc1 regulator instead of vcc3v3
Maxime Ripard (1):
ARM: dts: sun8i: a711: Reinstate the PMIC compatible
Sergey Matyukevich (1):
arm64: dts: orange-pi-zero-plus2: fix sdcard detect
Stefan Br?ns (1):
sunxi-rsb: Include OF based modalias in device uevent
arch/arm/boot/dts/sun4i-a10.dtsi | 4 ++--
arch/arm/boot/dts/sun5i-a10s.dtsi | 4 ++--
arch/arm/boot/dts/sun6i-a31.dtsi | 4 ++--
arch/arm/boot/dts/sun7i-a20.dtsi | 4 ++--
arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts | 1 +
arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 1 +
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts | 1 +
arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts | 3 ++-
arch/arm64/boot/dts/allwinner/sun50i-a64-sopine.dtsi | 11 +----------
.../boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts | 2 +-
drivers/bus/sunxi-rsb.c | 1 +
11 files changed, 16 insertions(+), 20 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20171228/90d78bb6/attachment.sig>
^ permalink raw reply
* [PATCH 0/2] add has-transaction-translator property to usb node
From: yamada.masahiro at socionext.com @ 2017-12-28 4:33 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1514250220-925-1-git-send-email-hayashi.kunihiko@socionext.com>
> This series adds has-transaction-translator property to usb node
> for each SoC which has usb-ehci host controller.
>
> Kunihiko Hayashi (2):
> ARM: dts: uniphier: add has-transaction-translator property to usb
> node for LD4, sLD8 and Pro4
> arm64: dts: uniphier: add has-transaction-translator property to usb
> node for LD11
>
Applied to linux-uniphier.
Thanks.
^ permalink raw reply
* [PATCH] pinctrl/spear/plgpio: Delete two error messages for a failed memory allocation in plgpio_probe()
From: Viresh Kumar @ 2017-12-28 5:26 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <66c3f488-ffdf-e55d-e511-e4af35e670b4@users.sourceforge.net>
On 27-12-17, 22:39, SF Markus Elfring wrote:
> From: Markus Elfring <elfring@users.sourceforge.net>
> Date: Wed, 27 Dec 2017 22:34:28 +0100
>
> Omit extra messages for a memory allocation failure in this function.
>
> This issue was detected by using the Coccinelle software.
>
> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
> ---
> drivers/pinctrl/spear/pinctrl-plgpio.c | 8 ++------
> 1 file changed, 2 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/pinctrl/spear/pinctrl-plgpio.c b/drivers/pinctrl/spear/pinctrl-plgpio.c
> index 6a0ed8ab33b9..d2123e396b29 100644
> --- a/drivers/pinctrl/spear/pinctrl-plgpio.c
> +++ b/drivers/pinctrl/spear/pinctrl-plgpio.c
> @@ -519,10 +519,8 @@ static int plgpio_probe(struct platform_device *pdev)
> int ret, irq;
>
> plgpio = devm_kzalloc(&pdev->dev, sizeof(*plgpio), GFP_KERNEL);
> - if (!plgpio) {
> - dev_err(&pdev->dev, "memory allocation fail\n");
> + if (!plgpio)
> return -ENOMEM;
> - }
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> plgpio->base = devm_ioremap_resource(&pdev->dev, res);
> @@ -544,10 +542,8 @@ static int plgpio_probe(struct platform_device *pdev)
> sizeof(*plgpio->csave_regs) *
> DIV_ROUND_UP(plgpio->chip.ngpio, MAX_GPIO_PER_REG),
> GFP_KERNEL);
> - if (!plgpio->csave_regs) {
> - dev_err(&pdev->dev, "csave registers memory allocation fail\n");
> + if (!plgpio->csave_regs)
> return -ENOMEM;
> - }
> #endif
>
> platform_set_drvdata(pdev, plgpio);
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
--
viresh
^ permalink raw reply
* [PATCH] pinctrl: spear: Delete an error message for a failed memory allocation in spear_pinctrl_probe()
From: Viresh Kumar @ 2017-12-28 5:27 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <3d936763-6a8a-edd3-3bcf-0075c9343e37@users.sourceforge.net>
On 27-12-17, 22:48, SF Markus Elfring wrote:
> From: Markus Elfring <elfring@users.sourceforge.net>
> Date: Wed, 27 Dec 2017 22:44:04 +0100
>
> Omit an extra message for a memory allocation failure in this function.
>
> This issue was detected by using the Coccinelle software.
>
> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
> ---
> drivers/pinctrl/spear/pinctrl-spear.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/pinctrl/spear/pinctrl-spear.c b/drivers/pinctrl/spear/pinctrl-spear.c
> index 4db52ba38d8d..efe79d3f7659 100644
> --- a/drivers/pinctrl/spear/pinctrl-spear.c
> +++ b/drivers/pinctrl/spear/pinctrl-spear.c
> @@ -361,10 +361,8 @@ int spear_pinctrl_probe(struct platform_device *pdev,
> return -ENODEV;
>
> pmx = devm_kzalloc(&pdev->dev, sizeof(*pmx), GFP_KERNEL);
> - if (!pmx) {
> - dev_err(&pdev->dev, "Can't alloc spear_pmx\n");
> + if (!pmx)
> return -ENOMEM;
> - }
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> pmx->vbase = devm_ioremap_resource(&pdev->dev, res);
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
--
viresh
^ permalink raw reply
* [GIT PULL 1/3] Allwinner DT changes for 4.16
From: Chen-Yu Tsai @ 2017-12-28 6:24 UTC (permalink / raw)
To: linux-arm-kernel
Hi Arnd, Olof,
Here are the changes for 4.16 for Allwinner stuff. There are 3 separate
pull requests. There are no dependencies between them.
I might queue up some more patches that have been sitting around the
mailing lists and have seen enough review, let them simmer in -next
for a few days, before sending a second round of pull requests.
Just a heads up. I might not get around to doing it.
ChenYu
The following changes since commit 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323:
Linux 4.15-rc1 (2017-11-26 16:01:47 -0800)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git tags/sunxi-dt-for-4.16
for you to fetch changes up to 2ce3dc66d75fc204cc42bc4ee9c6f612ef4a8949:
ARM: dts: sun8i: h3: nanopi-m1-plus: fix missing ethernet 0 in aliases (2017-12-19 09:54:46 +0100)
----------------------------------------------------------------
Allwinner DT changes for 4.16
A random assortment of improvements.
GPIO device nodes are added for the AXP813/AXP818 PMICs, meaning we can
finally use the GPIO pins on the PMICs. The LDOs on the GPIO pins can
also be properly muxed and guarded.
EMAC Ethernet support is enabled for more H3 boards, and also for the
A83T, following the return of the bindings in 4.15, after a last minute
revert in 4.13. This will make the H3/A83T boards much more useful in
headless applications.
Two new boards are introduced. The Orange Pi R1 is a small board with
two Ethernet interfaces (one EMAC-based and one USB-based) and a WiFi
chip. This board is fully supported, with the exception of TV-out on
the expansion header, which will not be enabled by default. The WiFi
chip (RTL8189FTV) requires an out-of-tree driver. The Libre Computer
Board ALL-H3-CC H3 version is a newcomer to the Allwinner SBC space,
which was mostly represented by a bunch of fruit-Pis. It is mostly
supported, with the exception of HDMI and camera sensor interface,
which have not been implemented yet.
Two minor patches enable the audio codec on the A13 Olinuxino, and
HDMI output on the pcDuino3 Nano.
----------------------------------------------------------------
Chen-Yu Tsai (4):
ARM: dts: sun8i: h3: Add dts file for Libre Computer Board ALL-H3-CC H3 ver.
ARM: dts: sun8i: a83t: Enable Ethernet on two boards
ARM: dts: sun8i: a83t: Add I2S controller device nodes
ARM: dts: sun8i: a83t: Add I2C device nodes and pinmux settings
Corentin LABBE (1):
ARM: dts: sun8i: a83t: add dwmac-sun8i device node
Corentin Labbe (1):
ARM: dts: sun8i-h3: Remove allwinner,leds-active-low for non internal PHY
Emmanuel Vadot (1):
ARM: dts: sunxi: Add codec for A13 Olinuxino
Icenowy Zheng (1):
ARM: dts: sun8i: add support for Orange Pi R1
Krzysztof Adamski (1):
ARM: dts: sun8i: h3: enable USB OTG for NanoPi Neo board
Philipp Rossak (2):
ARM: dts: sun8i: h3: Enable dwmac-sun8i on the Nanopi M1
ARM: dts: sun8i: h3: nanopi-m1-plus: fix missing ethernet 0 in aliases
Quentin Schulz (2):
ARM: dtsi: axp81x: add GPIO DT node
ARM: dtsi: axp81x: set pinmux for GPIO0/1 when used as LDOs
Tuomas Tynkkynen (1):
ARM: dts: sun7i: Enable HDMI on pcDuino3 Nano
arch/arm/boot/dts/Makefile | 2 +
arch/arm/boot/dts/axp81x.dtsi | 20 +++
arch/arm/boot/dts/sun5i-a13-olinuxino.dts | 4 +
arch/arm/boot/dts/sun7i-a20-pcduino3-nano.dts | 25 +++
arch/arm/boot/dts/sun8i-a83t-bananapi-m3.dts | 19 ++
arch/arm/boot/dts/sun8i-a83t-cubietruck-plus.dts | 17 ++
arch/arm/boot/dts/sun8i-a83t.dtsi | 135 ++++++++++++++
arch/arm/boot/dts/sun8i-h2-plus-orangepi-r1.dts | 73 ++++++++
arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts | 1 -
arch/arm/boot/dts/sun8i-h3-libretech-all-h3-cc.dts | 196 +++++++++++++++++++++
arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts | 3 +-
arch/arm/boot/dts/sun8i-h3-nanopi-m1.dts | 11 ++
arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts | 17 ++
arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts | 1 -
14 files changed, 520 insertions(+), 4 deletions(-)
create mode 100644 arch/arm/boot/dts/sun8i-h2-plus-orangepi-r1.dts
create mode 100644 arch/arm/boot/dts/sun8i-h3-libretech-all-h3-cc.dts
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20171228/bfb90de2/attachment-0001.sig>
^ permalink raw reply
* [GIT PULL 2/3] Allwinner DT64 changes for 4.16
From: Chen-Yu Tsai @ 2017-12-28 6:30 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171228062444.GA3883@wens.csie.org>
The following changes since commit 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323:
Linux 4.15-rc1 (2017-11-26 16:01:47 -0800)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git tags/sunxi-dt64-for-4.16
for you to fetch changes up to 36252668c14ca14691d40c3455849ac5d8a60b62:
arm64: dts: allwinner: a64: bananapi-m64: Add LED device node (2017-12-08 10:39:53 +0100)
----------------------------------------------------------------
Allwinner DT64 changes for 4.16
There are two important changes in this round.
The first removes the redundant pinctrl setting for the MMC card detect
GPIO. We are moving to strict pinctrl/GPIO exclusion, i.e. GPIO usage
will block other pin muxing usage, and vice versa. The usage of pinmux
for guarding GPIO pins in the device tree prevents us from doing so.
This is part of an ongoing effort to clean up the existing device trees.
The other important change enables the PMIC on the Orangepi Win. The
PMIC provides power to most of the external onboard peripherals.
Enabling it will allow us to enable Ethernet or WiFi support later on.
The remaining changes in this round enable some peripheral, such as
Ethernet, an external WiFi chip, or LEDs.
----------------------------------------------------------------
Andre Przywara (1):
arm64: dts: allwinner: H5: remove redundant MMC0 card detect pin
Antony Antony (1):
arm64: dts: allwinner: h5: NanoPi NEO Plus2 : add EMAC support
Chen-Yu Tsai (1):
arm64: dts: allwinner: a64: bananapi-m64: Add LED device node
Jagan Teki (2):
arm64: allwinner: a64: Enable AXP803 for Orangepi Win
arm64: dts: a64-olinuxino: Enable RTL8723BS WiFi
Sergey Matyukevich (1):
arm64: dts: orange-pi-zero-plus2: enable AP6212a WiFi/BT combo
.../boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 36 ++++++
.../boot/dts/allwinner/sun50i-a64-olinuxino.dts | 23 ++++
.../boot/dts/allwinner/sun50i-a64-orangepi-win.dts | 125 +++++++++++++++++++--
.../dts/allwinner/sun50i-h5-nanopi-neo-plus2.dts | 19 +++-
.../boot/dts/allwinner/sun50i-h5-nanopi-neo2.dts | 2 +-
.../boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts | 2 +-
.../dts/allwinner/sun50i-h5-orangepi-prime.dts | 2 +-
.../allwinner/sun50i-h5-orangepi-zero-plus2.dts | 34 +++++-
8 files changed, 230 insertions(+), 13 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20171228/edacd10a/attachment.sig>
^ permalink raw reply
* [GIT PULL 3/3] Allwinner arm64 defconfig changes for 4.16
From: Chen-Yu Tsai @ 2017-12-28 6:32 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <20171228062444.GA3883@wens.csie.org>
The following changes since commit 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323:
Linux 4.15-rc1 (2017-11-26 16:01:47 -0800)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git tags/sunxi-config64-for-4.16
for you to fetch changes up to 051db633571b10c7112be00df83d5aee8d0f706e:
arm64: defconfig: enable MUSB HDRC along with Allwinner glue (2017-12-07 09:46:13 +0100)
----------------------------------------------------------------
Allwinner arm64 defconfig changes for 4.16
Enables MUSB driver and the Allwinner glue layer driver by default.
All Allwinner SoCs (excluding the A80) have the Mentor Graphics Inventra
Multi-Point Hi-Speed OTG Controller (MHDRC). Enabling this extends test
coverage to this peripheral.
----------------------------------------------------------------
Jagan Teki (1):
arm64: defconfig: enable MUSB HDRC along with Allwinner glue
arch/arm64/configs/defconfig | 2 ++
1 file changed, 2 insertions(+)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20171228/a519efd5/attachment.sig>
^ permalink raw reply
* [PATCH net-next v9 0/2] add UniPhier AVE ethernet support
From: Kunihiko Hayashi @ 2017-12-28 6:58 UTC (permalink / raw)
To: linux-arm-kernel
This series adds support for Socionext AVE ethernet controller implemented
on UniPhier SoCs. This driver supports RGMII/RMII modes.
v8: https://www.spinics.net/lists/netdev/msg474374.html
The PHY patch included in v1 has already separated in:
http://www.spinics.net/lists/netdev/msg454595.html
Changes since v8:
- move operators at the beginning of the line to the end of the previous line
- dt-bindings: add blank lines before mdio and phy subnodes
Changes since v7:
- dt-bindings: fix mdio subnode description
Changes since v6:
- sort the order of local variables from longest to shortest line
- fix ave_probe() which calls register_netdev() at the end of initialization
- dt-bindings: remove phy node descriptions in mdio node
Changes since v5:
- replace license boilerplate with SPDX Identifier
- remove inline directives and an unused function
Changes since v4:
- fix larger integer warning on AVE_PFMBYTE_MASK0
Changes since v3:
- remove checking dma address and use dma_set_mask() to restirct address
- replace ave_mdio_busywait() with read_poll_timeout()
- replace functions to access to registers with readl/writel() directly
- replace a function to access to macaddr with ave_hw_write_macaddr()
- change return value of ave_dma_map() to error value
- move mdiobus_unregister() from ave_remove() to ave_uninit()
- eliminate else block at the end of ave_dma_map()
- add mask definitions for packet filter
- sort bitmap definitions in descending order
- add error check to some functions
- rename and sort functions to clear sub-categories
- fix error value consistency
- remove unneeded initializers
- change type of constant arrays
Changes since v2:
- replace clk_get() with devm_clk_get()
- replace reset_control_get() with devm_reset_control_get_optional_shared()
- add error return when the error occurs on the above *_get functions
- sort soc data and compatible strings
- remove clearly obvious comments
- modify dt-bindings document consistent with these modifications
Changes since v1:
- add/remove devicetree properties and sub-node
- remove "internal-phy-interrupt" and "desc-bits" property
- add SoC data structures based on compatible strings
- add node operation to apply "mdio" sub-node
- add support for features
- add support for {get,set}_pauseparam and pause frame operations
- add support for ndo_get_stats64 instead of ndo_get_stats
- replace with desiable functions
- replace check for valid phy_mode with phy_interface{_mode}_is_rgmii()
- replace phy attach message with phy_attached_info()
- replace 32bit operation with {upper,lower}_32_bits() on ave_wdesc_addr()
- replace nway_reset and get_link with generic functions
- move operations to proper functions
- move phy_start_aneg() to ndo_open,
and remove unnecessary PHY interrupt operations
See http://www.spinics.net/lists/netdev/msg454590.html
- move irq initialization and descriptor memory allocation to ndo_open
- move initialization of reset and clock and mdiobus to ndo_init
- fix skbuffer operations
- fix skb alignment operations and add Rx buffer adjustment for descriptor
See http://www.spinics.net/lists/netdev/msg456014.html
- add error returns when dma_map_single() failed
- clean up code structures
- clean up wait-loop and wake-queue conditions
- add ave_wdesc_addr() and offset definitions
- add ave_macaddr_init() to clean up mac-address operation
- fix checking whether Tx entry is not enough
- fix supported features of phydev
- add necessary free/disable operations
- add phydev check on ave_{get,set}_wol()
- remove netif_carrier functions, phydev initializer, and Tx budget check
- change obsolate codes
- replace ndev->{base_addr,irq} with the members of ave_private
- rename goto labels and mask definitions, and remove unused codes
Kunihiko Hayashi (2):
dt-bindings: net: add DT bindings for Socionext UniPhier AVE
net: ethernet: socionext: add AVE ethernet driver
.../bindings/net/socionext,uniphier-ave4.txt | 48 +
drivers/net/ethernet/Kconfig | 1 +
drivers/net/ethernet/Makefile | 1 +
drivers/net/ethernet/socionext/Kconfig | 22 +
drivers/net/ethernet/socionext/Makefile | 5 +
drivers/net/ethernet/socionext/sni_ave.c | 1736 ++++++++++++++++++++
6 files changed, 1813 insertions(+)
create mode 100644 Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt
create mode 100644 drivers/net/ethernet/socionext/Kconfig
create mode 100644 drivers/net/ethernet/socionext/Makefile
create mode 100644 drivers/net/ethernet/socionext/sni_ave.c
--
2.7.4
^ permalink raw reply
* [PATCH net-next v9 1/2] dt-bindings: net: add DT bindings for Socionext UniPhier AVE
From: Kunihiko Hayashi @ 2017-12-28 6:58 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1514444292-20643-1-git-send-email-hayashi.kunihiko@socionext.com>
DT bindings for the AVE ethernet controller found on Socionext's
UniPhier platforms.
Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
---
.../bindings/net/socionext,uniphier-ave4.txt | 48 ++++++++++++++++++++++
1 file changed, 48 insertions(+)
create mode 100644 Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt
diff --git a/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt b/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt
new file mode 100644
index 0000000..270ea4e
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt
@@ -0,0 +1,48 @@
+* Socionext AVE ethernet controller
+
+This describes the devicetree bindings for AVE ethernet controller
+implemented on Socionext UniPhier SoCs.
+
+Required properties:
+ - compatible: Should be
+ - "socionext,uniphier-pro4-ave4" : for Pro4 SoC
+ - "socionext,uniphier-pxs2-ave4" : for PXs2 SoC
+ - "socionext,uniphier-ld11-ave4" : for LD11 SoC
+ - "socionext,uniphier-ld20-ave4" : for LD20 SoC
+ - reg: Address where registers are mapped and size of region.
+ - interrupts: Should contain the MAC interrupt.
+ - phy-mode: See ethernet.txt in the same directory. Allow to choose
+ "rgmii", "rmii", or "mii" according to the PHY.
+ - phy-handle: Should point to the external phy device.
+ See ethernet.txt file in the same directory.
+ - clocks: A phandle to the clock for the MAC.
+
+Optional properties:
+ - resets: A phandle to the reset control for the MAC.
+ - local-mac-address: See ethernet.txt in the same directory.
+
+Required subnode:
+ - mdio: A container for child nodes representing phy nodes.
+ See phy.txt in the same directory.
+
+Example:
+
+ ether: ethernet at 65000000 {
+ compatible = "socionext,uniphier-ld20-ave4";
+ reg = <0x65000000 0x8500>;
+ interrupts = <0 66 4>;
+ phy-mode = "rgmii";
+ phy-handle = <ðphy>;
+ clocks = <&sys_clk 6>;
+ resets = <&sys_rst 6>;
+ local-mac-address = [00 00 00 00 00 00];
+
+ mdio {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ethphy: ethphy at 1 {
+ reg = <1>;
+ };
+ };
+ };
--
2.7.4
^ permalink raw reply related
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