Re: [PATCH] Re:[BUILD FAILURE 04/04] Next June 04:PPC64 randconfig [drivers/net/ucc_geth.o]
Hi Subrata, On Wed, 10 Jun 2009 23:13:23 +0530 Subrata Modak subr...@linux.vnet.ibm.com 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 *. -- Cheers, Stephen Rothwells...@canb.auug.org.au http://www.canb.auug.org.au/~sfr/ pgptwCCllXQeJ.pgp Description: PGP signature ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: [PATCH] Re:[BUILD FAILURE 04/04] Next June 04:PPC64 randconfig [drivers/net/ucc_geth.o]
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 subr...@linux.vnet.ibm.com 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 Else gcc just builds fine: CC [M] drivers/net/ucc_geth.o This is an just an extra caution to fix both the build and warning regression(s). Regards-- Subrata ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: [PATCH] Re:[BUILD FAILURE 04/04] Next June 04:PPC64 randconfig [drivers/net/ucc_geth.o]
On Thu, 2009-06-11 at 07:26 +0530, Subrata Modak wrote: 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 subr...@linux.vnet.ibm.com 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 ^^^ And what does that warning actually mean? Your cast actually introduces a bug. cheers signature.asc Description: This is a digitally signed message part ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: [PATCH] Re:[BUILD FAILURE 04/04] Next June 04:PPC64 randconfig [drivers/net/ucc_geth.o]
On Thu, Jun 11, 2009 at 07:26:04AM +0530, Subrata Modak wrote: 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 subr...@linux.vnet.ibm.com 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 Else gcc just builds fine: CC [M] drivers/net/ucc_geth.o This is an just an extra caution to fix both the build and warning regression(s). ph needs to be const. I think the following untested (and hence un-signed-off-by) patch is closer, however I also think that the whole SGMII setup code could use the various OF helper functions better :) diff --git a/drivers/net/ucc_geth.c b/drivers/net/ucc_geth.c index e2f2e91..796253d 100644 --- a/drivers/net/ucc_geth.c +++ b/drivers/net/ucc_geth.c @@ -3603,6 +3603,7 @@ static int ucc_geth_probe(struct of_device* ofdev, const struct of_device_id *ma 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; @@ -3821,7 +3822,7 @@ static int ucc_geth_probe(struct of_device* ofdev, const struct of_device_id *ma /* Find the TBI PHY. If it's not there, we don't support SGMII */ ph = of_get_property(np, tbi-handle, NULL); if (ph) { - struct device_node *tbi = of_find_node_by_phandle(*ph); + struct device_node *tbi = of_find_node_by_phandle(*ph), *mdio; struct of_device *ofdev; struct mii_bus *bus; const unsigned int *id; Yours Tony ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: [PATCH] Re:[BUILD FAILURE 04/04] Next June 04:PPC64 randconfig [drivers/net/ucc_geth.o]
Subrata Modak subr...@linux.vnet.ibm.com 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 subr...@linux.vnet.ibm.com 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. ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev