devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] dt: remove of_alias_get_id() reference
@ 2011-08-04 10:30 Grant Likely
  2011-08-04 10:33 ` Felipe Balbi
  0 siblings, 1 reply; 5+ messages in thread
From: Grant Likely @ 2011-08-04 10:30 UTC (permalink / raw)
  To: devicetree-discuss, linux-kernel; +Cc: Shawn Guo

of_alias_get_id() is broken and being reverted.  Remove the reference
to it and replace with a single incrementing id number.

There is no risk of regression here on the imx driver since the imx
change to use of_alias_get_id() is commit 22698aa2, "serial/imx: add
device tree probe support" which is new for v3.1, and it won't get
used unless CONFIG_OF is enabled and the board is booted using a
device tree.  A single incrementing integer is sufficient for now.

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Acked-by: Shawn Guo <shawn.guo@linaro.org>
---

I'm about to ask Linus to pull this patch through the devicetree/merge
branch along with the of_alias revert.

 drivers/tty/serial/imx.c |   13 ++++---------
 1 files changed, 4 insertions(+), 9 deletions(-)

diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index 827db76..7e91b3d 100644
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -1286,22 +1286,17 @@ static int serial_imx_resume(struct platform_device *dev)
 static int serial_imx_probe_dt(struct imx_port *sport,
 		struct platform_device *pdev)
 {
+	static int portnum = 0;
 	struct device_node *np = pdev->dev.of_node;
 	const struct of_device_id *of_id =
 			of_match_device(imx_uart_dt_ids, &pdev->dev);
-	int ret;
 
 	if (!np)
 		return -ENODEV;
 
-	ret = of_alias_get_id(np, "serial");
-	if (ret < 0) {
-		pr_err("%s: failed to get alias id, errno %d\n",
-			__func__, ret);
-		return -ENODEV;
-	} else {
-		sport->port.line = ret;
-	}
+	sport->port.line = portnum++;
+	if (sport->port.line >= UART_NR)
+		return -EINVAL;
 
 	if (of_get_property(np, "fsl,uart-has-rtscts", NULL))
 		sport->have_rtscts = 1;

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

* Re: [PATCH] dt: remove of_alias_get_id() reference
  2011-08-04 10:30 [PATCH] dt: remove of_alias_get_id() reference Grant Likely
@ 2011-08-04 10:33 ` Felipe Balbi
       [not found]   ` <20110804103336.GE17540-UiBtZHVXSwEVvW8u9ZQWYwjfymiNCTlR@public.gmane.org>
  0 siblings, 1 reply; 5+ messages in thread
From: Felipe Balbi @ 2011-08-04 10:33 UTC (permalink / raw)
  To: Grant Likely
  Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA


[-- Attachment #1.1: Type: text/plain, Size: 1394 bytes --]

On Thu, Aug 04, 2011 at 11:30:27AM +0100, Grant Likely wrote:
> of_alias_get_id() is broken and being reverted.  Remove the reference
> to it and replace with a single incrementing id number.
> 
> There is no risk of regression here on the imx driver since the imx
> change to use of_alias_get_id() is commit 22698aa2, "serial/imx: add
> device tree probe support" which is new for v3.1, and it won't get
> used unless CONFIG_OF is enabled and the board is booted using a
> device tree.  A single incrementing integer is sufficient for now.
> 
> Signed-off-by: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
> Acked-by: Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> ---
> 
> I'm about to ask Linus to pull this patch through the devicetree/merge
> branch along with the of_alias revert.
> 
>  drivers/tty/serial/imx.c |   13 ++++---------
>  1 files changed, 4 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
> index 827db76..7e91b3d 100644
> --- a/drivers/tty/serial/imx.c
> +++ b/drivers/tty/serial/imx.c
> @@ -1286,22 +1286,17 @@ static int serial_imx_resume(struct platform_device *dev)
>  static int serial_imx_probe_dt(struct imx_port *sport,
>  		struct platform_device *pdev)
>  {
> +	static int portnum = 0;

would it be better to use an IDR here ?

-- 
balbi

[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 490 bytes --]

[-- Attachment #2: Type: text/plain, Size: 192 bytes --]

_______________________________________________
devicetree-discuss mailing list
devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org
https://lists.ozlabs.org/listinfo/devicetree-discuss

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

* Re: [PATCH] dt: remove of_alias_get_id() reference
       [not found]   ` <20110804103336.GE17540-UiBtZHVXSwEVvW8u9ZQWYwjfymiNCTlR@public.gmane.org>
