[linux-yocto] [PATCH 5/5] arm64: dts: r8a7795-h3ulcb: Add reserved memory regions

2019-10-24 Thread Meng.Li
From: Yusuke Goda 

commit 1d40ccc5723b9b3028829194c422a01cf8afd2a3 from
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas-bsp.git

This patch adds reserved memory regions:
  - Lossy Decompression
   48 MiB : 0x005400 -> 0x0056ff
  - Default CMA area
  400 MiB : 0x005700 -> 0x006fff
  - CMA area for MMP
  256 MiB : 0x007000 -> 0x007fff

Signed-off-by: Yusuke Goda 
[takeshi.kihara.df: fix W=1 dtc unit_address_vs_reg warnings]
Signed-off-by: Takeshi Kihara 
Signed-off-by: Meng Li 
---
 .../arm64/boot/dts/renesas/r8a7795-h3ulcb.dts | 29 ++-
 1 file changed, 28 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts 
b/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts
index 54515eaf0310..b9088a4e0a4a 100644
--- a/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts
+++ b/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts
@@ -2,7 +2,7 @@
 /*
  * Device Tree Source for the H3ULCB (R-Car Starter Kit Premier) board
  *
- * Copyright (C) 2016 Renesas Electronics Corp.
+ * Copyright (C) 2016-2017 Renesas Electronics Corp.
  * Copyright (C) 2016 Cogent Embedded, Inc.
  */
 
@@ -34,6 +34,33 @@
device_type = "memory";
reg = <0x7 0x 0x0 0x4000>;
};
+
+   reserved-memory {
+   #address-cells = <2>;
+   #size-cells = <2>;
+   ranges;
+
+   /* device specific region for Lossy Decompression */
+   lossy_decompress: linux,lossy_decompress@5400 {
+   no-map;
+   reg = <0x 0x5400 0x0 0x0300>;
+   };
+
+   /* global autoconfigured region for contiguous allocations */
+   linux,cma@5700 {
+   compatible = "shared-dma-pool";
+   reusable;
+   reg = <0x 0x5700 0x0 0x1900>;
+   linux,cma-default;
+   };
+
+   /* device specific region for contiguous allocations */
+   mmp_reserved: linux,multimedia@7000 {
+   compatible = "shared-dma-pool";
+   reusable;
+   reg = <0x 0x7000 0x0 0x1000>;
+   };
+   };
 };
 
  {
-- 
2.17.1

-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


[linux-yocto] [PATCH 3/5] pci: pcie-rcar: add regulators support

2019-10-24 Thread Meng.Li
From: Andrey Gusakov 

Add PCIe regulators for KingFisher board.

Signed-off-by: Meng Li 
---
 arch/arm64/boot/dts/renesas/ulcb-kf.dtsi | 47 +
 drivers/pci/controller/pcie-rcar.c   | 64 
 2 files changed, 111 insertions(+)

diff --git a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi 
b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
index 8986a7e6e099..82e463c32a37 100644
--- a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
+++ b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
@@ -50,6 +50,25 @@
startup-delay-us = <7>;
enable-active-high;
};
+
+   mpcie_3v3: regulator-mpcie_3v3 {
+   compatible = "regulator-fixed";
+   regulator-name = "mPCIe 3v3";
+   regulator-min-microvolt = <330>;
+   regulator-max-microvolt = <330>;
+   gpio = <_exp_77 14 GPIO_ACTIVE_HIGH>;
+   enable-active-high;
+   };
+
+   mpcie_1v8: regulator-mpcie_1v8 {
+   compatible = "regulator-fixed";
+   regulator-name = "mPCIe 1v8";
+   regulator-min-microvolt = <180>;
+   regulator-max-microvolt = <180>;
+   gpio = <_exp_77 15 GPIO_ACTIVE_HIGH>;
+   startup-delay-us = <20>;
+   enable-active-high;
+   };
 };
 
  {
@@ -241,6 +260,31 @@
interrupt-controller;
interrupt-parent = <>;
interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
+
+   mpcie_wake {
+   gpio-hog;
+   gpios = <0 GPIO_ACTIVE_HIGH>;
+   output-low;
+   line-name = "mPCIe WAKE#";
+   };
+   mpcie_wdisable {
+   gpio-hog;
+   gpios = <1 GPIO_ACTIVE_HIGH>;
+   output-high;
+   line-name = "mPCIe W_DISABLE";
+   };
+   mpcie_clreq {
+   gpio-hog;
+   gpios = <2 GPIO_ACTIVE_HIGH>;
+   input;
+   line-name = "mPCIe CLKREQ#";
+   };
+   mpcie_ovc {
+   gpio-hog;
+   gpios = <3 GPIO_ACTIVE_HIGH>;
+   input;
+   line-name = "mPCIe OVC";
+   };
};
 };
 
