Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1503455 > unrolled thread

[PATCH/RESEND] clocksource/arm_arch_timer: Map frame with of_io_request_and_map()

Started byStephen Boyd <sboyd@codeaurora.org>
First post2016-10-19 01:50 +0200
Last post2016-10-19 19:40 +0200
Articles 3 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH/RESEND] clocksource/arm_arch_timer: Map frame with of_io_request_and_map() Stephen Boyd <sboyd@codeaurora.org> - 2016-10-19 01:50 +0200
    Re: [PATCH/RESEND] clocksource/arm_arch_timer: Map frame with  of_io_request_and_map() Marc Zyngier <marc.zyngier@arm.com> - 2016-10-19 11:10 +0200
      Re: [PATCH/RESEND] clocksource/arm_arch_timer: Map frame with  of_io_request_and_map() Stephen Boyd <sboyd@codeaurora.org> - 2016-10-19 19:40 +0200

#1503455 — [PATCH/RESEND] clocksource/arm_arch_timer: Map frame with of_io_request_and_map()

FromStephen Boyd <sboyd@codeaurora.org>
Date2016-10-19 01:50 +0200
Subject[PATCH/RESEND] clocksource/arm_arch_timer: Map frame with of_io_request_and_map()
Message-ID<stMiR-Mt-17@gated-at.bofh.it>
Let's use the of_io_request_and_map() API so that the frame
region is protected and shows up in /proc/iomem.

Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
---
 drivers/clocksource/arm_arch_timer.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
index 73c487da6d2a..cbfa3bc5be75 100644
--- a/drivers/clocksource/arm_arch_timer.c
+++ b/drivers/clocksource/arm_arch_timer.c
@@ -964,7 +964,8 @@ static int __init arch_timer_mem_init(struct device_node *np)
 	}
 
 	ret= -ENXIO;
-	base = arch_counter_base = of_iomap(best_frame, 0);
+	base = arch_counter_base = of_io_request_and_map(best_frame, 0,
+							 "arch_mem_timer");
 	if (!base) {
 		pr_err("arch_timer: Can't map frame's registers\n");
 		goto out;
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

[toc] | [next] | [standalone]


#1503592 — Re: [PATCH/RESEND] clocksource/arm_arch_timer: Map frame with of_io_request_and_map()

FromMarc Zyngier <marc.zyngier@arm.com>
Date2016-10-19 11:10 +0200
SubjectRe: [PATCH/RESEND] clocksource/arm_arch_timer: Map frame with of_io_request_and_map()
Message-ID<stV2O-7yU-19@gated-at.bofh.it>
In reply to#1503455
On 19/10/16 00:45, Stephen Boyd wrote:
> Let's use the of_io_request_and_map() API so that the frame
> region is protected and shows up in /proc/iomem.
> 
> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
> ---
>  drivers/clocksource/arm_arch_timer.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
> index 73c487da6d2a..cbfa3bc5be75 100644
> --- a/drivers/clocksource/arm_arch_timer.c
> +++ b/drivers/clocksource/arm_arch_timer.c
> @@ -964,7 +964,8 @@ static int __init arch_timer_mem_init(struct device_node *np)
>  	}
>  
>  	ret= -ENXIO;
> -	base = arch_counter_base = of_iomap(best_frame, 0);
> +	base = arch_counter_base = of_io_request_and_map(best_frame, 0,
> +							 "arch_mem_timer");
>  	if (!base) {
>  		pr_err("arch_timer: Can't map frame's registers\n");
>  		goto out;
> 

Careful here: of_io_request_and_map() returns an ERR_PTR() on failure,
while of_iomap just returns NULL. You want to change the error handling
if you're going down that road.

Thanks,

	M.
-- 
Jazz is not dead. It just smells funny...

[toc] | [prev] | [next] | [standalone]


#1504170 — Re: [PATCH/RESEND] clocksource/arm_arch_timer: Map frame with of_io_request_and_map()

FromStephen Boyd <sboyd@codeaurora.org>
Date2016-10-19 19:40 +0200
SubjectRe: [PATCH/RESEND] clocksource/arm_arch_timer: Map frame with of_io_request_and_map()
Message-ID<su30l-4pj-3@gated-at.bofh.it>
In reply to#1503592
On 10/19, Marc Zyngier wrote:
> On 19/10/16 00:45, Stephen Boyd wrote:
> > Let's use the of_io_request_and_map() API so that the frame
> > region is protected and shows up in /proc/iomem.
> > 
> > Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
> > ---
> >  drivers/clocksource/arm_arch_timer.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
> > index 73c487da6d2a..cbfa3bc5be75 100644
> > --- a/drivers/clocksource/arm_arch_timer.c
> > +++ b/drivers/clocksource/arm_arch_timer.c
> > @@ -964,7 +964,8 @@ static int __init arch_timer_mem_init(struct device_node *np)
> >  	}
> >  
> >  	ret= -ENXIO;
> > -	base = arch_counter_base = of_iomap(best_frame, 0);
> > +	base = arch_counter_base = of_io_request_and_map(best_frame, 0,
> > +							 "arch_mem_timer");
> >  	if (!base) {
> >  		pr_err("arch_timer: Can't map frame's registers\n");
> >  		goto out;
> > 
> 
> Careful here: of_io_request_and_map() returns an ERR_PTR() on failure,
> while of_iomap just returns NULL. You want to change the error handling
> if you're going down that road.
> 

Eek! I was clearing out my pending queue and this one is
especially old so perhaps that function signature changed. Or I
just fail at life. Anyway, thanks!

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web