@ 2011-08-04 11:42     ` Grant Likely
  2011-08-04 11:47       ` Felipe Balbi
  2011-08-04 17:13     ` Shawn Guo
  1 sibling, 1 reply; 5+ messages in thread
From: Grant Likely @ 2011-08-04 11:42 UTC (permalink / raw)
  To: balbi-l0cyMroinI0
  Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA

On Thu, Aug 4, 2011 at 11:33 AM, Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org> wrote:
> On Thu, Aug 04, 2011 at 11:30:27AM +0100, Grant Likely wrote:
>> of_alias_get_id() is broken and being reverted.  Remove the reference
>> to it and replace with a single incrementing id number.
>>
>> There is no risk of regression here on the imx driver since the imx
>> change to use of_alias_get_id() is commit 22698aa2, "serial/imx: add
>> device tree probe support" which is new for v3.1, and it won't get
>> used unless CONFIG_OF is enabled and the board is booted using a
>> device tree.  A single incrementing integer is sufficient for now.
>>
>> Signed-off-by: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
>> Acked-by: Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>> ---
>>
>> I'm about to ask Linus to pull this patch through the devicetree/merge
>> branch along with the of_alias revert.
>>
>>  drivers/tty/serial/imx.c |   13 ++++---------
>>  1 files changed, 4 insertions(+), 9 deletions(-)
>>
>> diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
>> index 827db76..7e91b3d 100644
>> --- a/drivers/tty/serial/imx.c
>> +++ b/drivers/tty/serial/imx.c
>> @@ -1286,22 +1286,17 @@ static int serial_imx_resume(struct platform_device *dev)
>>  static int serial_imx_probe_dt(struct imx_port *sport,
>>               struct platform_device *pdev)
>>  {
>> +     static int portnum = 0;
>
> would it be better to use an IDR here ?

Hmmm, I've not looked at idr before.  Yes, it would probably be the
right thing to do.  This patch is needed to fix a build failure, but
when it is reworked for v3.2 I think idr should be considered.
Thanks!

g.

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

* Re: [PATCH] dt: remove of_alias_get_id() reference
  2011-08-04 11:42     ` Grant Likely
@ 2011-08-04 11:47       ` Felipe Balbi
  0 siblings, 0 replies; 5+ messages in thread
From: Felipe Balbi @ 2011-08-04 11:47 UTC (permalink / raw)
  To: Grant Likely; +Cc: balbi, devicetree-discuss, linux-kernel, Shawn Guo

[-- Attachment #1: Type: text/plain, Size: 1819 bytes --]

On Thu, Aug 04, 2011 at 12:42:41PM +0100, Grant Likely wrote:
> On Thu, Aug 4, 2011 at 11:33 AM, Felipe Balbi <balbi@ti.com> wrote:
> > On Thu, Aug 04, 2011 at 11:30:27AM +0100, Grant Likely wrote:
> >> of_alias_get_id() is broken and being reverted.  Remove the reference
> >> to it and replace with a single incrementing id number.
> >>
> >> There is no risk of regression here on the imx driver since the imx
> >> change to use of_alias_get_id() is commit 22698aa2, "serial/imx: add
> >> device tree probe support" which is new for v3.1, and it won't get
> >> used unless CONFIG_OF is enabled and the board is booted using a
> >> device tree.  A single incrementing integer is sufficient for now.
> >>
> >> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
> >> Acked-by: Shawn Guo <shawn.guo@linaro.org>
> >> ---
> >>
> >> I'm about to ask Linus to pull this patch through the devicetree/merge
> >> branch along with the of_alias revert.
> >>
> >>  drivers/tty/serial/imx.c |   13 ++++---------
> >>  1 files changed, 4 insertions(+), 9 deletions(-)
> >>
> >> diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
> >> index 827db76..7e91b3d 100644
> >> --- a/drivers/tty/serial/imx.c
> >> +++ b/drivers/tty/serial/imx.c
> >> @@ -1286,22 +1286,17 @@ static int serial_imx_resume(struct platform_device *dev)
> >>  static int serial_imx_probe_dt(struct imx_port *sport,
> >>               struct platform_device *pdev)
> >>  {
> >> +     static int portnum = 0;
> >
> > would it be better to use an IDR here ?
> 
> Hmmm, I've not looked at idr before.  Yes, it would probably be the
> right thing to do.  This patch is needed to fix a build failure, but
> when it is reworked for v3.2 I think idr should be considered.
> Thanks!

no problem ;-)

-- 
balbi

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 490 bytes --]

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

* Re: [PATCH] dt: remove of_alias_get_id() reference
       [not found]   ` <20110804103336.GE17540-UiBtZHVXSwEVvW8u9ZQWYwjfymiNCTlR@public.gmane.org>
  2011-08-04 11:42     ` Grant Likely
@ 2011-08-04 17:13     ` Shawn Guo
  1 sibling, 0 replies; 5+ messages in thread