@@ -259,6 +303,9 @@
 
  {
status = "okay";
+
+   pcie3v3-supply = <_3v3>;
+   pcie1v8-supply = <_1v8>;
 };
 
  {
diff --git a/drivers/pci/controller/pcie-rcar.c 
b/drivers/pci/controller/pcie-rcar.c
index f6a669a9af41..8e7e714e33fd 100644
--- a/drivers/pci/controller/pcie-rcar.c
+++ b/drivers/pci/controller/pcie-rcar.c
@@ -14,6 +14,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -151,6 +152,8 @@ struct rcar_pcie {
struct list_headresources;
int root_bus_nr;
struct clk  *bus_clk;
+   struct regulator*pcie3v3; /* 3.3V power supply */
+   struct regulator*pcie1v8; /* 1.8V power supply */
struct  rcar_msi msi;
 };
 
@@ -1120,6 +1123,36 @@ static const struct of_device_id rcar_pcie_of_match[] = {
{},
 };
 
+static int rcar_pcie_set_vpcie(struct rcar_pcie *pcie)
+{
+   struct device *dev = pcie->dev;
+   int err;
+
+   if (!IS_ERR(pcie->pcie3v3)) {
+   err = regulator_enable(pcie->pcie3v3);
+   if (err) {
+   dev_err(dev, "fail to enable vpcie3v3 regulator\n");
+   goto err_out;
+   }
+   }
+
+   if (!IS_ERR(pcie->pcie1v8)) {
+   err = regulator_enable(pcie->pcie1v8);
+   if (err) {
+   dev_err(dev, "fail to enable vpcie1v8 regulator\n");
+   goto err_disable_3v3;
+   }
+   }
+
+   return 0;
+
+err_disable_3v3:
+   if (!IS_ERR(pcie->pcie3v3))
+   regulator_disable(pcie->pcie3v3);
+err_out:
+   return err;
+}
+
 static int rcar_pcie_probe(struct platform_device *pdev)
 {
struct device *dev = >dev;
@@ -1138,6 +1171,31 @@ static int rcar_pcie_probe(struct platform_device *pdev)
pcie->dev = dev;
platform_set_drvdata(pdev, pcie);
 
+   pcie->pcie3v3 = devm_regulator_get_optional(dev, "pcie3v3");
+   if (IS_ERR(pcie->pcie3v3)) {
+   if (PTR_ERR(pcie->pcie3v3) == -EPROBE_DEFER) {
+   pci_free_host_bridge(bridge);
+   return -EPROBE_DEFER;
+   }
+   dev_info(dev, "no pcie3v3 regulator found\n");
+   }
+
+   pcie->pcie1v8 = devm_regulator_get_optional(dev, "pcie1v8");
+   if (IS_ERR(pcie->pcie1v8)) {
+   if (PTR_ERR(pcie->pcie1v8) == -EPROBE_DEFER) {
+   pci_free_host_bridge(bridge);
+   return -EPROBE_DEFER;
+  

[linux-yocto] [PATCH 4/5] arm64: dts: r8a7795: Add CPUIdle support for all CPU core

2019-10-24 Thread Meng.Li
From: Takeshi Kihara 

commit 3c3b44c752c4eef9a29694f4262934445c5f5da9 from
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas-bsp.git

This patch enables CPUIdle (Core shutdown) support for R-Car H3.

Signed-off-by: Takeshi Kihara 
Signed-off-by: Meng Li 
---
 arch/arm64/boot/dts/renesas/r8a7795.dtsi | 32 
 1 file changed, 32 insertions(+)

diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi 
b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
index 95deff66eeb6..ab36cb8a680c 100644
--- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
@@ -155,6 +155,7 @@
power-domains = < R8A7795_PD_CA57_CPU0>;
next-level-cache = <_CA57>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_0>;
dynamic-power-coefficient = <854>;
clocks = < CPG_CORE R8A7795_CLK_Z>;
operating-points-v2 = <_opp>;
@@ -169,6 +170,7 @@
power-domains = < R8A7795_PD_CA57_CPU1>;
next-level-cache = <_CA57>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_0>;
clocks = < CPG_CORE R8A7795_CLK_Z>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <1024>;
@@ -182,6 +184,7 @@
power-domains = < R8A7795_PD_CA57_CPU2>;
next-level-cache = <_CA57>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_0>;
clocks = < CPG_CORE R8A7795_CLK_Z>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <1024>;
@@ -195,6 +198,7 @@
power-domains = < R8A7795_PD_CA57_CPU3>;
next-level-cache = <_CA57>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_0>;
clocks = < CPG_CORE R8A7795_CLK_Z>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <1024>;
@@ -208,6 +212,7 @@
power-domains = < R8A7795_PD_CA53_CPU0>;
next-level-cache = <_CA53>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_1>;
#cooling-cells = <2>;
dynamic-power-coefficient = <277>;
clocks = < CPG_CORE R8A7795_CLK_Z2>;
@@ -222,6 +227,7 @@
power-domains = < R8A7795_PD_CA53_CPU1>;
next-level-cache = <_CA53>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_1>;
clocks = < CPG_CORE R8A7795_CLK_Z2>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <535>;
@@ -234,6 +240,7 @@
power-domains = < R8A7795_PD_CA53_CPU2>;
next-level-cache = <_CA53>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_1>;
clocks = < CPG_CORE R8A7795_CLK_Z2>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <535>;
@@ -246,6 +253,7 @@
power-domains = < R8A7795_PD_CA53_CPU3>;
next-level-cache = <_CA53>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_1>;
clocks = < CPG_CORE R8A7795_CLK_Z2>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <535>;
@@ -264,6 +272,30 @@
cache-unified;
cache-level = <2>;
};
+
+   idle-states {
+   entry-method = "psci";
+
+   CPU_SLEEP_0: cpu-sleep-0 {
+   compatible = "arm,idle-state";
+   arm,psci-suspend-param = <0x001>;
+   local-timer-stop;
+   entry-latency-us = <400>;
+   exit-latency-us = <500>;
+   min-residency-us = <4000>;
+   status = "okay";
+   };
+
+   CPU_SLEEP_1: cpu-sleep-1 {
+   compatible = "arm,idle-state";
+   arm,psci-suspend-param = <0x001>;
+   local-timer-stop;
+   entry-latency-us = <700>;
+   exit-latency-us = <700>;
+   min-residency-us = <5000>;
+   status 

[linux-yocto] [PATCH 2/5] driver: net: can: disable clock when it is in enable status

2019-10-24 Thread Meng.Li
From: Limeng 

If disable a clock when it is already in disable status, there
will be a warning trace generated. So, it is need to confirm
whether what status the clock is in before disable it.

Signed-off-by: Meng Li 
---
 drivers/net/can/rcar/rcar_can.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/can/rcar/rcar_can.c b/drivers/net/can/rcar/rcar_can.c
index bf5adea9c0a3..b136a238f7eb 100644
--- a/drivers/net/can/rcar/rcar_can.c
+++ b/drivers/net/can/rcar/rcar_can.c
@@ -15,6 +15,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 
 #define RCAR_CAN_DRV_NAME  "rcar_can"
@@ -859,7 +860,9 @@ static int __maybe_unused rcar_can_suspend(struct device 
*dev)
writew(ctlr, >regs->ctlr);
priv->can.state = CAN_STATE_SLEEPING;
 
-   clk_disable(priv->clk);
+   if(__clk_is_enabled(priv->clk))
+   clk_disable(priv->clk);
+
return 0;
 }
 
-- 
2.17.1

-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


[linux-yocto] [linux-yocto-dev]: [kernel standard/base]: renesas-rcar: add some patches to improve features on renesas-rcar platform

2019-10-24 Thread Meng.Li
From: Limeng 

Hi Bruce,

I am working on BSP renesas-rcar platform, and intend to merge this BSP 
supporting into yocto community.
Below 5 patches are used to improve gpio, CAN BUS, audio and PCIe features

0001-arch-arm64-dts-Set-gpio5-pin9-as-input-by-default.patch
0002-driver-net-can-disable-clock-when-it-is-in-enable-st.patch
0003-pci-pcie-rcar-add-regulators-support.patch
0004-arm64-dts-r8a7795-Add-CPUIdle-support-for-all-CPU-co.patch
0005-arm64-dts-r8a7795-h3ulcb-Add-reserved-memory-regions.patch

Could you please merge the 5 patches into linux-yocto-dev, branch is 
standard/base?

 arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts |   29 ++-
 arch/arm64/boot/dts/renesas/r8a7795.dtsi   |   32 
 arch/arm64/boot/dts/renesas/ulcb-kf.dtsi   |   56 +
 drivers/net/can/rcar/rcar_can.c|5 +
 drivers/pci/controller/pcie-rcar.c |   64 +
 5 files changed, 184 insertions(+), 2 deletions(-)


thanks,
Limeng
-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


[linux-yocto] [PATCH 1/5] arch: arm64: dts: Set gpio5-pin9 as input by default

2019-10-24 Thread Meng.Li
From: Limeng 

The gpio5-pin9 is used as the interrupt pin of i2c external
gpio chip, so set this pin as input by default.

Signed-off-by: Meng Li 
---
 arch/arm64/boot/dts/renesas/ulcb-kf.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi 
b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
index 202177706cde..8986a7e6e099 100644
--- a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
+++ b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
@@ -205,6 +205,15 @@
};
 };
 
+ {
+   gpio_exp_77_int {
+   gpio-hog;
+   gpios = <9 0>;
+   input;
+   line-name = "gpio-exp-77-int";
+   };
+};
+
  {
i2cswitch4: i2c-switch@71 {
compatible = "nxp,pca9548";
-- 
2.17.1

-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


Re: [linux-yocto] [kernel v5.2/standard/xlnx-soc][PATCH 0/1][V2]patches for xilinx

2019-10-24 Thread Bruce Ashfield
On Thu, Oct 24, 2019 at 6:26 AM  wrote:
>
> From: Quanyang Wang 
>
> Hi all,
>
> V1 ---> V2:
>
> 1. delete the patch "arch: arm64: dts: add overlay dts file" because it is 
> improper
> to add into kernel source.
>
> 2. modify the patch " i2c: cadence: do not clear bus_hold_flag in mrecv" by 
> adding
> a I2C_M_NOSTART flag check according to Shubhrajyoti's suggestion. And test 
> it at
> zcu102 board (read bus 0x8 device 0x65 (ucd10120) register 0xd6)as below:
> Before applying this patch:
> root@xilinx-zynq:~# i2cget -f -y 0x8 0x65 0xd6
> 0xff
> After applying this patch:
> root@xilinx-zynq:~# i2cget -f -y 0x8 0x65 0xd6
> 0x05
>

I'll wait for comments on this patch.

I just wanted to follow up to say that I *think* that I have all of
the reviewed and ack'd patches merged now .. but gmail is doing some
very strange things and hiding replies to some of the threads.

So if you see something that is reviewed/acked and is missing, send it
again with a clear "v2" (or whatever version it is) in the subject.

Bruce

> Thanks,
> Quanyang
>
> Quanyang Wang (1):
>   i2c: cadence: keep bus_hold_flag unless I2C_M_NOSTART is set
>
>  drivers/i2c/busses/i2c-cadence.c | 8 +---
>  1 file changed, 5 insertions(+), 3 deletions(-)
>
> --
> 2.17.1
>


-- 
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


Re: [linux-yocto] [yocto-kernel-cache master/yocto-5.2][PATCH] cgl: Remove non-existing kernel options

2019-10-24 Thread Bruce Ashfield
On Thu, Oct 24, 2019 at 3:49 AM  wrote:
>
> From: He Zhe 
>
> Thess options have been remove from mainline kernel.
>
> CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION removed by
> 4c145dce2601 ("xfrm: make xfrm modes builtin")
>
> CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE removed by
> be6ec88f41ba ("selinux: Remove SECURITY_SELINUX_BOOTPARAM_VALUE")
>

thanks for the commit references .. they make it much easier for me to
quickly grab and merge changes like this.

Cheers,

Bruce

> Signed-off-by: He Zhe 
> ---
>  cgl/features/mip6/mip6.cfg   | 1 -
>  cgl/features/selinux/selinux-dev.cfg | 1 -
>  2 files changed, 2 deletions(-)
>
> diff --git a/cgl/features/mip6/mip6.cfg b/cgl/features/mip6/mip6.cfg
> index 09a11b8d..f9c344b6 100644
> --- a/cgl/features/mip6/mip6.cfg
> +++ b/cgl/features/mip6/mip6.cfg
> @@ -4,6 +4,5 @@ CONFIG_XFRM_MIGRATE=y
>  CONFIG_NET_KEY=m
>  CONFIG_NET_KEY_MIGRATE=y
>  CONFIG_IPV6_MIP6=m
> -CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
>  CONFIG_IPV6_MULTIPLE_TABLES=y
>  CONFIG_IPV6_SUBTREES=y
> diff --git a/cgl/features/selinux/selinux-dev.cfg 
> b/cgl/features/selinux/selinux-dev.cfg
> index 913e5e13..4c77d989 100644
> --- a/cgl/features/selinux/selinux-dev.cfg
> +++ b/cgl/features/selinux/selinux-dev.cfg
> @@ -1,4 +1,3 @@
>  # SPDX-License-Identifier: MIT
>  CONFIG_SECURITY_SELINUX_BOOTPARAM=y
> -CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1
>  CONFIG_SECURITY_SELINUX_DEVELOP=y
> --
> 2.17.1
>


-- 
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


Re: [linux-yocto] [linux-yocto-v5.2]: [kernel standard/base]: renesas-rcar: add some patches to improve features on renesas-rcar platform

2019-10-24 Thread Bruce Ashfield
On Thu, Oct 24, 2019 at 2:00 AM  wrote:
>
> From: Limeng 
>
> Hi Bruce,
>
> I am working on BSP renesas-rcar platform, and intend to merge this BSP 
> supporting into yocto community.
> Below 4 patches are used to improve gpio, CAN BUS, audio and PCIe features
> This first patch is from mainline upstream, the other 3 patches merged into 
> linux-yocto-dev(standard/base) some days ago.
>
> 0001-arm64-dts-renesas-ulcb-kf-Add-support-for-TI-WL1837.patch
> 0002-arch-arm64-dts-Set-gpio5-pin9-as-input-by-default.patch
> 0003-driver-net-can-disable-clock-when-it-is-in-enable-st.patch
> 0004-pci-pcie-rcar-add-regulators-support.patch
>
> Could you please merge the 4 patches into linux-yocto, branch is 
> v5.2/standard/base?

These already seem to be in v5.2/standard/base (Signed off by you and
myself) .. was this sent in error ? or did gmail do something strange
and dig up old email for me and mark them as new ?

Bruce



>
>  arch/arm64/boot/dts/renesas/ulcb-kf.dtsi |  105 
> +++
>  drivers/net/can/rcar/rcar_can.c  |5 +
>  drivers/pci/controller/pcie-rcar.c   |   64 ++
>  3 files changed, 173 insertions(+), 1 deletion(-)
>
>
> thanks,
> Limeng



-- 
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


Re: [linux-yocto] [PATCH 0/2] xilinx-zynq: fix kdump hang issue

2019-10-24 Thread Bruce Ashfield
In message: [linux-yocto][PATCH 0/2] xilinx-zynq: fix kdump hang issue
on 22/10/2019 quanyang.w...@windriver.com wrote:

> From: Quanyang Wang 
> 
> Hi Bruce, Michal,
> 
> There are 2 patches.
> 
> The patch "ARM: zynq: use physical cpuid in zynq_slcr_cpu_stop/start"
> fix the kdump hang issue when not using disable_nonboot_cpus.
> And the patch "xilinx-zynq: Revert "zynq: SMP crashkernel support""
> revert the patch which using disable_nonboot_cpus.

Although one of the two patches applies to v5.2/standard/base, I kept
them both together on the xlnx-soc branch.

Bruce

> 
> Thanks,
> Quanyang
> 
> Quanyang Wang (2):
>   ARM: zynq: use physical cpuid in zynq_slcr_cpu_stop/start
>   xilinx-zynq: Revert "zynq: SMP crashkernel support"
> 
>  arch/arm/kernel/machine_kexec.c | 3 ---
>  arch/arm/mach-zynq/platsmp.c| 6 --
>  2 files changed, 4 insertions(+), 5 deletions(-)
> 
> -- 
> 2.17.1
> 
-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


Re: [linux-yocto] [kernel v5.2/standard/xlnx-soc][PATCH 0/1] [V2] xilinx-zynqmp: fix calltrace

2019-10-24 Thread Bruce Ashfield
In message: [linux-yocto][kernel v5.2/standard/xlnx-soc][PATCH 0/1] [V2] 
xilinx-zynqmp: fix calltrace
on 23/10/2019 quanyang.w...@windriver.com wrote:

> From: Quanyang Wang 
> 
> Hi Bruce,
> 
> This patch is a V2 patch but no change against V1. Just add some comments
> in the temporary section of the patch.

Thanks, the temporary section comments were very useful.

This is now merged.

Bruce

> 
> Would you please help merge these patches to linux-yocto 
> v5.2/standard/xlnx-soc branch?
> 
> Quanyang Wang (1):
>   dma: xilinx: dpdma: alloc xilinx_dpdma_tx_desc using GFP_ATOMIC
> 
>  drivers/dma/xilinx/xilinx_dpdma.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> -- 
> 2.17.1
> 
-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


Re: [linux-yocto] [PATCH 1/1] xilinx-zyqn: Move disable_nonboot_cpus() in front of local_irq_disable()

2019-10-24 Thread Quanyang Wang

Hi Michal,

On 10/23/19 6:55 PM, Michal Simek wrote:

On 21. 10. 19 14:13, qwang2 wrote:

Hi Michal,

On 2019/10/21 下午6:45, Michal Simek wrote:

On 21. 10. 19 10:45, Quanyang Wang wrote:

Hi Michal,

On 10/21/19 4:16 PM, Michal Simek wrote:

On 21. 10. 19 7:50, quanyang.w...@windriver.com wrote:

From: Quanyang Wang 

When run kdump with enabling CONFIG_DEBUG_PREEMPT, there is a
calltrace
as below:

BUG: using smp_processor_id() in preemptible [] code: sh/303
caller is machine_crash_shutdown+0x2c/0xe8
CPU: 0 PID: 303 Comm: sh Kdump: loaded Not tainted
5.2.20-yocto-standard #1
Hardware name: Xilinx Zynq Platform
[<80112ff4>] (unwind_backtrace) from [<8010ca4c>]
(show_stack+0x18/0x1c)
[<8010ca4c>] (show_stack) from [<809b000c>] (dump_stack+0x70/0x8c)
[<809b000c>] (dump_stack) from [<80549a14>]
(debug_smp_processor_id+0xd4/0x118)
[<80549a14>] (debug_smp_processor_id) from [<80111428>]
(machine_crash_shutdown+0x2c/0xe8)
[<80111428>] (machine_crash_shutdown) from [<801afe24>]
(__crash_kexec+0x70/0xd0)
[<801afe24>] (__crash_kexec) from [<801259b4>] (panic+0x110/0x324)
[<801259b4>] (panic) from [<805f7018>] (sysrq_handle_crash+0x18/0x1c)
[<805f7018>] (sysrq_handle_crash) from [<805f7584>]
(__handle_sysrq+0x9c/0x14c)
[<805f7584>] (__handle_sysrq) from [<805f79e8>]
(write_sysrq_trigger+0x5c/0x6c)
[<805f79e8>] (write_sysrq_trigger) from [<8031e850>]
(proc_reg_write+0x78/0x8c)
[<8031e850>] (proc_reg_write) from [<802b1b28>] (vfs_write+0xc0/0x154)
[<802b1b28>] (vfs_write) from [<802b2a64>] (ksys_write+0x6c/0xd4)
[<802b2a64>] (ksys_write) from [<80101000>]
(ret_fast_syscall+0x0/0x54)
Exception stack(0xba157fa8 to 0xba157ff0)
7fa0: 0002 005ab930 0001 005ab930 0002 
7fc0: 0002 005ab930 76fa2290 0004 76f3d124 76f3cc8c 

7fe0: 0004 7edec940 76edbfff 76e67d16

This is because that the function disable_nonboot_cpus is called in
order to make sure that the crash kernel runs in the boot CPU(cpu0).
And it will enable local irq by calling as below:

disable_nonboot_cpus
    -> freeze_secondary_cpus
     -> _cpu_down
  -> percpu_down_write
   -> rcu_sync_enter
    -> spin_unlock_irq(>rss_lock)
     -> local_irq_enable()

Then the functions including smp_processor_id() behind
disable_nonboot_cpus
will run at the irq-enabled context, and this will trigger the
calltrace.

So move disable_nonboot_cpus() in front of local_irq_disable() to
avoid
it since disable_nonboot_cpus() not need run at an atomic context.

Signed-off-by: Quanyang Wang 
---
    arch/arm/kernel/machine_kexec.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/arm/kernel/machine_kexec.c
b/arch/arm/kernel/machine_kexec.c
index 654f2b1f9ac0..83d2025a4ab1 100644
--- a/arch/arm/kernel/machine_kexec.c
+++ b/arch/arm/kernel/machine_kexec.c
@@ -145,9 +145,10 @@ static void machine_kexec_mask_interrupts(void)
      void machine_crash_shutdown(struct pt_regs *regs)
    {
-    local_irq_disable();
    disable_nonboot_cpus();
    +    local_irq_disable();
+
    crash_smp_send_stop();
      crash_save_cpu(regs, smp_processor_id());


ok. Can you please check before this if your usecases work without
disable_nonboot_cpus(). This patch was done pretty long time ago where
there was an issue with kexec. Long time ago I was talking to arm-soc
maintainers about this and they told me that mainline code should work
fine without any need to call disable_nonboot_cpus().
It means if kexec is working fine we can revert origin patch and use
what mainline is using.

It seems that the issue is still there. When crash at cpu1 and crash
kernel runs at cpu1,

it will hang, the log is as below:

root@xilinx-zynq:~# sh 1.sh
syscall kexec_file_load not available.
sysrq: Trigger a crash
Kernel panic - not syncing: sysrq triggered crash
CPU: 1 PID: 308 Comm: sh Kdump: loaded Not tainted
5.2.20-yocto-standard #4
Hardware name: Xilinx Zynq Platform
[<80112eb0>] (unwind_backtrace) from [<8010cc04>] (show_stack+0x18/0x1c)
[<8010cc04>] (show_stack) from [<8094f8f4>] (dump_stack+0x70/0x8c)
[<8094f8f4>] (dump_stack) from [<801256f4>] (panic+0xf8/0x320)
[<801256f4>] (panic) from [<805dbeb0>] (sysrq_handle_crash+0x18/0x1c)
[<805dbeb0>] (sysrq_handle_crash) from [<805dc3b8>]
(__handle_sysrq+0x9c/0x148)
[<805dc3b8>] (__handle_sysrq) from [<805dc804>]
(write_sysrq_trigger+0x5c/0x6c)
[<805dc804>] (write_sysrq_trigger) from [<8031b040>]
(proc_reg_write+0x78/0x8c)
[<8031b040>] (proc_reg_write) from [<802aeec4>] (vfs_write+0xc0/0x154)
[<802aeec4>] (vfs_write) from [<802afd18>] (ksys_write+0x64/0xc8)
[<802afd18>] (ksys_write) from [<80101000>] (ret_fast_syscall+0x0/0x54)
Exception stack(0xb905bfa8 to 0xb905bff0)
bfa0:   0002 0059afa0 0001 0059afa0 0002

bfc0: 0002 0059afa0 76f8e290 0004 76f29124 76f28c8c 

bfe0: 0004 7eb858c0 76ec7fff 76e53d16
CPU 0 will stop doing anything useful since another CPU has crashed
Loading crashdump kernel...
Bye!

[linux-yocto] [PATCH 1/1] i2c: cadence: keep bus_hold_flag unless I2C_M_NOSTART is set

2019-10-24 Thread quanyang.wang
From: Quanyang Wang 

When using i2c_smbus_read_byte_data to read one byte from a
slave device, because of the commit d358def70688
("i2c: cadence: Fix the hold bit setting"), the transaction becomes:

S Addr Wr [A] Comm [A] P S Addr Rd [A] [Data] NA P
   ^
CR_HOLD bit as 0

This will result that the read operation fails and will read "0xff" from
the slave device. In the SMBus protocol, it stipulates that it must follow
that command with a repeated START condition as below:

S Addr Wr [A] Comm [A] Sr Addr Rd [A] [Data] NA P

So add a check if I2C_M_NOSTART is set in flags. If set, clear the
CR_HOLD bit, or else keep CR_HOLD bit to be 1 to make sure that
the read operation begins with a repeated START.

Signed-off-by: Quanyang Wang 
---
According to Shubhrajyoti's suggestion, add a I2C_M_NOSTART flag
check in msg->flags to avoid breaking the intended behaviour of
the code.

 drivers/i2c/busses/i2c-cadence.c | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/i2c/busses/i2c-cadence.c b/drivers/i2c/busses/i2c-cadence.c
index 6b011931e090..22c1590c0e7a 100644
--- a/drivers/i2c/busses/i2c-cadence.c
+++ b/drivers/i2c/busses/i2c-cadence.c
@@ -624,10 +624,12 @@ static void cdns_i2c_mrecv(struct cdns_i2c *id)
 * Check for the message size against FIFO depth and set the
 * 'hold bus' bit if it is greater than FIFO depth.
 */
-   if ((id->recv_count > CDNS_I2C_FIFO_DEPTH)  || id->bus_hold_flag)
+   if ((id->recv_count > CDNS_I2C_FIFO_DEPTH)  || id->bus_hold_flag) {
ctrl_reg |= CDNS_I2C_CR_HOLD;
-   else
-   ctrl_reg = ctrl_reg & ~CDNS_I2C_CR_HOLD;
+   } else {
+   if (id->p_msg->flags & I2C_M_NOSTART)
+   ctrl_reg = ctrl_reg & ~CDNS_I2C_CR_HOLD;
+   }
 
cdns_i2c_writereg(ctrl_reg, CDNS_I2C_CR_OFFSET);
 
-- 
2.17.1

-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


[linux-yocto] [kernel v5.2/standard/xlnx-soc][PATCH 0/1][V2]patches for xilinx

2019-10-24 Thread quanyang.wang
From: Quanyang Wang 

Hi all,

V1 ---> V2:

1. delete the patch "arch: arm64: dts: add overlay dts file" because it is 
improper
to add into kernel source.

2. modify the patch " i2c: cadence: do not clear bus_hold_flag in mrecv" by 
adding
a I2C_M_NOSTART flag check according to Shubhrajyoti's suggestion. And test it 
at
zcu102 board (read bus 0x8 device 0x65 (ucd10120) register 0xd6)as below:
Before applying this patch:
root@xilinx-zynq:~# i2cget -f -y 0x8 0x65 0xd6
0xff
After applying this patch:
root@xilinx-zynq:~# i2cget -f -y 0x8 0x65 0xd6
0x05

Thanks,
Quanyang

Quanyang Wang (1):
  i2c: cadence: keep bus_hold_flag unless I2C_M_NOSTART is set

 drivers/i2c/busses/i2c-cadence.c | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

-- 
2.17.1

-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


[linux-yocto] [yocto-kernel-cache master/yocto-5.2][PATCH] cgl: Remove non-existing kernel options

2019-10-24 Thread zhe.he
From: He Zhe 

Thess options have been remove from mainline kernel.

CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION removed by
4c145dce2601 ("xfrm: make xfrm modes builtin")

CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE removed by
be6ec88f41ba ("selinux: Remove SECURITY_SELINUX_BOOTPARAM_VALUE")

Signed-off-by: He Zhe 
---
 cgl/features/mip6/mip6.cfg   | 1 -
 cgl/features/selinux/selinux-dev.cfg | 1 -
 2 files changed, 2 deletions(-)

diff --git a/cgl/features/mip6/mip6.cfg b/cgl/features/mip6/mip6.cfg
index 09a11b8d..f9c344b6 100644
--- a/cgl/features/mip6/mip6.cfg
+++ b/cgl/features/mip6/mip6.cfg
@@ -4,6 +4,5 @@ CONFIG_XFRM_MIGRATE=y
 CONFIG_NET_KEY=m
 CONFIG_NET_KEY_MIGRATE=y
 CONFIG_IPV6_MIP6=m
-CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
 CONFIG_IPV6_MULTIPLE_TABLES=y
 CONFIG_IPV6_SUBTREES=y
diff --git a/cgl/features/selinux/selinux-dev.cfg 
b/cgl/features/selinux/selinux-dev.cfg
index 913e5e13..4c77d989 100644
--- a/cgl/features/selinux/selinux-dev.cfg
+++ b/cgl/features/selinux/selinux-dev.cfg
@@ -1,4 +1,3 @@
 # SPDX-License-Identifier: MIT
 CONFIG_SECURITY_SELINUX_BOOTPARAM=y
-CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1
 CONFIG_SECURITY_SELINUX_DEVELOP=y
-- 
2.17.1

-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


[linux-yocto] [PATCH 3/5] pci: pcie-rcar: add regulators support

2019-10-24 Thread Meng.Li
From: Andrey Gusakov 

Add PCIe regulators for KingFisher board.

Signed-off-by: Meng Li 
---
 arch/arm64/boot/dts/renesas/ulcb-kf.dtsi | 47 +
 drivers/pci/controller/pcie-rcar.c   | 64 
 2 files changed, 111 insertions(+)

diff --git a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi 
b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
index 8986a7e6e099..82e463c32a37 100644
--- a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
+++ b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
@@ -50,6 +50,25 @@
startup-delay-us = <7>;
enable-active-high;
};
+
+   mpcie_3v3: regulator-mpcie_3v3 {
+   compatible = "regulator-fixed";
+   regulator-name = "mPCIe 3v3";
+   regulator-min-microvolt = <330>;
+   regulator-max-microvolt = <330>;
+   gpio = <_exp_77 14 GPIO_ACTIVE_HIGH>;
+   enable-active-high;
+   };
+
+   mpcie_1v8: regulator-mpcie_1v8 {
+   compatible = "regulator-fixed";
+   regulator-name = "mPCIe 1v8";
+   regulator-min-microvolt = <180>;
+   regulator-max-microvolt = <180>;
+   gpio = <_exp_77 15 GPIO_ACTIVE_HIGH>;
+   startup-delay-us = <20>;
+   enable-active-high;
+   };
 };
 
  {
@@ -241,6 +260,31 @@
interrupt-controller;
interrupt-parent = <>;
interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
+
+   mpcie_wake {
+   gpio-hog;
+   gpios = <0 GPIO_ACTIVE_HIGH>;
+   output-low;
+   line-name = "mPCIe WAKE#";
+   };
+   mpcie_wdisable {
+   gpio-hog;
+   gpios = <1 GPIO_ACTIVE_HIGH>;
+   output-high;
+   line-name = "mPCIe W_DISABLE";
+   };
+   mpcie_clreq {
+   gpio-hog;
+   gpios = <2 GPIO_ACTIVE_HIGH>;
+   input;
+   line-name = "mPCIe CLKREQ#";
+   };
+   mpcie_ovc {
+   gpio-hog;
+   gpios = <3 GPIO_ACTIVE_HIGH>;
+   input;
+   line-name = "mPCIe OVC";
+   };
};
 };
 
@@ -259,6 +303,9 @@
 
  {
status = "okay";
+
+   pcie3v3-supply = <_3v3>;
+   pcie1v8-supply = <_1v8>;
 };
 
  {
diff --git a/drivers/pci/controller/pcie-rcar.c 
b/drivers/pci/controller/pcie-rcar.c
index f6a669a9af41..8e7e714e33fd 100644
--- a/drivers/pci/controller/pcie-rcar.c
+++ b/drivers/pci/controller/pcie-rcar.c
@@ -14,6 +14,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -151,6 +152,8 @@ struct rcar_pcie {
struct list_headresources;
int root_bus_nr;
struct clk  *bus_clk;
+   struct regulator*pcie3v3; /* 3.3V power supply */
+   struct regulator*pcie1v8; /* 1.8V power supply */
struct  rcar_msi msi;
 };
 
@@ -1120,6 +1123,36 @@ static const struct of_device_id rcar_pcie_of_match[] = {
{},
 };
 
+static int rcar_pcie_set_vpcie(struct rcar_pcie *pcie)
+{
+   struct device *dev = pcie->dev;
+   int err;
+
+   if (!IS_ERR(pcie->pcie3v3)) {
+   err = regulator_enable(pcie->pcie3v3);
+   if (err) {
+   dev_err(dev, "fail to enable vpcie3v3 regulator\n");
+   goto err_out;
+   }
+   }
+
+   if (!IS_ERR(pcie->pcie1v8)) {
+   err = regulator_enable(pcie->pcie1v8);
+   if (err) {
+   dev_err(dev, "fail to enable vpcie1v8 regulator\n");
+   goto err_disable_3v3;
+   }
+   }
+
+   return 0;
+
+err_disable_3v3:
+   if (!IS_ERR(pcie->pcie3v3))
+   regulator_disable(pcie->pcie3v3);
+err_out:
+   return err;
+}
+
 static int rcar_pcie_probe(struct platform_device *pdev)
 {
struct device *dev = >dev;
@@ -1138,6 +1171,31 @@ static int rcar_pcie_probe(struct platform_device *pdev)
pcie->dev = dev;
platform_set_drvdata(pdev, pcie);
 
+   pcie->pcie3v3 = devm_regulator_get_optional(dev, "pcie3v3");
+   if (IS_ERR(pcie->pcie3v3)) {
+   if (PTR_ERR(pcie->pcie3v3) == -EPROBE_DEFER) {
+   pci_free_host_bridge(bridge);
+   return -EPROBE_DEFER;
+   }
+   dev_info(dev, "no pcie3v3 regulator found\n");
+   }
+
+   pcie->pcie1v8 = devm_regulator_get_optional(dev, "pcie1v8");
+   if (IS_ERR(pcie->pcie1v8)) {
+   if (PTR_ERR(pcie->pcie1v8) == -EPROBE_DEFER) {
+   pci_free_host_bridge(bridge);
+   return -EPROBE_DEFER;
+  

[linux-yocto] [PATCH 5/5] arm64: dts: r8a7795-h3ulcb: Add reserved memory regions

2019-10-24 Thread Meng.Li
From: Yusuke Goda 

commit 1d40ccc5723b9b3028829194c422a01cf8afd2a3 from
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas-bsp.git

This patch adds reserved memory regions:
  - Lossy Decompression
   48 MiB : 0x005400 -> 0x0056ff
  - Default CMA area
  400 MiB : 0x005700 -> 0x006fff
  - CMA area for MMP
  256 MiB : 0x007000 -> 0x007fff

Signed-off-by: Yusuke Goda 
[takeshi.kihara.df: fix W=1 dtc unit_address_vs_reg warnings]
Signed-off-by: Takeshi Kihara 
Signed-off-by: Meng Li 
---
 .../arm64/boot/dts/renesas/r8a7795-h3ulcb.dts | 29 ++-
 1 file changed, 28 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts 
b/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts
index 54515eaf0310..b9088a4e0a4a 100644
--- a/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts
+++ b/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts
@@ -2,7 +2,7 @@
 /*
  * Device Tree Source for the H3ULCB (R-Car Starter Kit Premier) board
  *
- * Copyright (C) 2016 Renesas Electronics Corp.
+ * Copyright (C) 2016-2017 Renesas Electronics Corp.
  * Copyright (C) 2016 Cogent Embedded, Inc.
  */
 
@@ -34,6 +34,33 @@
device_type = "memory";
reg = <0x7 0x 0x0 0x4000>;
};
+
+   reserved-memory {
+   #address-cells = <2>;
+   #size-cells = <2>;
+   ranges;
+
+   /* device specific region for Lossy Decompression */
+   lossy_decompress: linux,lossy_decompress@5400 {
+   no-map;
+   reg = <0x 0x5400 0x0 0x0300>;
+   };
+
+   /* global autoconfigured region for contiguous allocations */
+   linux,cma@5700 {
+   compatible = "shared-dma-pool";
+   reusable;
+   reg = <0x 0x5700 0x0 0x1900>;
+   linux,cma-default;
+   };
+
+   /* device specific region for contiguous allocations */
+   mmp_reserved: linux,multimedia@7000 {
+   compatible = "shared-dma-pool";
+   reusable;
+   reg = <0x 0x7000 0x0 0x1000>;
+   };
+   };
 };
 
  {
-- 
2.17.1

-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


[linux-yocto] [PATCH 4/5] arm64: dts: r8a7795: Add CPUIdle support for all CPU core

2019-10-24 Thread Meng.Li
From: Takeshi Kihara 

commit 3c3b44c752c4eef9a29694f4262934445c5f5da9 from
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas-bsp.git

This patch enables CPUIdle (Core shutdown) support for R-Car H3.

Signed-off-by: Takeshi Kihara 
Signed-off-by: Meng Li 
---
 arch/arm64/boot/dts/renesas/r8a7795.dtsi | 32 
 1 file changed, 32 insertions(+)

diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi 
b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
index 95deff66eeb6..ab36cb8a680c 100644
--- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
@@ -155,6 +155,7 @@
power-domains = < R8A7795_PD_CA57_CPU0>;
next-level-cache = <_CA57>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_0>;
dynamic-power-coefficient = <854>;
clocks = < CPG_CORE R8A7795_CLK_Z>;
operating-points-v2 = <_opp>;
@@ -169,6 +170,7 @@
power-domains = < R8A7795_PD_CA57_CPU1>;
next-level-cache = <_CA57>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_0>;
clocks = < CPG_CORE R8A7795_CLK_Z>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <1024>;
@@ -182,6 +184,7 @@
power-domains = < R8A7795_PD_CA57_CPU2>;
next-level-cache = <_CA57>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_0>;
clocks = < CPG_CORE R8A7795_CLK_Z>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <1024>;
@@ -195,6 +198,7 @@
power-domains = < R8A7795_PD_CA57_CPU3>;
next-level-cache = <_CA57>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_0>;
clocks = < CPG_CORE R8A7795_CLK_Z>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <1024>;
@@ -208,6 +212,7 @@
power-domains = < R8A7795_PD_CA53_CPU0>;
next-level-cache = <_CA53>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_1>;
#cooling-cells = <2>;
dynamic-power-coefficient = <277>;
clocks = < CPG_CORE R8A7795_CLK_Z2>;
@@ -222,6 +227,7 @@
power-domains = < R8A7795_PD_CA53_CPU1>;
next-level-cache = <_CA53>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_1>;
clocks = < CPG_CORE R8A7795_CLK_Z2>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <535>;
@@ -234,6 +240,7 @@
power-domains = < R8A7795_PD_CA53_CPU2>;
next-level-cache = <_CA53>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_1>;
clocks = < CPG_CORE R8A7795_CLK_Z2>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <535>;
@@ -246,6 +253,7 @@
power-domains = < R8A7795_PD_CA53_CPU3>;
next-level-cache = <_CA53>;
enable-method = "psci";
+   cpu-idle-states = <_SLEEP_1>;
clocks = < CPG_CORE R8A7795_CLK_Z2>;
operating-points-v2 = <_opp>;
capacity-dmips-mhz = <535>;
@@ -264,6 +272,30 @@
cache-unified;
cache-level = <2>;
};
+
+   idle-states {
+   entry-method = "psci";
+
+   CPU_SLEEP_0: cpu-sleep-0 {
+   compatible = "arm,idle-state";
+   arm,psci-suspend-param = <0x001>;
+   local-timer-stop;
+   entry-latency-us = <400>;
+   exit-latency-us = <500>;
+   min-residency-us = <4000>;
+   status = "okay";
+   };
+
+   CPU_SLEEP_1: cpu-sleep-1 {
+   compatible = "arm,idle-state";
+   arm,psci-suspend-param = <0x001>;
+   local-timer-stop;
+   entry-latency-us = <700>;
+   exit-latency-us = <700>;
+   min-residency-us = <5000>;
+   status 

[linux-yocto] [PATCH 1/5] arch: arm64: dts: Set gpio5-pin9 as input by default

2019-10-24 Thread Meng.Li
From: Limeng 

The gpio5-pin9 is used as the interrupt pin of i2c external
gpio chip, so set this pin as input by default.

Signed-off-by: Meng Li 
---
 arch/arm64/boot/dts/renesas/ulcb-kf.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi 
b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
index 202177706cde..8986a7e6e099 100644
--- a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
+++ b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
@@ -205,6 +205,15 @@
};
 };
 
+ {
+   gpio_exp_77_int {
+   gpio-hog;
+   gpios = <9 0>;
+   input;
+   line-name = "gpio-exp-77-int";
+   };
+};
+
  {
i2cswitch4: i2c-switch@71 {
compatible = "nxp,pca9548";
-- 
2.17.1

-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


[linux-yocto] [linux-yocto-v5.2]: [kernel standard/base]: renesas-rcar: add some patches to improve features on renesas-rcar platform

2019-10-24 Thread Meng.Li
From: Limeng 

Hi Bruce,

I am working on BSP renesas-rcar platform, and intend to merge this BSP 
supporting into yocto community.
Below 4 patches are used to improve gpio, CAN BUS, audio and PCIe features
This first patch is from mainline upstream, the other 3 patches merged into 
linux-yocto-dev(standard/base) some days ago.

0001-arm64-dts-renesas-ulcb-kf-Add-support-for-TI-WL1837.patch
0002-arch-arm64-dts-Set-gpio5-pin9-as-input-by-default.patch
0003-driver-net-can-disable-clock-when-it-is-in-enable-st.patch
0004-pci-pcie-rcar-add-regulators-support.patch

Could you please merge the 4 patches into linux-yocto, branch is 
v5.2/standard/base?

 arch/arm64/boot/dts/renesas/ulcb-kf.dtsi |  105 +++
 drivers/net/can/rcar/rcar_can.c  |5 +
 drivers/pci/controller/pcie-rcar.c   |   64 ++
 3 files changed, 173 insertions(+), 1 deletion(-)


thanks,
Limeng
-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto


[linux-yocto] [PATCH 2/5] driver: net: can: disable clock when it is in enable status

2019-10-24 Thread Meng.Li
From: Limeng 

If disable a clock when it is already in disable status, there
will be a warning trace generated. So, it is need to confirm
whether what status the clock is in before disable it.

Signed-off-by: Meng Li 
---
 drivers/net/can/rcar/rcar_can.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/can/rcar/rcar_can.c b/drivers/net/can/rcar/rcar_can.c
index bf5adea9c0a3..b136a238f7eb 100644
--- a/drivers/net/can/rcar/rcar_can.c
+++ b/drivers/net/can/rcar/rcar_can.c
@@ -15,6 +15,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 
 #define RCAR_CAN_DRV_NAME  "rcar_can"
@@ -859,7 +860,9 @@ static int __maybe_unused rcar_can_suspend(struct device 
*dev)
writew(ctlr, >regs->ctlr);
priv->can.state = CAN_STATE_SLEEPING;
 
-   clk_disable(priv->clk);
+   if(__clk_is_enabled(priv->clk))
+   clk_disable(priv->clk);
+
return 0;
 }
 
-- 
2.17.1

-- 
___
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto