linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ARM: DRA7: hwmod: add entry for RTCSS
@ 2014-05-09 12:37 Sekhar Nori
  2014-06-13 19:09 ` Paul Walmsley
  2014-07-03 10:22 ` Rajendra Nayak
  0 siblings, 2 replies; 24+ messages in thread
From: Sekhar Nori @ 2014-05-09 12:37 UTC (permalink / raw)
  To: linux-arm-kernel

From: Lokesh Vutla <lokeshvutla@ti.com>

RTCSS on DRA7 provides a precise real-time clock.
Add hwmod entry for this IP.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
---
Applies to linux-next of 5th May.

 arch/arm/mach-omap2/omap_hwmod_7xx_data.c |   41 +++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
index 810c205..402ffc7 100644
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -1249,6 +1249,38 @@ static struct omap_hwmod dra7xx_qspi_hwmod = {
 };
 
 /*
+ * 'rtcss' class
+ *
+ */
+static struct omap_hwmod_class_sysconfig dra7xx_rtcss_sysc = {
+	.sysc_offs	= 0x0078,
+	.sysc_flags	= SYSC_HAS_SIDLEMODE,
+	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
+			   SIDLE_SMART_WKUP),
+	.sysc_fields	= &omap_hwmod_sysc_type3,
+};
+
+static struct omap_hwmod_class dra7xx_rtcss_hwmod_class = {
+	.name	= "rtcss",
+	.sysc	= &dra7xx_rtcss_sysc,
+};
+
+/* rtcss */
+static struct omap_hwmod dra7xx_rtcss_hwmod = {
+	.name		= "rtcss",
+	.class		= &dra7xx_rtcss_hwmod_class,
+	.clkdm_name	= "rtc_clkdm",
+	.main_clk	= "sys_32k_ck",
+	.prcm = {
+		.omap4 = {
+			.clkctrl_offs = DRA7XX_CM_RTC_RTCSS_CLKCTRL_OFFSET,
+			.context_offs = DRA7XX_RM_RTC_RTCSS_CONTEXT_OFFSET,
+			.modulemode   = MODULEMODE_SWCTRL,
+		},
+	},
+};
+
+/*
  * 'sata' class
  *
  */
@@ -2354,6 +2386,14 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__qspi = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
+/* l4_per3 -> rtcss */
+static struct omap_hwmod_ocp_if dra7xx_l4_per3__rtcss = {
+	.master		= &dra7xx_l4_per3_hwmod,
+	.slave		= &dra7xx_rtcss_hwmod,
+	.clk		= "l4_root_clk_div",
+	.user		= OCP_USER_MPU | OCP_USER_SDMA,
+};
+
 static struct omap_hwmod_addr_space dra7xx_sata_addrs[] = {
 	{
 		.name		= "sysc",
@@ -2683,6 +2723,7 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l4_cfg__mpu,
 	&dra7xx_l4_cfg__ocp2scp1,
 	&dra7xx_l3_main_1__qspi,
+	&dra7xx_l4_per3__rtcss,
 	&dra7xx_l4_cfg__sata,
 	&dra7xx_l4_cfg__smartreflex_core,
 	&dra7xx_l4_cfg__smartreflex_mpu,
-- 
1.7.10.1

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH] ARM: DRA7: hwmod: add entry for RTCSS
  2014-05-09 12:37 [PATCH] ARM: DRA7: hwmod: add entry for RTCSS Sekhar Nori
@ 2014-06-13 19:09 ` Paul Walmsley
  2014-06-15  3:47   ` Paul Walmsley
  2014-07-03 10:22 ` Rajendra Nayak
  1 sibling, 1 reply; 24+ messages in thread
From: Paul Walmsley @ 2014-06-13 19:09 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Sekhar,

On Fri, 9 May 2014, Sekhar Nori wrote:

> From: Lokesh Vutla <lokeshvutla@ti.com>
> 
> RTCSS on DRA7 provides a precise real-time clock.
> Add hwmod entry for this IP.
> 
> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> Signed-off-by: Sekhar Nori <nsekhar@ti.com>

Sorry for the delay on this patch.  Have been corresponding with TI to 
figure out what to do about DRA7xx/AM43xx patches.  I don't have boards or 
public documentation for these devices, so it's impossible for me to 
meaningfully review the patches.  Looks like boards and/or public docs 
won't be coming any time soon.

So for my part, here's what I'll need to merge any hwmod patches that
involve AM437x or DRA7xx:

1. A Reviewed-by: from one of the following folks (which should come from
a different person than who is submitting the patches):

Roger Quadros
Nishanth Menon
Rajendra Nayak
Kevin Hilman
Tony Lindgren

2. A Tested-by: from one of the following folks (who can be the same as 
the person who is the same as the person who is submitting the patches):

Nishanth Menon
Rajendra Nayak
Kevin Hilman 
Tony Lindgren


Once these are in place, I'd be happy to queue it for 3.16.



- Paul

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH] ARM: DRA7: hwmod: add entry for RTCSS
  2014-06-13 19:09 ` Paul Walmsley
@ 2014-06-15  3:47   ` Paul Walmsley
  0 siblings, 0 replies; 24+ messages in thread
From: Paul Walmsley @ 2014-06-15  3:47 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, 13 Jun 2014, Paul Walmsley wrote:

> On Fri, 9 May 2014, Sekhar Nori wrote:
> 
> > From: Lokesh Vutla <lokeshvutla@ti.com>
> > 
> > RTCSS on DRA7 provides a precise real-time clock.
> > Add hwmod entry for this IP.
> > 
> > Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> > Signed-off-by: Sekhar Nori <nsekhar@ti.com>
> 
> Sorry for the delay on this patch.  Have been corresponding with TI to 
> figure out what to do about DRA7xx/AM43xx patches.  I don't have boards or 
> public documentation for these devices, so it's impossible for me to 
> meaningfully review the patches.  Looks like boards and/or public docs 
> won't be coming any time soon.
> 
> So for my part, here's what I'll need to merge any hwmod patches that
> involve AM437x or DRA7xx:
> 
> 1. A Reviewed-by: from one of the following folks (which should come from
> a different person than who is submitting the patches):
> 
> Roger Quadros
> Nishanth Menon
> Rajendra Nayak
> Kevin Hilman
> Tony Lindgren
> 
> 2. A Tested-by: from one of the following folks (who can be the same as 
> the person who is the same as the person who is submitting the patches):
> 
> Nishanth Menon
> Rajendra Nayak
> Kevin Hilman 
> Tony Lindgren
> 
> 
> Once these are in place, I'd be happy to queue it for 3.16.

I've tried to refine this a little bit.  More details here:

http://marc.info/?l=linux-omap&m=140280321814330&w=2

- Paul

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH] ARM: DRA7: hwmod: add entry for RTCSS
  2014-05-09 12:37 [PATCH] ARM: DRA7: hwmod: add entry for RTCSS Sekhar Nori
  2014-06-13 19:09 ` Paul Walmsley
@ 2014-07-03 10:22 ` Rajendra Nayak
  2014-07-06  0:32   ` Paul Walmsley
  1 sibling, 1 reply; 24+ messages in thread
From: Rajendra Nayak @ 2014-07-03 10:22 UTC (permalink / raw)
  To: linux-arm-kernel

On Friday 09 May 2014 06:07 PM, Sekhar Nori wrote:
> From: Lokesh Vutla <lokeshvutla@ti.com>
> 
> RTCSS on DRA7 provides a precise real-time clock.
> Add hwmod entry for this IP.
> 
> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> Signed-off-by: Sekhar Nori <nsekhar@ti.com>

Reviewed-by: Rajendra Nayak <rnayak@ti.com>

> ---
> Applies to linux-next of 5th May.

Might need a repost with rebase on the latest mainline.

> 
>  arch/arm/mach-omap2/omap_hwmod_7xx_data.c |   41 +++++++++++++++++++++++++++++
>  1 file changed, 41 insertions(+)
> 
> diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
> index 810c205..402ffc7 100644
> --- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
> +++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
> @@ -1249,6 +1249,38 @@ static struct omap_hwmod dra7xx_qspi_hwmod = {
>  };
>  
>  /*
> + * 'rtcss' class
> + *
> + */
> +static struct omap_hwmod_class_sysconfig dra7xx_rtcss_sysc = {
> +	.sysc_offs	= 0x0078,
> +	.sysc_flags	= SYSC_HAS_SIDLEMODE,
> +	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
> +			   SIDLE_SMART_WKUP),
> +	.sysc_fields	= &omap_hwmod_sysc_type3,
> +};
> +
> +static struct omap_hwmod_class dra7xx_rtcss_hwmod_class = {
> +	.name	= "rtcss",
> +	.sysc	= &dra7xx_rtcss_sysc,
> +};
> +
> +/* rtcss */
> +static struct omap_hwmod dra7xx_rtcss_hwmod = {
> +	.name		= "rtcss",
> +	.class		= &dra7xx_rtcss_hwmod_class,
> +	.clkdm_name	= "rtc_clkdm",
> +	.main_clk	= "sys_32k_ck",
> +	.prcm = {
> +		.omap4 = {
> +			.clkctrl_offs = DRA7XX_CM_RTC_RTCSS_CLKCTRL_OFFSET,
> +			.context_offs = DRA7XX_RM_RTC_RTCSS_CONTEXT_OFFSET,
> +			.modulemode   = MODULEMODE_SWCTRL,
> +		},
> +	},
> +};
> +
> +/*
>   * 'sata' class
>   *
>   */
> @@ -2354,6 +2386,14 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__qspi = {
>  	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>  };
>  
> +/* l4_per3 -> rtcss */
> +static struct omap_hwmod_ocp_if dra7xx_l4_per3__rtcss = {
> +	.master		= &dra7xx_l4_per3_hwmod,
> +	.slave		= &dra7xx_rtcss_hwmod,
> +	.clk		= "l4_root_clk_div",
> +	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> +};
> +
>  static struct omap_hwmod_addr_space dra7xx_sata_addrs[] = {
>  	{
>  		.name		= "sysc",
> @@ -2683,6 +2723,7 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
>  	&dra7xx_l4_cfg__mpu,
>  	&dra7xx_l4_cfg__ocp2scp1,
>  	&dra7xx_l3_main_1__qspi,
> +	&dra7xx_l4_per3__rtcss,
>  	&dra7xx_l4_cfg__sata,
>  	&dra7xx_l4_cfg__smartreflex_core,
>  	&dra7xx_l4_cfg__smartreflex_mpu,
> 

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH] ARM: DRA7: hwmod: add entry for RTCSS
  2014-07-03 10:22 ` Rajendra Nayak
@ 2014-07-06  0:32   ` Paul Walmsley
  2014-07-09  8:35     ` [PATCH V2 0/2] ARM: DRA7: Add RTC hwmod and dt entries Lokesh Vutla
  0 siblings, 1 reply; 24+ messages in thread
From: Paul Walmsley @ 2014-07-06  0:32 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, 3 Jul 2014, Rajendra Nayak wrote:

> On Friday 09 May 2014 06:07 PM, Sekhar Nori wrote:
> > From: Lokesh Vutla <lokeshvutla@ti.com>
> > 
> > RTCSS on DRA7 provides a precise real-time clock.
> > Add hwmod entry for this IP.
> > 
> > Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> > Signed-off-by: Sekhar Nori <nsekhar@ti.com>
> 
> Reviewed-by: Rajendra Nayak <rnayak@ti.com>
> 
> > ---
> > Applies to linux-next of 5th May.
> 
> Might need a repost with rebase on the latest mainline.

Will queue this as soon as someone sends a Tested-by: & a boot log for it.


- Paul

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 0/2] ARM: DRA7: Add RTC hwmod and dt entries
  2014-07-06  0:32   ` Paul Walmsley
@ 2014-07-09  8:35     ` Lokesh Vutla
  2014-07-09  8:35       ` [PATCH V2 1/2] ARM: DRA7: hwmod: Add data for RTC Lokesh Vutla
  2014-07-09  8:35       ` [PATCH V2 2/2] ARM: dts: DRA7: Add node " Lokesh Vutla
  0 siblings, 2 replies; 24+ messages in thread
From: Lokesh Vutla @ 2014-07-09  8:35 UTC (permalink / raw)
  To: linux-arm-kernel

This series adds hwmod entry and dt node for RTC.

Tested on DRA7: logs can be seen here: http://hastebin.com/jaxogatuta.vhdl

Lokesh Vutla (2):
  ARM: DRA7: hwmod: Add data for RTC
  ARM: dts: DRA7: Add node for RTC

 arch/arm/boot/dts/dra7-evm.dts            |    1 +
 arch/arm/boot/dts/dra7.dtsi               |    9 +++++++
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c |   41 +++++++++++++++++++++++++++++
 3 files changed, 51 insertions(+)

-- 
1.7.9.5

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 1/2] ARM: DRA7: hwmod: Add data for RTC
  2014-07-09  8:35     ` [PATCH V2 0/2] ARM: DRA7: Add RTC hwmod and dt entries Lokesh Vutla
@ 2014-07-09  8:35       ` Lokesh Vutla
  2014-07-22 10:19         ` Lokesh Vutla
  2014-07-09  8:35       ` [PATCH V2 2/2] ARM: dts: DRA7: Add node " Lokesh Vutla
  1 sibling, 1 reply; 24+ messages in thread
From: Lokesh Vutla @ 2014-07-09  8:35 UTC (permalink / raw)
  To: linux-arm-kernel

Add hwmod data for RTC

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Reviewed-by: Rajendra Nayak <rnayak@ti.com>
---
Changes since V1:
Rebased on top of linux-next 20140708.

 arch/arm/mach-omap2/omap_hwmod_7xx_data.c |   41 +++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
index 20b4398..d8032b9 100644
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -1249,6 +1249,38 @@ static struct omap_hwmod dra7xx_qspi_hwmod = {
 };
 
 /*
+ * 'rtcss' class
+ *
+ */
+static struct omap_hwmod_class_sysconfig dra7xx_rtcss_sysc = {
+	.sysc_offs	= 0x0078,
+	.sysc_flags	= SYSC_HAS_SIDLEMODE,
+	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
+			   SIDLE_SMART_WKUP),
+	.sysc_fields	= &omap_hwmod_sysc_type3,
+};
+
+static struct omap_hwmod_class dra7xx_rtcss_hwmod_class = {
+	.name	= "rtcss",
+	.sysc	= &dra7xx_rtcss_sysc,
+};
+
+/* rtcss */
+static struct omap_hwmod dra7xx_rtcss_hwmod = {
+	.name		= "rtcss",
+	.class		= &dra7xx_rtcss_hwmod_class,
+	.clkdm_name	= "rtc_clkdm",
+	.main_clk	= "sys_32k_ck",
+	.prcm = {
+		.omap4 = {
+			.clkctrl_offs = DRA7XX_CM_RTC_RTCSS_CLKCTRL_OFFSET,
+			.context_offs = DRA7XX_RM_RTC_RTCSS_CONTEXT_OFFSET,
+			.modulemode   = MODULEMODE_SWCTRL,
+		},
+	},
+};
+
+/*
  * 'sata' class
  *
  */
@@ -2344,6 +2376,14 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__qspi = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
+/* l4_per3 -> rtcss */
+static struct omap_hwmod_ocp_if dra7xx_l4_per3__rtcss = {
+	.master		= &dra7xx_l4_per3_hwmod,
+	.slave		= &dra7xx_rtcss_hwmod,
+	.clk		= "l4_root_clk_div",
+	.user		= OCP_USER_MPU | OCP_USER_SDMA,
+};
+
 static struct omap_hwmod_addr_space dra7xx_sata_addrs[] = {
 	{
 		.name		= "sysc",
@@ -2673,6 +2713,7 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l4_cfg__mpu,
 	&dra7xx_l4_cfg__ocp2scp1,
 	&dra7xx_l3_main_1__qspi,
+	&dra7xx_l4_per3__rtcss,
 	&dra7xx_l4_cfg__sata,
 	&dra7xx_l4_cfg__smartreflex_core,
 	&dra7xx_l4_cfg__smartreflex_mpu,
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-09  8:35     ` [PATCH V2 0/2] ARM: DRA7: Add RTC hwmod and dt entries Lokesh Vutla
  2014-07-09  8:35       ` [PATCH V2 1/2] ARM: DRA7: hwmod: Add data for RTC Lokesh Vutla
@ 2014-07-09  8:35       ` Lokesh Vutla
  2014-07-09  9:12         ` Tony Lindgren
  1 sibling, 1 reply; 24+ messages in thread
From: Lokesh Vutla @ 2014-07-09  8:35 UTC (permalink / raw)
  To: linux-arm-kernel

Add node for RTC.
And also making RTC regulator always-on, as RTC should be powered
always.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
[nm at ti.com: update with rtc crossbar number]
Signed-off-by: Nishanth Menon <nm@ti.com>
---
This patch depends on the crossbar dt patch series by Sricharan:
https://www.mail-archive.com/linux-omap at vger.kernel.org/msg106910.html

 arch/arm/boot/dts/dra7-evm.dts |    1 +
 arch/arm/boot/dts/dra7.dtsi    |    9 +++++++++
 2 files changed, 10 insertions(+)

diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
index 4adc280..bca6d4a 100644
--- a/arch/arm/boot/dts/dra7-evm.dts
+++ b/arch/arm/boot/dts/dra7-evm.dts
@@ -249,6 +249,7 @@
 					regulator-min-microvolt = <1050000>;
 					regulator-max-microvolt = <1050000>;
 					regulator-boot-on;
+					regulator-always-on;
 				};
 
 				ldoln_reg: ldoln {
diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
index 55a6cd4..46779197 100644
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -828,6 +828,15 @@
 			ti,hwmods = "sata";
 		};
 
+		rtcss at 48838000 {
+			compatible = "ti,am3352-rtc";
+			reg = <0x48838000 0x100>;
+			interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
+			ti,hwmods = "rtcss";
+			clocks = <&sys_32k_ck>;
+		};
+
 		omap_control_usb2phy1: control-phy at 4a002300 {
 			compatible = "ti,control-phy-usb2";
 			reg = <0x4a002300 0x4>;
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-09  8:35       ` [PATCH V2 2/2] ARM: dts: DRA7: Add node " Lokesh Vutla
@ 2014-07-09  9:12         ` Tony Lindgren
  2014-07-09  9:32           ` Keerthy
  0 siblings, 1 reply; 24+ messages in thread
From: Tony Lindgren @ 2014-07-09  9:12 UTC (permalink / raw)
  To: linux-arm-kernel

* Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
> Add node for RTC.
> And also making RTC regulator always-on, as RTC should be powered
> always.
> 
> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> [nm at ti.com: update with rtc crossbar number]
> Signed-off-by: Nishanth Menon <nm@ti.com>
> ---
> This patch depends on the crossbar dt patch series by Sricharan:
> https://www.mail-archive.com/linux-omap at vger.kernel.org/msg106910.html
> 
>  arch/arm/boot/dts/dra7-evm.dts |    1 +
>  arch/arm/boot/dts/dra7.dtsi    |    9 +++++++++
>  2 files changed, 10 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
> index 4adc280..bca6d4a 100644
> --- a/arch/arm/boot/dts/dra7-evm.dts
> +++ b/arch/arm/boot/dts/dra7-evm.dts
> @@ -249,6 +249,7 @@
>  					regulator-min-microvolt = <1050000>;
>  					regulator-max-microvolt = <1050000>;
>  					regulator-boot-on;
> +					regulator-always-on;
>  				};
>  

Is this regulator really always on?

Regards,

Tony

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-09  9:12         ` Tony Lindgren
@ 2014-07-09  9:32           ` Keerthy
  2014-07-09 10:09             ` Tony Lindgren
  0 siblings, 1 reply; 24+ messages in thread
From: Keerthy @ 2014-07-09  9:32 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Tony,

On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
> * Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
>> Add node for RTC.
>> And also making RTC regulator always-on, as RTC should be powered
>> always.
>>
>> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
>> [nm at ti.com: update with rtc crossbar number]
>> Signed-off-by: Nishanth Menon <nm@ti.com>
>> ---
>> This patch depends on the crossbar dt patch series by Sricharan:
>> https://www.mail-archive.com/linux-omap at vger.kernel.org/msg106910.html
>>
>>   arch/arm/boot/dts/dra7-evm.dts |    1 +
>>   arch/arm/boot/dts/dra7.dtsi    |    9 +++++++++
>>   2 files changed, 10 insertions(+)
>>
>> diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
>> index 4adc280..bca6d4a 100644
>> --- a/arch/arm/boot/dts/dra7-evm.dts
>> +++ b/arch/arm/boot/dts/dra7-evm.dts
>> @@ -249,6 +249,7 @@
>>   					regulator-min-microvolt = <1050000>;
>>   					regulator-max-microvolt = <1050000>;
>>   					regulator-boot-on;
>> +					regulator-always-on;
>>   				};
>>   
> Is this regulator really always on?

This feeds on to RTC which is a free running clock. So i guess always on 
is justified no?

>
> Regards,
>
> Tony

Regards,
Keerthy

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-09  9:32           ` Keerthy
@ 2014-07-09 10:09             ` Tony Lindgren
  2014-07-09 10:35               ` Keerthy
  0 siblings, 1 reply; 24+ messages in thread
From: Tony Lindgren @ 2014-07-09 10:09 UTC (permalink / raw)
  To: linux-arm-kernel

* Keerthy <a0393675@ti.com> [140709 02:36]:
> On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
> >* Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
> >>--- a/arch/arm/boot/dts/dra7-evm.dts
> >>+++ b/arch/arm/boot/dts/dra7-evm.dts
> >>@@ -249,6 +249,7 @@
> >>  					regulator-min-microvolt = <1050000>;
> >>  					regulator-max-microvolt = <1050000>;
> >>  					regulator-boot-on;
> >>+					regulator-always-on;
> >>  				};
> >Is this regulator really always on?
> 
> This feeds on to RTC which is a free running clock. So i guess always on is
> justified no?

Well the dts entries should describe the hardware. If the
regulator can be enabled and disabled, we should not claim it's
always on.

Also adding temporary dts entries just causes more churn on the
dts files which is a PITA for everybody.

Regards,

Tony

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-09 10:09             ` Tony Lindgren
@ 2014-07-09 10:35               ` Keerthy
  2014-07-09 10:50                 ` Tony Lindgren
  0 siblings, 1 reply; 24+ messages in thread
From: Keerthy @ 2014-07-09 10:35 UTC (permalink / raw)
  To: linux-arm-kernel

On Wednesday 09 July 2014 03:39 PM, Tony Lindgren wrote:
> * Keerthy <a0393675@ti.com> [140709 02:36]:
>> On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
>>> * Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
>>>> --- a/arch/arm/boot/dts/dra7-evm.dts
>>>> +++ b/arch/arm/boot/dts/dra7-evm.dts
>>>> @@ -249,6 +249,7 @@
>>>>   					regulator-min-microvolt = <1050000>;
>>>>   					regulator-max-microvolt = <1050000>;
>>>>   					regulator-boot-on;
>>>> +					regulator-always-on;
>>>>   				};
>>> Is this regulator really always on?
>> This feeds on to RTC which is a free running clock. So i guess always on is
>> justified no?
> Well the dts entries should describe the hardware. If the
> regulator can be enabled and disabled, we should not claim it's
> always on.

 From the PMIC perspective every regulator can be enabled and
disabled. From a Board perspective there are some which need
to be always on. For Ex: SMPS123 which feeds on to the MPU.

I guess RTC also needs the supply to be on as long as we want
the clock to be ticking.

> Also adding temporary dts entries just causes more churn on the
> dts files which is a PITA for everybody.
>
> Regards,
>
> Tony

Regards,
Keerthy

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-09 10:35               ` Keerthy
@ 2014-07-09 10:50                 ` Tony Lindgren
  2014-07-09 10:56                   ` Keerthy
  0 siblings, 1 reply; 24+ messages in thread
From: Tony Lindgren @ 2014-07-09 10:50 UTC (permalink / raw)
  To: linux-arm-kernel

* Keerthy <a0393675@ti.com> [140709 03:39]:
> On Wednesday 09 July 2014 03:39 PM, Tony Lindgren wrote:
> >* Keerthy <a0393675@ti.com> [140709 02:36]:
> >>On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
> >>>* Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
> >>>>--- a/arch/arm/boot/dts/dra7-evm.dts
> >>>>+++ b/arch/arm/boot/dts/dra7-evm.dts
> >>>>@@ -249,6 +249,7 @@
> >>>>  					regulator-min-microvolt = <1050000>;
> >>>>  					regulator-max-microvolt = <1050000>;
> >>>>  					regulator-boot-on;
> >>>>+					regulator-always-on;
> >>>>  				};
> >>>Is this regulator really always on?
> >>This feeds on to RTC which is a free running clock. So i guess always on is
> >>justified no?
> >Well the dts entries should describe the hardware. If the
> >regulator can be enabled and disabled, we should not claim it's
> >always on.
> 
> From the PMIC perspective every regulator can be enabled and
> disabled. From a Board perspective there are some which need
> to be always on. For Ex: SMPS123 which feeds on to the MPU.

Right, and we already have regulator-boot-on for those. Or are
you seeing some issue with that?

> I guess RTC also needs the supply to be on as long as we want
> the clock to be ticking.

Sure, but if somebody wants shut it off regulator-boot-on is
better from driver point of view.

Regards,

Tony

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-09 10:50                 ` Tony Lindgren
@ 2014-07-09 10:56                   ` Keerthy
  2014-07-09 11:00                     ` Tony Lindgren
  0 siblings, 1 reply; 24+ messages in thread
From: Keerthy @ 2014-07-09 10:56 UTC (permalink / raw)
  To: linux-arm-kernel

On Wednesday 09 July 2014 04:20 PM, Tony Lindgren wrote:
> * Keerthy <a0393675@ti.com> [140709 03:39]:
>> On Wednesday 09 July 2014 03:39 PM, Tony Lindgren wrote:
>>> * Keerthy <a0393675@ti.com> [140709 02:36]:
>>>> On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
>>>>> * Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
>>>>>> --- a/arch/arm/boot/dts/dra7-evm.dts
>>>>>> +++ b/arch/arm/boot/dts/dra7-evm.dts
>>>>>> @@ -249,6 +249,7 @@
>>>>>>   					regulator-min-microvolt = <1050000>;
>>>>>>   					regulator-max-microvolt = <1050000>;
>>>>>>   					regulator-boot-on;
>>>>>> +					regulator-always-on;
>>>>>>   				};
>>>>> Is this regulator really always on?
>>>> This feeds on to RTC which is a free running clock. So i guess always on is
>>>> justified no?
>>> Well the dts entries should describe the hardware. If the
>>> regulator can be enabled and disabled, we should not claim it's
>>> always on.
>>  From the PMIC perspective every regulator can be enabled and
>> disabled. From a Board perspective there are some which need
>> to be always on. For Ex: SMPS123 which feeds on to the MPU.
> Right, and we already have regulator-boot-on for those. Or are
> you seeing some issue with that?
regulator-boot-on describes that at boot a particular regulator is on.
It does not guarantee that it will be on for the rest of the time. The
regulator framework can go ahead and disable it if no one has requested
for it. In case of RTC we do not want that to happen.

>
>> I guess RTC also needs the supply to be on as long as we want
>> the clock to be ticking.
> Sure, but if somebody wants shut it off regulator-boot-on is
> better from driver point of view.
>
> Regards,
>
> Tony

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-09 10:56                   ` Keerthy
@ 2014-07-09 11:00                     ` Tony Lindgren
  2014-07-09 11:06                       ` Keerthy
  0 siblings, 1 reply; 24+ messages in thread
From: Tony Lindgren @ 2014-07-09 11:00 UTC (permalink / raw)
  To: linux-arm-kernel

* Keerthy <a0393675@ti.com> [140709 03:59]:
> On Wednesday 09 July 2014 04:20 PM, Tony Lindgren wrote:
> >* Keerthy <a0393675@ti.com> [140709 03:39]:
> >>On Wednesday 09 July 2014 03:39 PM, Tony Lindgren wrote:
> >>>* Keerthy <a0393675@ti.com> [140709 02:36]:
> >>>>On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
> >>>>>* Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
> >>>>>>--- a/arch/arm/boot/dts/dra7-evm.dts
> >>>>>>+++ b/arch/arm/boot/dts/dra7-evm.dts
> >>>>>>@@ -249,6 +249,7 @@
> >>>>>>  					regulator-min-microvolt = <1050000>;
> >>>>>>  					regulator-max-microvolt = <1050000>;
> >>>>>>  					regulator-boot-on;
> >>>>>>+					regulator-always-on;
> >>>>>>  				};
> >>>>>Is this regulator really always on?
> >>>>This feeds on to RTC which is a free running clock. So i guess always on is
> >>>>justified no?
> >>>Well the dts entries should describe the hardware. If the
> >>>regulator can be enabled and disabled, we should not claim it's
> >>>always on.
> >> From the PMIC perspective every regulator can be enabled and
> >>disabled. From a Board perspective there are some which need
> >>to be always on. For Ex: SMPS123 which feeds on to the MPU.
> >Right, and we already have regulator-boot-on for those. Or are
> >you seeing some issue with that?
> regulator-boot-on describes that at boot a particular regulator is on.
> It does not guarantee that it will be on for the rest of the time. The
> regulator framework can go ahead and disable it if no one has requested
> for it. In case of RTC we do not want that to happen.

That's a bug in the RTC driver then. The driver should request a
regulator if it's specified.

Regards,

Tony

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-09 11:00                     ` Tony Lindgren
@ 2014-07-09 11:06                       ` Keerthy
  2014-07-14 14:45                         ` Lokesh Vutla
  0 siblings, 1 reply; 24+ messages in thread
From: Keerthy @ 2014-07-09 11:06 UTC (permalink / raw)
  To: linux-arm-kernel

On Wednesday 09 July 2014 04:30 PM, Tony Lindgren wrote:
> * Keerthy <a0393675@ti.com> [140709 03:59]:
>> On Wednesday 09 July 2014 04:20 PM, Tony Lindgren wrote:
>>> * Keerthy <a0393675@ti.com> [140709 03:39]:
>>>> On Wednesday 09 July 2014 03:39 PM, Tony Lindgren wrote:
>>>>> * Keerthy <a0393675@ti.com> [140709 02:36]:
>>>>>> On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
>>>>>>> * Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
>>>>>>>> --- a/arch/arm/boot/dts/dra7-evm.dts
>>>>>>>> +++ b/arch/arm/boot/dts/dra7-evm.dts
>>>>>>>> @@ -249,6 +249,7 @@
>>>>>>>>   					regulator-min-microvolt = <1050000>;
>>>>>>>>   					regulator-max-microvolt = <1050000>;
>>>>>>>>   					regulator-boot-on;
>>>>>>>> +					regulator-always-on;
>>>>>>>>   				};
>>>>>>> Is this regulator really always on?
>>>>>> This feeds on to RTC which is a free running clock. So i guess always on is
>>>>>> justified no?
>>>>> Well the dts entries should describe the hardware. If the
>>>>> regulator can be enabled and disabled, we should not claim it's
>>>>> always on.
>>>>  From the PMIC perspective every regulator can be enabled and
>>>> disabled. From a Board perspective there are some which need
>>>> to be always on. For Ex: SMPS123 which feeds on to the MPU.
>>> Right, and we already have regulator-boot-on for those. Or are
>>> you seeing some issue with that?
>> regulator-boot-on describes that at boot a particular regulator is on.
>> It does not guarantee that it will be on for the rest of the time. The
>> regulator framework can go ahead and disable it if no one has requested
>> for it. In case of RTC we do not want that to happen.
> That's a bug in the RTC driver then. The driver should request a
> regulator if it's specified.

Okay.

>
> Regards,
>
> Tony

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-09 11:06                       ` Keerthy
@ 2014-07-14 14:45                         ` Lokesh Vutla
  2014-07-14 16:23                           ` Tony Lindgren
  2014-07-15  3:51                           ` Keerthy
  0 siblings, 2 replies; 24+ messages in thread
From: Lokesh Vutla @ 2014-07-14 14:45 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Tony,
On Wednesday 09 July 2014 04:36 PM, Keerthy wrote:
> On Wednesday 09 July 2014 04:30 PM, Tony Lindgren wrote:
>> * Keerthy <a0393675@ti.com> [140709 03:59]:
>>> On Wednesday 09 July 2014 04:20 PM, Tony Lindgren wrote:
>>>> * Keerthy <a0393675@ti.com> [140709 03:39]:
>>>>> On Wednesday 09 July 2014 03:39 PM, Tony Lindgren wrote:
>>>>>> * Keerthy <a0393675@ti.com> [140709 02:36]:
>>>>>>> On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
>>>>>>>> * Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
>>>>>>>>> --- a/arch/arm/boot/dts/dra7-evm.dts
>>>>>>>>> +++ b/arch/arm/boot/dts/dra7-evm.dts
>>>>>>>>> @@ -249,6 +249,7 @@
>>>>>>>>>                       regulator-min-microvolt = <1050000>;
>>>>>>>>>                       regulator-max-microvolt = <1050000>;
>>>>>>>>>                       regulator-boot-on;
>>>>>>>>> +                    regulator-always-on;
>>>>>>>>>                   };
>>>>>>>> Is this regulator really always on?
>>>>>>> This feeds on to RTC which is a free running clock. So i guess always on is
>>>>>>> justified no?
>>>>>> Well the dts entries should describe the hardware. If the
>>>>>> regulator can be enabled and disabled, we should not claim it's
>>>>>> always on.
>>>>>  From the PMIC perspective every regulator can be enabled and
>>>>> disabled. From a Board perspective there are some which need
>>>>> to be always on. For Ex: SMPS123 which feeds on to the MPU.
>>>> Right, and we already have regulator-boot-on for those. Or are
>>>> you seeing some issue with that?
>>> regulator-boot-on describes that at boot a particular regulator is on.
>>> It does not guarantee that it will be on for the rest of the time. The
>>> regulator framework can go ahead and disable it if no one has requested
>>> for it. In case of RTC we do not want that to happen.
>> That's a bug in the RTC driver then. The driver should request a
>> regulator if it's specified.

In my experiments I observed that when RTC regulator is switched off and switched on, there is an abort while
accessing RTC registers.
After discussing with hardware team, it is confirmed that this LDO9 regulator powering RTC cannot be turned off when
SoC is active and expected to be always on.

Thanks and regards,
Lokesh

> 
> Okay.
> 
>>
>> Regards,
>>
>> Tony
> 

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-14 14:45                         ` Lokesh Vutla
@ 2014-07-14 16:23                           ` Tony Lindgren
  2014-07-15  3:57                             ` Keerthy
  2014-07-15  4:07                             ` Lokesh Vutla
  2014-07-15  3:51                           ` Keerthy
  1 sibling, 2 replies; 24+ messages in thread
From: Tony Lindgren @ 2014-07-14 16:23 UTC (permalink / raw)
  To: linux-arm-kernel

* Lokesh Vutla <lokeshvutla@ti.com> [140714 07:47]:
> Hi Tony,
> On Wednesday 09 July 2014 04:36 PM, Keerthy wrote:
> > On Wednesday 09 July 2014 04:30 PM, Tony Lindgren wrote:
> >> * Keerthy <a0393675@ti.com> [140709 03:59]:
> >>> On Wednesday 09 July 2014 04:20 PM, Tony Lindgren wrote:
> >>>> * Keerthy <a0393675@ti.com> [140709 03:39]:
> >>>>> On Wednesday 09 July 2014 03:39 PM, Tony Lindgren wrote:
> >>>>>> * Keerthy <a0393675@ti.com> [140709 02:36]:
> >>>>>>> On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
> >>>>>>>> * Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
> >>>>>>>>> --- a/arch/arm/boot/dts/dra7-evm.dts
> >>>>>>>>> +++ b/arch/arm/boot/dts/dra7-evm.dts
> >>>>>>>>> @@ -249,6 +249,7 @@
> >>>>>>>>>                       regulator-min-microvolt = <1050000>;
> >>>>>>>>>                       regulator-max-microvolt = <1050000>;
> >>>>>>>>>                       regulator-boot-on;
> >>>>>>>>> +                    regulator-always-on;
> >>>>>>>>>                   };
> >>>>>>>> Is this regulator really always on?
> >>>>>>> This feeds on to RTC which is a free running clock. So i guess always on is
> >>>>>>> justified no?
> >>>>>> Well the dts entries should describe the hardware. If the
> >>>>>> regulator can be enabled and disabled, we should not claim it's
> >>>>>> always on.
> >>>>>  From the PMIC perspective every regulator can be enabled and
> >>>>> disabled. From a Board perspective there are some which need
> >>>>> to be always on. For Ex: SMPS123 which feeds on to the MPU.
> >>>> Right, and we already have regulator-boot-on for those. Or are
> >>>> you seeing some issue with that?
> >>> regulator-boot-on describes that at boot a particular regulator is on.
> >>> It does not guarantee that it will be on for the rest of the time. The
> >>> regulator framework can go ahead and disable it if no one has requested
> >>> for it. In case of RTC we do not want that to happen.
> >> That's a bug in the RTC driver then. The driver should request a
> >> regulator if it's specified.
> 
> In my experiments I observed that when RTC regulator is switched
> off and switched on, there is an abort while accessing RTC registers.

Right, then you know you have the right regulator :)

> After discussing with hardware team, it is confirmed that this
> LDO9 regulator powering RTC cannot be turned off when
> SoC is active and expected to be always on.

Hmm but sounds like you already proved it can be idled? So
the regulator really should be managed by the driver?

Regards,

Tony

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-14 14:45                         ` Lokesh Vutla
  2014-07-14 16:23                           ` Tony Lindgren
@ 2014-07-15  3:51                           ` Keerthy
  1 sibling, 0 replies; 24+ messages in thread
From: Keerthy @ 2014-07-15  3:51 UTC (permalink / raw)
  To: linux-arm-kernel

On Monday 14 July 2014 08:15 PM, Lokesh Vutla wrote:
> Hi Tony,
> On Wednesday 09 July 2014 04:36 PM, Keerthy wrote:
>> On Wednesday 09 July 2014 04:30 PM, Tony Lindgren wrote:
>>> * Keerthy <a0393675@ti.com> [140709 03:59]:
>>>> On Wednesday 09 July 2014 04:20 PM, Tony Lindgren wrote:
>>>>> * Keerthy <a0393675@ti.com> [140709 03:39]:
>>>>>> On Wednesday 09 July 2014 03:39 PM, Tony Lindgren wrote:
>>>>>>> * Keerthy <a0393675@ti.com> [140709 02:36]:
>>>>>>>> On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
>>>>>>>>> * Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
>>>>>>>>>> --- a/arch/arm/boot/dts/dra7-evm.dts
>>>>>>>>>> +++ b/arch/arm/boot/dts/dra7-evm.dts
>>>>>>>>>> @@ -249,6 +249,7 @@
>>>>>>>>>>                        regulator-min-microvolt = <1050000>;
>>>>>>>>>>                        regulator-max-microvolt = <1050000>;
>>>>>>>>>>                        regulator-boot-on;
>>>>>>>>>> +                    regulator-always-on;
>>>>>>>>>>                    };
>>>>>>>>> Is this regulator really always on?
>>>>>>>> This feeds on to RTC which is a free running clock. So i guess always on is
>>>>>>>> justified no?
>>>>>>> Well the dts entries should describe the hardware. If the
>>>>>>> regulator can be enabled and disabled, we should not claim it's
>>>>>>> always on.
>>>>>>   From the PMIC perspective every regulator can be enabled and
>>>>>> disabled. From a Board perspective there are some which need
>>>>>> to be always on. For Ex: SMPS123 which feeds on to the MPU.
>>>>> Right, and we already have regulator-boot-on for those. Or are
>>>>> you seeing some issue with that?
>>>> regulator-boot-on describes that at boot a particular regulator is on.
>>>> It does not guarantee that it will be on for the rest of the time. The
>>>> regulator framework can go ahead and disable it if no one has requested
>>>> for it. In case of RTC we do not want that to happen.
>>> That's a bug in the RTC driver then. The driver should request a
>>> regulator if it's specified.
> In my experiments I observed that when RTC regulator is switched off and switched on, there is an abort while
> accessing RTC registers.
> After discussing with hardware team, it is confirmed that this LDO9 regulator powering RTC cannot be turned off when
> SoC is active and expected to be always on.
As confirmed by the PMIC hardware team this regulator should be an always-on
regulator.

Acked-by: Keerthy <j-keerthy@ti.com>
>
> Thanks and regards,
> Lokesh
>
>> Okay.
>>
>>> Regards,
>>>
>>> Tony

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-14 16:23                           ` Tony Lindgren
@ 2014-07-15  3:57                             ` Keerthy
  2014-07-15  4:07                             ` Lokesh Vutla
  1 sibling, 0 replies; 24+ messages in thread
From: Keerthy @ 2014-07-15  3:57 UTC (permalink / raw)
  To: linux-arm-kernel

On Monday 14 July 2014 09:53 PM, Tony Lindgren wrote:
> * Lokesh Vutla <lokeshvutla@ti.com> [140714 07:47]:
>> Hi Tony,
>> On Wednesday 09 July 2014 04:36 PM, Keerthy wrote:
>>> On Wednesday 09 July 2014 04:30 PM, Tony Lindgren wrote:
>>>> * Keerthy <a0393675@ti.com> [140709 03:59]:
>>>>> On Wednesday 09 July 2014 04:20 PM, Tony Lindgren wrote:
>>>>>> * Keerthy <a0393675@ti.com> [140709 03:39]:
>>>>>>> On Wednesday 09 July 2014 03:39 PM, Tony Lindgren wrote:
>>>>>>>> * Keerthy <a0393675@ti.com> [140709 02:36]:
>>>>>>>>> On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
>>>>>>>>>> * Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
>>>>>>>>>>> --- a/arch/arm/boot/dts/dra7-evm.dts
>>>>>>>>>>> +++ b/arch/arm/boot/dts/dra7-evm.dts
>>>>>>>>>>> @@ -249,6 +249,7 @@
>>>>>>>>>>>                        regulator-min-microvolt = <1050000>;
>>>>>>>>>>>                        regulator-max-microvolt = <1050000>;
>>>>>>>>>>>                        regulator-boot-on;
>>>>>>>>>>> +                    regulator-always-on;
>>>>>>>>>>>                    };
>>>>>>>>>> Is this regulator really always on?
>>>>>>>>> This feeds on to RTC which is a free running clock. So i guess always on is
>>>>>>>>> justified no?
>>>>>>>> Well the dts entries should describe the hardware. If the
>>>>>>>> regulator can be enabled and disabled, we should not claim it's
>>>>>>>> always on.
>>>>>>>   From the PMIC perspective every regulator can be enabled and
>>>>>>> disabled. From a Board perspective there are some which need
>>>>>>> to be always on. For Ex: SMPS123 which feeds on to the MPU.
>>>>>> Right, and we already have regulator-boot-on for those. Or are
>>>>>> you seeing some issue with that?
>>>>> regulator-boot-on describes that at boot a particular regulator is on.
>>>>> It does not guarantee that it will be on for the rest of the time. The
>>>>> regulator framework can go ahead and disable it if no one has requested
>>>>> for it. In case of RTC we do not want that to happen.
>>>> That's a bug in the RTC driver then. The driver should request a
>>>> regulator if it's specified.
>> In my experiments I observed that when RTC regulator is switched
>> off and switched on, there is an abort while accessing RTC registers.
> Right, then you know you have the right regulator :)
>
>> After discussing with hardware team, it is confirmed that this
>> LDO9 regulator powering RTC cannot be turned off when
>> SoC is active and expected to be always on.
> Hmm but sounds like you already proved it can be idled? So
> the regulator really should be managed by the driver?

Tony,

Lokesh and i tried disabling the ldo9 regulator and then re-enabling it
post boot via driver as well as through I2C tools. Once we disable and 
re-enable
we see that we can not access the RTC related registers any further.
So we checked with the hardware team and they confirmed that it should
never be disabled.

Regards,
Keerthy
> Regards,
>
> Tony

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-14 16:23                           ` Tony Lindgren
  2014-07-15  3:57                             ` Keerthy
@ 2014-07-15  4:07                             ` Lokesh Vutla
  2014-07-15  6:59                               ` Tony Lindgren
  1 sibling, 1 reply; 24+ messages in thread
From: Lokesh Vutla @ 2014-07-15  4:07 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Tony,
On Monday 14 July 2014 09:53 PM, Tony Lindgren wrote:
> * Lokesh Vutla <lokeshvutla@ti.com> [140714 07:47]:
>> Hi Tony,
>> On Wednesday 09 July 2014 04:36 PM, Keerthy wrote:
>>> On Wednesday 09 July 2014 04:30 PM, Tony Lindgren wrote:
>>>> * Keerthy <a0393675@ti.com> [140709 03:59]:
>>>>> On Wednesday 09 July 2014 04:20 PM, Tony Lindgren wrote:
>>>>>> * Keerthy <a0393675@ti.com> [140709 03:39]:
>>>>>>> On Wednesday 09 July 2014 03:39 PM, Tony Lindgren wrote:
>>>>>>>> * Keerthy <a0393675@ti.com> [140709 02:36]:
>>>>>>>>> On Wednesday 09 July 2014 02:42 PM, Tony Lindgren wrote:
>>>>>>>>>> * Lokesh Vutla <lokeshvutla@ti.com> [140709 01:37]:
>>>>>>>>>>> --- a/arch/arm/boot/dts/dra7-evm.dts
>>>>>>>>>>> +++ b/arch/arm/boot/dts/dra7-evm.dts
>>>>>>>>>>> @@ -249,6 +249,7 @@
>>>>>>>>>>>                       regulator-min-microvolt = <1050000>;
>>>>>>>>>>>                       regulator-max-microvolt = <1050000>;
>>>>>>>>>>>                       regulator-boot-on;
>>>>>>>>>>> +                    regulator-always-on;
>>>>>>>>>>>                   };
>>>>>>>>>> Is this regulator really always on?
>>>>>>>>> This feeds on to RTC which is a free running clock. So i guess always on is
>>>>>>>>> justified no?
>>>>>>>> Well the dts entries should describe the hardware. If the
>>>>>>>> regulator can be enabled and disabled, we should not claim it's
>>>>>>>> always on.
>>>>>>>  From the PMIC perspective every regulator can be enabled and
>>>>>>> disabled. From a Board perspective there are some which need
>>>>>>> to be always on. For Ex: SMPS123 which feeds on to the MPU.
>>>>>> Right, and we already have regulator-boot-on for those. Or are
>>>>>> you seeing some issue with that?
>>>>> regulator-boot-on describes that at boot a particular regulator is on.
>>>>> It does not guarantee that it will be on for the rest of the time. The
>>>>> regulator framework can go ahead and disable it if no one has requested
>>>>> for it. In case of RTC we do not want that to happen.
>>>> That's a bug in the RTC driver then. The driver should request a
>>>> regulator if it's specified.
>>
>> In my experiments I observed that when RTC regulator is switched
>> off and switched on, there is an abort while accessing RTC registers.
> 
> Right, then you know you have the right regulator :)
Once we switch it off it is expected, but then if it is *switched on* it is expected that we should be able to access
registers. Here there is an abort accessing these registers. 
> 
>> After discussing with hardware team, it is confirmed that this
>> LDO9 regulator powering RTC cannot be turned off when
>> SoC is active and expected to be always on.
> 
> Hmm but sounds like you already proved it can be idled? So
> the regulator really should be managed by the driver?
Actually I adapted the driver to support a power regulator. Then I observed that if rtc is loaded as  a module
there is an abort(  which is happening because the regulator is disabled once and re-enabled). So when we checked
with the hardware team, they confirmed that ldo9 should not be disabled. 

Thanks and regards,
Lokesh
> 
> Regards,
> 
> Tony
> 

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 2/2] ARM: dts: DRA7: Add node for RTC
  2014-07-15  4:07                             ` Lokesh Vutla
@ 2014-07-15  6:59                               ` Tony Lindgren
  0 siblings, 0 replies; 24+ messages in thread
From: Tony Lindgren @ 2014-07-15  6:59 UTC (permalink / raw)
  To: linux-arm-kernel

* Lokesh Vutla <lokeshvutla@ti.com> [140714 21:09]:
> On Monday 14 July 2014 09:53 PM, Tony Lindgren wrote:
> > * Lokesh Vutla <lokeshvutla@ti.com> [140714 07:47]:
> >>
> >> In my experiments I observed that when RTC regulator is switched
> >> off and switched on, there is an abort while accessing RTC registers.
> > 
> > Right, then you know you have the right regulator :)
>
> Once we switch it off it is expected, but then if it is *switched on*
> it is expected that we should be able to access registers. Here there
> is an abort accessing these registers. 

Most likely you need to also reconfigure the registers or
re-enable the clock or reset it at the interconnect too.

> >> After discussing with hardware team, it is confirmed that this
> >> LDO9 regulator powering RTC cannot be turned off when
> >> SoC is active and expected to be always on.
> > 
> > Hmm but sounds like you already proved it can be idled? So
> > the regulator really should be managed by the driver?
>
> Actually I adapted the driver to support a power regulator.
> Then I observed that if rtc is loaded as  a module there is
> an abort(  which is happening because the regulator is disabled
> once and re-enabled). So when we checked with the hardware team,
> they confirmed that ldo9 should not be disabled. 

Hmm so how is it enabled initially then?

To me it sounds like very standard stuff to reinitialize
a driver for any omap device when waking from suspend or
returning from off-idle. If the RTC device cannot be reset,
idled and re-initialized properly, there's something wrong
with the RTC driver, clocks, regulators, or hwmod data for
that device.

Regards,

Tony

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 1/2] ARM: DRA7: hwmod: Add data for RTC
  2014-07-09  8:35       ` [PATCH V2 1/2] ARM: DRA7: hwmod: Add data for RTC Lokesh Vutla
@ 2014-07-22 10:19         ` Lokesh Vutla
  2014-07-22 19:19           ` Paul Walmsley
  0 siblings, 1 reply; 24+ messages in thread
From: Lokesh Vutla @ 2014-07-22 10:19 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Paul,
On Wednesday 09 July 2014 02:05 PM, Lokesh Vutla wrote:
> Add hwmod data for RTC
> 
> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
> Reviewed-by: Rajendra Nayak <rnayak@ti.com>
Can you take this patch. I have submitted logs also.

Thanks and regards,
Lokesh
> ---
> Changes since V1:
> Rebased on top of linux-next 20140708.
> 
>  arch/arm/mach-omap2/omap_hwmod_7xx_data.c |   41 +++++++++++++++++++++++++++++
>  1 file changed, 41 insertions(+)
> 
> diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
> index 20b4398..d8032b9 100644
> --- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
> +++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
> @@ -1249,6 +1249,38 @@ static struct omap_hwmod dra7xx_qspi_hwmod = {
>  };
>  
>  /*
> + * 'rtcss' class
> + *
> + */
> +static struct omap_hwmod_class_sysconfig dra7xx_rtcss_sysc = {
> +	.sysc_offs	= 0x0078,
> +	.sysc_flags	= SYSC_HAS_SIDLEMODE,
> +	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
> +			   SIDLE_SMART_WKUP),
> +	.sysc_fields	= &omap_hwmod_sysc_type3,
> +};
> +
> +static struct omap_hwmod_class dra7xx_rtcss_hwmod_class = {
> +	.name	= "rtcss",
> +	.sysc	= &dra7xx_rtcss_sysc,
> +};
> +
> +/* rtcss */
> +static struct omap_hwmod dra7xx_rtcss_hwmod = {
> +	.name		= "rtcss",
> +	.class		= &dra7xx_rtcss_hwmod_class,
> +	.clkdm_name	= "rtc_clkdm",
> +	.main_clk	= "sys_32k_ck",
> +	.prcm = {
> +		.omap4 = {
> +			.clkctrl_offs = DRA7XX_CM_RTC_RTCSS_CLKCTRL_OFFSET,
> +			.context_offs = DRA7XX_RM_RTC_RTCSS_CONTEXT_OFFSET,
> +			.modulemode   = MODULEMODE_SWCTRL,
> +		},
> +	},
> +};
> +
> +/*
>   * 'sata' class
>   *
>   */
> @@ -2344,6 +2376,14 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__qspi = {
>  	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>  };
>  
> +/* l4_per3 -> rtcss */
> +static struct omap_hwmod_ocp_if dra7xx_l4_per3__rtcss = {
> +	.master		= &dra7xx_l4_per3_hwmod,
> +	.slave		= &dra7xx_rtcss_hwmod,
> +	.clk		= "l4_root_clk_div",
> +	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> +};
> +
>  static struct omap_hwmod_addr_space dra7xx_sata_addrs[] = {
>  	{
>  		.name		= "sysc",
> @@ -2673,6 +2713,7 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
>  	&dra7xx_l4_cfg__mpu,
>  	&dra7xx_l4_cfg__ocp2scp1,
>  	&dra7xx_l3_main_1__qspi,
> +	&dra7xx_l4_per3__rtcss,
>  	&dra7xx_l4_cfg__sata,
>  	&dra7xx_l4_cfg__smartreflex_core,
>  	&dra7xx_l4_cfg__smartreflex_mpu,
> 

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [PATCH V2 1/2] ARM: DRA7: hwmod: Add data for RTC
  2014-07-22 10:19         ` Lokesh Vutla
@ 2014-07-22 19:19           ` Paul Walmsley
  0 siblings, 0 replies; 24+ messages in thread
From: Paul Walmsley @ 2014-07-22 19:19 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 22 Jul 2014, Lokesh Vutla wrote:

> Hi Paul,
> On Wednesday 09 July 2014 02:05 PM, Lokesh Vutla wrote:
> > Add hwmod data for RTC
> > 
> > Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> > Signed-off-by: Sekhar Nori <nsekhar@ti.com>
> > Reviewed-by: Rajendra Nayak <rnayak@ti.com>
> Can you take this patch. I have submitted logs also.

Thanks, queued for 3.17.  And thanks for running rtctest in your testlog - 
that's helpful and gives some extra confidence.


- Paul

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2014-07-22 19:19 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-09 12:37 [PATCH] ARM: DRA7: hwmod: add entry for RTCSS Sekhar Nori
2014-06-13 19:09 ` Paul Walmsley
2014-06-15  3:47   ` Paul Walmsley
2014-07-03 10:22 ` Rajendra Nayak
2014-07-06  0:32   ` Paul Walmsley
2014-07-09  8:35     ` [PATCH V2 0/2] ARM: DRA7: Add RTC hwmod and dt entries Lokesh Vutla
2014-07-09  8:35       ` [PATCH V2 1/2] ARM: DRA7: hwmod: Add data for RTC Lokesh Vutla
2014-07-22 10:19         ` Lokesh Vutla
2014-07-22 19:19           ` Paul Walmsley
2014-07-09  8:35       ` [PATCH V2 2/2] ARM: dts: DRA7: Add node " Lokesh Vutla
2014-07-09  9:12         ` Tony Lindgren
2014-07-09  9:32           ` Keerthy
2014-07-09 10:09             ` Tony Lindgren
2014-07-09 10:35               ` Keerthy
2014-07-09 10:50                 ` Tony Lindgren
2014-07-09 10:56                   ` Keerthy
2014-07-09 11:00                     ` Tony Lindgren
2014-07-09 11:06                       ` Keerthy
2014-07-14 14:45                         ` Lokesh Vutla
2014-07-14 16:23                           ` Tony Lindgren
2014-07-15  3:57                             ` Keerthy
2014-07-15  4:07                             ` Lokesh Vutla
2014-07-15  6:59                               ` Tony Lindgren
2014-07-15  3:51                           ` Keerthy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).