From: Shawn Guo @ 2011-08-04 17:13 UTC (permalink / raw)
  To: Felipe Balbi
  Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA

On Thu, Aug 04, 2011 at 01:33:37PM +0300, Felipe Balbi wrote:
> On Thu, Aug 04, 2011 at 11:30:27AM +0100, Grant Likely wrote:
> > of_alias_get_id() is broken and being reverted.  Remove the reference
> > to it and replace with a single incrementing id number.
> > 
> > There is no risk of regression here on the imx driver since the imx
> > change to use of_alias_get_id() is commit 22698aa2, "serial/imx: add
> > device tree probe support" which is new for v3.1, and it won't get
> > used unless CONFIG_OF is enabled and the board is booted using a
> > device tree.  A single incrementing integer is sufficient for now.
> > 
> > Signed-off-by: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
> > Acked-by: Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> > ---
> > 
> > I'm about to ask Linus to pull this patch through the devicetree/merge
> > branch along with the of_alias revert.
> > 
> >  drivers/tty/serial/imx.c |   13 ++++---------
> >  1 files changed, 4 insertions(+), 9 deletions(-)
> > 
> > diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
> > index 827db76..7e91b3d 100644
> > --- a/drivers/tty/serial/imx.c
> > +++ b/drivers/tty/serial/imx.c
> > @@ -1286,22 +1286,17 @@ static int serial_imx_resume(struct platform_device *dev)
> >  static int serial_imx_probe_dt(struct imx_port *sport,
> >  		struct platform_device *pdev)
> >  {
> > +	static int portnum = 0;
> 
> would it be better to use an IDR here ?
> 

This patch is a step back to avoid using of_alias_* api since it's
been reverted.  But we need to fix the api to make it right later.
That said the serial will still go after the of_alias_get_id.

What we want is a fixed device id for specified serial instance,
which is defined by device tree (in turn by hardware), instead of
a random id.  I'm not sure that I completely understand what IDR is
exactly for.  But from the documentation in lib/idr.c, I feel it's
not what we need here.  Or can you please elaborate why it fits here?

/*
 * You call it to allocate an id (an int) an associate with that id a
 * pointer or what ever, we treat it as a (void *).  You can pass this
 * id to a user for him to pass back at a later time.  You then pass
 * that id to this code and it returns your pointer.
 */

-- 
Regards,
Shawn

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

end of thread, other threads:[~2011-08-04 17:13 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-04 10:30 [PATCH] dt: remove of_alias_get_id() reference Grant Likely
2011-08-04 10:33 ` Felipe Balbi
     [not found]   ` <20110804103336.GE17540-UiBtZHVXSwEVvW8u9ZQWYwjfymiNCTlR@public.gmane.org>
2011-08-04 11:42     ` Grant Likely
2011-08-04 11:47       ` Felipe Balbi
2011-08-04 17:13     ` Shawn Guo

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).