Hi Nathan,
>On Wed, 2009-06-10 at 21:28 -0500, Nathan Lynch wrote:
>Subrata Modak <[email protected]> writes:
>
> > On Thu, 2009-06-11 at 11:05 +1000, Stephen Rothwell wrote:
> >> Hi Subrata,
> >>
> >> On Wed, 10 Jun 2009 23:13:23 +0530 Subrata Modak <[email protected]> wrote:
> >> >
> >> > /* Find the TBI PHY. If it's not there, we don't support SGMII */
> >> > - ph = of_get_property(np, "tbi-handle", NULL);
> >> > + ph = (phandle *)of_get_property(np, "tbi-handle", NULL);
> >>
> >> You don't need this cast because of_get_property() returns "void *".
> >
> > Stephen,
> >
> > True. But without this gcc complains:
> >
> > CC [M] drivers/net/ucc_geth.o
> > drivers/net/ucc_geth.c: In function ‘ucc_geth_probe’:
> > drivers/net/ucc_geth.c:3824: warning: assignment discards qualifiers
> > from pointer target type
>
> ph should be declared const phandle *. Look at other uses of
> of_get_property.
>
Ok fine. Here is a revised patch again.
Subject: [PATCH][Resend 2][BUILD FAILURE 04/04] Next June 04:PPC64 randconfig [drivers/net/ucc_geth.o]
Reference(s):
http://lkml.org/lkml/2009/6/4/241,
http://lkml.org/lkml/2009/6/10/338,
Fix the following build error:
drivers/net/ucc_geth.c: In function bucc_geth_probeb:
drivers/net/ucc_geth.c:3822: error: 'ph' undeclared (first use in this function)
drivers/net/ucc_geth.c:3822: error: (Each undeclared identifier is reported only once
drivers/net/ucc_geth.c:3822: error: for each function it appears in.)
drivers/net/ucc_geth.c:3832: error: 'mdio' undeclared (first use in this function)
make[2]: *** [drivers/net/ucc_geth.o] Error 1
Signed-off-by: Subrata Modak <[email protected]>
---
--- linux-2.6.30-rc8/drivers/net/ucc_geth.c.orig 2009-06-10 11:58:39.000000000 -0500
+++ linux-2.6.30-rc8/drivers/net/ucc_geth.c 2009-06-10 22:28:13.000000000 -0500
@@ -3595,6 +3595,8 @@ static const struct net_device_ops ucc_g
static int ucc_geth_probe(struct of_device* ofdev, const struct of_device_id *match)
{
+ struct device_node *mdio;
+ const phandle *ph;
struct device *device = &ofdev->dev;
struct device_node *np = ofdev->node;
struct net_device *dev = NULL;
---
Regards--
Subrata
Hi Li/Nathan,
On Thu, 2009-06-11 at 09:07 +0530, Subrata Modak wrote:
> Hi Nathan,
>
> >On Wed, 2009-06-10 at 21:28 -0500, Nathan Lynch wrote:
> >Subrata Modak <[email protected]> writes:
> >
> > > On Thu, 2009-06-11 at 11:05 +1000, Stephen Rothwell wrote:
> > >> Hi Subrata,
> > >>
> > >> On Wed, 10 Jun 2009 23:13:23 +0530 Subrata Modak <[email protected]> wrote:
> > >> >
> > >> > /* Find the TBI PHY. If it's not there, we don't support SGMII */
> > >> > - ph = of_get_property(np, "tbi-handle", NULL);
> > >> > + ph = (phandle *)of_get_property(np, "tbi-handle", NULL);
> > >>
> > >> You don't need this cast because of_get_property() returns "void *".
> > >
> > > Stephen,
> > >
> > > True. But without this gcc complains:
> > >
> > > CC [M] drivers/net/ucc_geth.o
> > > drivers/net/ucc_geth.c: In function bucc_geth_probeb:
> > > drivers/net/ucc_geth.c:3824: warning: assignment discards qualifiers
> > > from pointer target type
> >
> > ph should be declared const phandle *. Look at other uses of
> > of_get_property.
> >
>
> Ok fine. Here is a revised patch again.
>
> Subject: [PATCH][Resend 2][BUILD FAILURE 04/04] Next June 04:PPC64 randconfig [drivers/net/ucc_geth.o]
> Reference(s):
> http://lkml.org/lkml/2009/6/4/241,
> http://lkml.org/lkml/2009/6/10/338,
>
> Fix the following build error:
>
> drivers/net/ucc_geth.c: In function bucc_geth_probeb:
> drivers/net/ucc_geth.c:3822: error: 'ph' undeclared (first use in this function)
> drivers/net/ucc_geth.c:3822: error: (Each undeclared identifier is reported only once
> drivers/net/ucc_geth.c:3822: error: for each function it appears in.)
> drivers/net/ucc_geth.c:3832: error: 'mdio' undeclared (first use in this function)
> make[2]: *** [drivers/net/ucc_geth.o] Error 1
>
> Signed-off-by: Subrata Modak <[email protected]>
> ---
Is there anything else to be done in this patch. If this is OK, can this
be applied. I am not sure, but, i find Li Yang as the maintainer for
this in linux*/MAINTAINERS file. Kindly let me know if this patch needs
to be revisited for some other issue(s).
Regards--
Subrata
>
> --- linux-2.6.30-rc8/drivers/net/ucc_geth.c.orig 2009-06-10 11:58:39.000000000 -0500
> +++ linux-2.6.30-rc8/drivers/net/ucc_geth.c 2009-06-10 22:28:13.000000000 -0500
> @@ -3595,6 +3595,8 @@ static const struct net_device_ops ucc_g
>
> static int ucc_geth_probe(struct of_device* ofdev, const struct of_device_id *match)
> {
> + struct device_node *mdio;
> + const phandle *ph;
> struct device *device = &ofdev->dev;
> struct device_node *np = ofdev->node;
> struct net_device *dev = NULL;
>
> ---
> Regards--
> Subrata
>
On Mon, 2009-06-15 at 12:22 +0530, Subrata Modak wrote:
> Hi Li/Nathan,
>
> On Thu, 2009-06-11 at 09:07 +0530, Subrata Modak wrote:
> > Hi Nathan,
> >
> > >On Wed, 2009-06-10 at 21:28 -0500, Nathan Lynch wrote:
> > >Subrata Modak <[email protected]> writes:
> > >
> > > > On Thu, 2009-06-11 at 11:05 +1000, Stephen Rothwell wrote:
> > > >> Hi Subrata,
> > > >>
> > > >> On Wed, 10 Jun 2009 23:13:23 +0530 Subrata Modak <[email protected]> wrote:
> > > >> >
> > > >> > /* Find the TBI PHY. If it's not there, we don't support SGMII */
> > > >> > - ph = of_get_property(np, "tbi-handle", NULL);
> > > >> > + ph = (phandle *)of_get_property(np, "tbi-handle", NULL);
> > > >>
> > > >> You don't need this cast because of_get_property() returns "void *".
> > > >
> > > > Stephen,
> > > >
> > > > True. But without this gcc complains:
> > > >
> > > > CC [M] drivers/net/ucc_geth.o
> > > > drivers/net/ucc_geth.c: In function bucc_geth_probeb:
> > > > drivers/net/ucc_geth.c:3824: warning: assignment discards qualifiers
> > > > from pointer target type
> > >
> > > ph should be declared const phandle *. Look at other uses of
> > > of_get_property.
> > >
> >
> > Ok fine. Here is a revised patch again.
> >
> > Subject: [PATCH][Resend 2][BUILD FAILURE 04/04] Next June 04:PPC64 randconfig [drivers/net/ucc_geth.o]
> > Reference(s):
> > http://lkml.org/lkml/2009/6/4/241,
> > http://lkml.org/lkml/2009/6/10/338,
> >
> > Fix the following build error:
> >
> > drivers/net/ucc_geth.c: In function bucc_geth_probeb:
> > drivers/net/ucc_geth.c:3822: error: 'ph' undeclared (first use in this function)
> > drivers/net/ucc_geth.c:3822: error: (Each undeclared identifier is reported only once
> > drivers/net/ucc_geth.c:3822: error: for each function it appears in.)
> > drivers/net/ucc_geth.c:3832: error: 'mdio' undeclared (first use in this function)
> > make[2]: *** [drivers/net/ucc_geth.o] Error 1
> >
> > Signed-off-by: Subrata Modak <[email protected]>
> > ---
>
> Is there anything else to be done in this patch. If this is OK, can this
> be applied. I am not sure, but, i find Li Yang as the maintainer for
> this in linux*/MAINTAINERS file. Kindly let me know if this patch needs
> to be revisited for some other issue(s).
Li,
Any thoughts on this patch ?
Regards--
Subrata
>
> Regards--
> Subrata
>
> >
> > --- linux-2.6.30-rc8/drivers/net/ucc_geth.c.orig 2009-06-10 11:58:39.000000000 -0500
> > +++ linux-2.6.30-rc8/drivers/net/ucc_geth.c 2009-06-10 22:28:13.000000000 -0500
> > @@ -3595,6 +3595,8 @@ static const struct net_device_ops ucc_g
> >
> > static int ucc_geth_probe(struct of_device* ofdev, const struct of_device_id *match)
> > {
> > + struct device_node *mdio;
> > + const phandle *ph;
> > struct device *device = &ofdev->dev;
> > struct device_node *np = ofdev->node;
> > struct net_device *dev = NULL;
> >
> > ---
> > Regards--
> > Subrata
> >
On Jun 17, 2009, at 7:51 AM, Subrata Modak wrote:
> On Mon, 2009-06-15 at 12:22 +0530, Subrata Modak wrote:
>> Hi Li/Nathan,
>>
>> On Thu, 2009-06-11 at 09:07 +0530, Subrata Modak wrote:
>>> Hi Nathan,
>>>
>>>> On Wed, 2009-06-10 at 21:28 -0500, Nathan Lynch wrote:
>>>> Subrata Modak <[email protected]> writes:
>>>>
>>>>> On Thu, 2009-06-11 at 11:05 +1000, Stephen Rothwell wrote:
>>>>>> Hi Subrata,
>>>>>>
>>>>>> On Wed, 10 Jun 2009 23:13:23 +0530 Subrata Modak <[email protected]
>>>>>> > wrote:
>>>>>>>
>>>>>>> /* Find the TBI PHY. If it's not there, we don't support
>>>>>>> SGMII */
>>>>>>> - ph = of_get_property(np, "tbi-handle", NULL);
>>>>>>> + ph = (phandle *)of_get_property(np, "tbi-handle", NULL);
>>>>>>
>>>>>> You don't need this cast because of_get_property() returns
>>>>>> "void *".
>>>>>
>>>>> Stephen,
>>>>>
>>>>> True. But without this gcc complains:
>>>>>
>>>>> CC [M] drivers/net/ucc_geth.o
>>>>> drivers/net/ucc_geth.c: In function bucc_geth_probeb:
>>>>> drivers/net/ucc_geth.c:3824: warning: assignment discards
>>>>> qualifiers
>>>>> from pointer target type
>>>>
>>>> ph should be declared const phandle *. Look at other uses of
>>>> of_get_property.
>>>>
>>>
>>> Ok fine. Here is a revised patch again.
>>>
>>> Subject: [PATCH][Resend 2][BUILD FAILURE 04/04] Next June 04:PPC64
>>> randconfig [drivers/net/ucc_geth.o]
>>> Reference(s):
>>> http://lkml.org/lkml/2009/6/4/241,
>>> http://lkml.org/lkml/2009/6/10/338,
>>>
>>> Fix the following build error:
>>>
>>> drivers/net/ucc_geth.c: In function bucc_geth_probeb:
>>> drivers/net/ucc_geth.c:3822: error: 'ph' undeclared (first use in
>>> this function)
>>> drivers/net/ucc_geth.c:3822: error: (Each undeclared identifier is
>>> reported only once
>>> drivers/net/ucc_geth.c:3822: error: for each function it appears
>>> in.)
>>> drivers/net/ucc_geth.c:3832: error: 'mdio' undeclared (first use
>>> in this function)
>>> make[2]: *** [drivers/net/ucc_geth.o] Error 1
>>>
>>> Signed-off-by: Subrata Modak <[email protected]>
>>> ---
>>
>> Is there anything else to be done in this patch. If this is OK, can
>> this
>> be applied. I am not sure, but, i find Li Yang as the maintainer for
>> this in linux*/MAINTAINERS file. Kindly let me know if this patch
>> needs
>> to be revisited for some other issue(s).
>
> Li,
>
> Any thoughts on this patch ?
>
>
> Regards--
> Subrata
>
>>
>> Regards--
>> Subrata
>>
>>>
>>> --- linux-2.6.30-rc8/drivers/net/ucc_geth.c.orig 2009-06-10
>>> 11:58:39.000000000 -0500
>>> +++ linux-2.6.30-rc8/drivers/net/ucc_geth.c 2009-06-10
>>> 22:28:13.000000000 -0500
>>> @@ -3595,6 +3595,8 @@ static const struct net_device_ops ucc_g
>>>
>>> static int ucc_geth_probe(struct of_device* ofdev, const struct
>>> of_device_id *match)
>>> {
>>> + struct device_node *mdio;
>>> + const phandle *ph;
>>> struct device *device = &ofdev->dev;
>>> struct device_node *np = ofdev->node;
>>> struct net_device *dev = NULL;
>>>
>>> ---
>>> Regards--
>>> Subrata
>>>
I'm confused by the proposed fix as we already have *mdio & *ph
defined in this function:
static int ucc_geth_probe(struct of_device* ofdev, const struct
of_device_id *match)
{
struct device *device = &ofdev->dev;
struct device_node *np = ofdev->node;
struct device_node *mdio;
struct net_device *dev = NULL;
struct ucc_geth_private *ugeth = NULL;
struct ucc_geth_info *ug_info;
struct resource res;
struct device_node *phy;
int err, ucc_num, max_speed = 0;
const phandle *ph;
const u32 *fixed_link;
const unsigned int *prop;
const char *sprop;
const void *mac_addr;
...
- k-
Hi Kumar,
On Wed, 17 Jun 2009 08:07:47 -0500 Kumar Gala <[email protected]> wrote:
>
>
> I'm confused by the proposed fix as we already have *mdio & *ph
> defined in this function:
Which tree are you looking at? Linus' tree, and linux-next, do not have
those local variables ...
--
Cheers,
Stephen Rothwell [email protected]
http://www.canb.auug.org.au/~sfr/
On Wed, 17 Jun 2009 23:23:41 +1000 Stephen Rothwell <[email protected]> wrote:
>
> Hi Kumar,
>
> On Wed, 17 Jun 2009 08:07:47 -0500 Kumar Gala <[email protected]> wrote:
> >
> >
> > I'm confused by the proposed fix as we already have *mdio & *ph
> > defined in this function:
>
> Which tree are you looking at? Linus' tree, and linux-next, do not have
> those local variables ...
Hmmm, commit 0b9da337dca972e7a4144e298ec3adb8f244d4a4 ("net: Rework
ucc_geth driver to use of_mdio infrastructure") removed the locals along
with their usages, then commit 047584ce94108012288554a5f84585d792cc7f8f
("net/ucc_geth: Add SGMII support for UEC GETH driver") added more uses
without adding the variables back.
Here is the patch again:
From: Subrata Modak <[email protected]>
Subject: [PATCH] Fix build error in ucc_geth.c
Fix the following build error:
drivers/net/ucc_geth.c: In function bucc_geth_probeb:
drivers/net/ucc_geth.c:3822: error: 'ph' undeclared (first use in this function)
drivers/net/ucc_geth.c:3822: error: (Each undeclared identifier is reported only once
drivers/net/ucc_geth.c:3822: error: for each function it appears in.)
drivers/net/ucc_geth.c:3832: error: 'mdio' undeclared (first use in this function)
make[2]: *** [drivers/net/ucc_geth.o] Error 1
Signed-off-by: Subrata Modak <[email protected]>
--- linux-2.6.30-rc8/drivers/net/ucc_geth.c.orig 2009-06-10 11:58:39.000000000 -0500
+++ linux-2.6.30-rc8/drivers/net/ucc_geth.c 2009-06-10 22:28:13.000000000 -0500
@@ -3595,6 +3595,8 @@ static const struct net_device_ops ucc_g
static int ucc_geth_probe(struct of_device* ofdev, const struct of_device_id *match)
{
+ struct device_node *mdio;
+ const phandle *ph;
struct device *device = &ofdev->dev;
struct device_node *np = ofdev->node;
struct net_device *dev = NULL;
--
Cheers,
Stephen Rothwell [email protected]
http://www.canb.auug.org.au/~sfr/
On Jun 17, 2009, at 8:34 AM, Stephen Rothwell wrote:
> On Wed, 17 Jun 2009 23:23:41 +1000 Stephen Rothwell <[email protected]
> > wrote:
>>
>> Hi Kumar,
>>
>> On Wed, 17 Jun 2009 08:07:47 -0500 Kumar Gala <[email protected]
>> > wrote:
>>>
>>>
>>> I'm confused by the proposed fix as we already have *mdio & *ph
>>> defined in this function:
>>
>> Which tree are you looking at? Linus' tree, and linux-next, do not
>> have
>> those local variables ...
>
> Hmmm, commit 0b9da337dca972e7a4144e298ec3adb8f244d4a4 ("net: Rework
> ucc_geth driver to use of_mdio infrastructure") removed the locals
> along
> with their usages, then commit
> 047584ce94108012288554a5f84585d792cc7f8f
> ("net/ucc_geth: Add SGMII support for UEC GETH driver") added more
> uses
> without adding the variables back.
>
> Here is the patch again:
>
> From: Subrata Modak <[email protected]>
> Subject: [PATCH] Fix build error in ucc_geth.c
>
> Fix the following build error:
>
> drivers/net/ucc_geth.c: In function bucc_geth_probeb:
> drivers/net/ucc_geth.c:3822: error: 'ph' undeclared (first use in
> this function)
> drivers/net/ucc_geth.c:3822: error: (Each undeclared identifier is
> reported only once
> drivers/net/ucc_geth.c:3822: error: for each function it appears in.)
> drivers/net/ucc_geth.c:3832: error: 'mdio' undeclared (first use in
> this function)
> make[2]: *** [drivers/net/ucc_geth.o] Error 1
>
> Signed-off-by: Subrata Modak <[email protected]>
>
> --- linux-2.6.30-rc8/drivers/net/ucc_geth.c.orig 2009-06-10
> 11:58:39.000000000 -0500
> +++ linux-2.6.30-rc8/drivers/net/ucc_geth.c 2009-06-10
> 22:28:13.000000000 -0500
> @@ -3595,6 +3595,8 @@ static const struct net_device_ops ucc_g
>
> static int ucc_geth_probe(struct of_device* ofdev, const struct
> of_device_id *match)
> {
> + struct device_node *mdio;
> + const phandle *ph;
> struct device *device = &ofdev->dev;
> struct device_node *np = ofdev->node;
> struct net_device *dev = NULL;
ah... was looking at powerpc next which hasn't pulled in linus's
latest tree w/netdev updates.
- k
On Wed, Jun 17, 2009 at 7:34 AM, Stephen Rothwell<[email protected]> wrote:
> On Wed, 17 Jun 2009 23:23:41 +1000 Stephen Rothwell <[email protected]> wrote:
>>
>> Hi Kumar,
>>
>> On Wed, 17 Jun 2009 08:07:47 -0500 Kumar Gala <[email protected]> wrote:
>> >
>> >
>> > I'm confused by the proposed fix as we already have *mdio & *ph
>> > defined in this function:
>>
>> Which tree are you looking at? ?Linus' tree, and linux-next, do not have
>> those local variables ...
>
> Hmmm, commit 0b9da337dca972e7a4144e298ec3adb8f244d4a4 ("net: Rework
> ucc_geth driver to use of_mdio infrastructure") removed the locals along
> with their usages, then commit 047584ce94108012288554a5f84585d792cc7f8f
> ("net/ucc_geth: Add SGMII support for UEC GETH driver") added more uses
> without adding the variables back.
>
> Here is the patch again:
>
> From: Subrata Modak <[email protected]>
> Subject: [PATCH] Fix build error in ucc_geth.c
>
> Fix the following build error:
>
> drivers/net/ucc_geth.c: In function bucc_geth_probeb:
> drivers/net/ucc_geth.c:3822: error: 'ph' undeclared (first use in this function)
> drivers/net/ucc_geth.c:3822: error: (Each undeclared identifier is reported only once
> drivers/net/ucc_geth.c:3822: error: for each function it appears in.)
> drivers/net/ucc_geth.c:3832: error: 'mdio' undeclared (first use in this function)
> make[2]: *** [drivers/net/ucc_geth.o] Error 1
>
> Signed-off-by: Subrata Modak <[email protected]>
>
> --- linux-2.6.30-rc8/drivers/net/ucc_geth.c.orig ? ? ? ?2009-06-10 11:58:39.000000000 -0500
> +++ linux-2.6.30-rc8/drivers/net/ucc_geth.c ? ? 2009-06-10 22:28:13.000000000 -0500
> @@ -3595,6 +3595,8 @@ static const struct net_device_ops ucc_g
>
> ?static int ucc_geth_probe(struct of_device* ofdev, const struct of_device_id *match)
> ?{
> + ? ? ? struct device_node *mdio;
> + ? ? ? const phandle *ph;
> ? ? ? ?struct device *device = &ofdev->dev;
> ? ? ? ?struct device_node *np = ofdev->node;
> ? ? ? ?struct net_device *dev = NULL;
Ah, this might not be the right fix then. I'll look.
g.
--
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
On Wed, Jun 17, 2009 at 11:29 AM, Grant Likely<[email protected]> wrote:
> On Wed, Jun 17, 2009 at 7:34 AM, Stephen Rothwell<[email protected]> wrote:
>> On Wed, 17 Jun 2009 23:23:41 +1000 Stephen Rothwell <[email protected]> wrote:
>>>
>>> Hi Kumar,
>>>
>>> On Wed, 17 Jun 2009 08:07:47 -0500 Kumar Gala <[email protected]> wrote:
>>> >
>>> >
>>> > I'm confused by the proposed fix as we already have *mdio & *ph
>>> > defined in this function:
>>>
>>> Which tree are you looking at? ?Linus' tree, and linux-next, do not have
>>> those local variables ...
>>
>> Hmmm, commit 0b9da337dca972e7a4144e298ec3adb8f244d4a4 ("net: Rework
>> ucc_geth driver to use of_mdio infrastructure") removed the locals along
>> with their usages, then commit 047584ce94108012288554a5f84585d792cc7f8f
>> ("net/ucc_geth: Add SGMII support for UEC GETH driver") added more uses
>> without adding the variables back.
>>
>> Here is the patch again:
>>
>> From: Subrata Modak <[email protected]>
>> Subject: [PATCH] Fix build error in ucc_geth.c
>>
>> Fix the following build error:
>>
>> drivers/net/ucc_geth.c: In function bucc_geth_probeb:
>> drivers/net/ucc_geth.c:3822: error: 'ph' undeclared (first use in this function)
>> drivers/net/ucc_geth.c:3822: error: (Each undeclared identifier is reported only once
>> drivers/net/ucc_geth.c:3822: error: for each function it appears in.)
>> drivers/net/ucc_geth.c:3832: error: 'mdio' undeclared (first use in this function)
>> make[2]: *** [drivers/net/ucc_geth.o] Error 1
>>
>> Signed-off-by: Subrata Modak <[email protected]>
>>
>> --- linux-2.6.30-rc8/drivers/net/ucc_geth.c.orig ? ? ? ?2009-06-10 11:58:39.000000000 -0500
>> +++ linux-2.6.30-rc8/drivers/net/ucc_geth.c ? ? 2009-06-10 22:28:13.000000000 -0500
>> @@ -3595,6 +3595,8 @@ static const struct net_device_ops ucc_g
>>
>> ?static int ucc_geth_probe(struct of_device* ofdev, const struct of_device_id *match)
>> ?{
>> + ? ? ? struct device_node *mdio;
>> + ? ? ? const phandle *ph;
>> ? ? ? ?struct device *device = &ofdev->dev;
>> ? ? ? ?struct device_node *np = ofdev->node;
>> ? ? ? ?struct net_device *dev = NULL;
>
> Ah, this might not be the right fix then. ?I'll look.
Yeah, this is not the right fix. The SGMII change doesn't mesh well
with the of_mdio changes and needed some rewriting. I'm about to post
a patch (compile tested only) which should make things happy.
--
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.