mvbc_p board: build warnings
Hi,
I'm trying to clean up the build warnings for the mvbc_p board. I've succeded with all but this one:
mvbc_p.c: In function 'mvbc_init_gpio':
mvbc_p.c:124: warning: dereferencing type-punned pointer will break strict-aliasing rules
This relates to the following code:
115 out_be32(&gpio->simple_ddr, SIMPLE_DDR); 116 out_be32(&gpio->simple_dvo, SIMPLE_DVO); 117 out_be32(&gpio->simple_ode, SIMPLE_ODE); 118 out_be32(&gpio->simple_gpioe, SIMPLE_GPIOEN); <== volatile u8 outo_gpioe; 119 120 out_be32((u32*)&gpio->sint_ode, SINT_ODE); <== volatile u8 sint_ode; 121 out_be32((u32*)&gpio->sint_ddr, SINT_DDR); <== volatile u8 sint_ddr; 122 out_be32((u32*)&gpio->sint_dvo, SINT_DVO); <== volatile u8 sint_dvo; 123 out_be32((u32*)&gpio->sint_inten, SINT_INTEN); <== volatile u8 sint_inten; 124 out_be32((u32*)&gpio->sint_itype, SINT_ITYPE); <== volatile u16 sint_itype; 125 out_be32((u32*)&gpio->sint_gpioe, SINT_GPIOEN); <== volatile u8 outo_gpioe;
I don't know why the warning is only issued for the "u16" type and not also for the "u8" ones, but anyway: Is the casting to "u32*" and using out_be32() here really correct?
I would expect to see some out_be8() and one out_be16() here?
Best regards,
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de "In Christianity neither morality nor religion come into contact with reality@any point." - Friedrich Nietzsche
Wolfgang,
thanks - I'll fix it on monday/tuesday and send a patch after testing the -rc2.
regards,
Andr?
Quoted 27 lines · Wolfgang Denk
Hi,
I'm trying to clean up the build warnings for the
mvbc_pboard. I've succeded with all but this one:
mvbc_p.c: In function 'mvbc_init_gpio':
mvbc_p.c:124: warning: dereferencing type-punned pointer will break strict-aliasing rulesThis relates to the following code:
115 out_be32(&gpio->simple_ddr, SIMPLE_DDR); 116 out_be32(&gpio->simple_dvo, SIMPLE_DVO); 117 out_be32(&gpio->simple_ode, SIMPLE_ODE); 118 out_be32(&gpio->simple_gpioe, SIMPLE_GPIOEN); <== volatile u8 outo_gpioe; 119 120 out_be32((u32*)&gpio->sint_ode, SINT_ODE); <== volatile u8 sint_ode; 121 out_be32((u32*)&gpio->sint_ddr, SINT_DDR); <== volatile u8 sint_ddr; 122 out_be32((u32*)&gpio->sint_dvo, SINT_DVO); <== volatile u8 sint_dvo; 123 out_be32((u32*)&gpio->sint_inten, SINT_INTEN); <== volatile u8 sint_inten; 124 out_be32((u32*)&gpio->sint_itype, SINT_ITYPE); <== volatile u16 sint_itype; 125 out_be32((u32*)&gpio->sint_gpioe, SINT_GPIOEN); <== volatile u8 outo_gpioe;I don't know why the warning is only issued for the "u16" type and not also for the "u8" ones, but anyway: Is the casting to "u32*" and using
out_be32()here really correct?
Quoted 6 lines
I would expect to see some
out_be8()and oneout_be16()here?Best regards,
Wolfgang Denk
MATRIX VISION GmbH, Talstra?e 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Gesch?ftsf?hrer: Gerhard Thullner, Werner Armingeon, Uwe Furtner
Dear Andr?,
Quoted 3 lines · in message <[email protected]> you wrote:
thanks - I'll fix it on monday/tuesday and send a patch after testing the -rc2.
Maybe I have missed your patch?
This problem is still open!
I have to decide if you fix this now, i. e. wait with the 1.3.4 release, or later.
Best regards,
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de While most peoples' opinions change, the conviction of their correct- ness never does.
Wolfgang,
sorry for this - it's been quite a mess before my holiday.
I'll be back in office next week and won't be able to fix it before mid of next week.
I have absolutely no problem if you do not wait for the patch. Maybe there will be other changes also ...
regards,
Andr?
Quoted 10 lines · Wolfgang Denk
Dear Andr?,
Quoted 3 lines · in message <[email protected]> you wrote:
thanks - I'll fix it on monday/tuesday and send a patch after testing the -rc2.
Maybe I have missed your patch?
Quoted 10 lines
This problem is still open!
I have to decide if you fix this now, i. e. wait with the 1.3.4 release, or later.
Best regards,
Wolfgang Denk
MATRIX VISION GmbH, Talstra?e 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Gesch?ftsf?hrer: Gerhard Thullner, Werner Armingeon, Uwe Furtner
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.denx.de/pipermail/u-boot/attachments/20080812/9a8cc143/attachment.htm
PATCH 1/1 : fix mvbc_p board build warnings
In reply to Wolfgang Denkfix build warnings @ mvBC-P board by using correct types, i.e. change out_be32 to out_be16 and out_8 accordingly.
---
Wolfgang,
sorry for the delay - I've been out of office.
regards,
Andre
MATRIX VISION GmbH, Talstra?e 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Gesch?ftsf?hrer: Gerhard Thullner, Werner Armingeon, Uwe Furtner
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch_mvbc_p_types
Url: http://lists.denx.de/pipermail/u-boot/attachments/20080818/3d7753af/attachment.txt
Wolfgang Denk
AppliedPATCH 1/1 : fix mvbc_p board build warnings
Dear Andre Schwarz,
Quoted 9 lines · In message <[email protected]> you wrote:
This is a multi-part message in MIME format.
--------------020103080003000708050406
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bitfix build warnings @ mvBC-P board by using correct types, i.e. change
out_be32toout_be16andout_8accordingly.Signed-off-by Andre Schwarz <[email protected]>
Applied, thanks.
Best regards,
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de Respect is a rational process -- McCoy, "The Galileo Seven", stardate 2822.3