[U-Boot] [PATCH v2 00/32] Initial sparse fix series

Tom Rini
2012-11-04T18:30:25Z

On Mon, Oct 29, 2012 at 06:34:22PM -0500, Kim Phillips wrote:

> [v2 summary: zero inter-commit build errors on all power, arm,
> and mips boards (which means some patches got merged into patch #1),
> checkpatch fixes, and postponement of the libfdt changes, primarily
> to get the bulk of these in during this merge window]
>
> This 25-patch series only begins to address making u-boot source more
> 'sparseable,' or sparse-clean, ultimately to catch type, address space,
> and endianness mismatches and generally improve code quality. E.g.,
> a couple of endianness bugs are found in of_bus_default_translate()
> and fdt_get_base_address() (not includeded in this v2 series - fixes
> pending libfdt patch for dtc).
>
> Patch 1 adds endianness attributes to byteorder.h helpers, e.g.,
> cpu_to_be32(). This is required for correct operation and prevents
> sparse from emitting false-positives. It comes with the side effect
> of breaking many builds, because u-boot has various places where
> attributes were being defined differently, so it includes fixes for those.
>
> Patches 2-5 fix issues where u-boot had imported linux header code
> and the importer simply force-#defined sparse-specific attributes to
> nothing, to allow u-boot to build without redefined warnings.
>
> Patches 6-7 are general sparse fixes to common powerpc areas.
>
> Patches 8-10 are general sparse fixes to common header areas (e.g.,
> patch 8 changes the long-standing u-boot image header types to __be32,
> as per u-boot image definition).
>
> Patches 11-12 addresses sparse fixes for the net subsystem.
>
> Patches 13-14 do the same for lib/.
>
> Patches 15-17 for Power Arch's mpc8xxx, 83xx, and 85xx subsystems.
>
> Last but not least, patches 18-25 attempt to clean up various drivers.
>
> Note that the two libfdt patches present in series one are omitted here
> for u-boot merge window, they will be resubmitted after dtc have merged
> a libfdt-dependent patch.
>
> For authors of new patches not willing to sift through the still quite
> large sparse output for their board/platform, though interested in what
> sparse has to say about their new code, it is recommended to build
> with make C=1 after changes such that sparse output will only include
> newly built code.
>
> fyi, I've pushed the series onto the u-boot-mpc83xx tree,
> 'sparsefixes' branch:
>
> http://git.denx.de/u-boot.git/?p=u-boot/u-boot-mpc83xx.git;a=shortlog;h=refs/heads/sparsefixes
>
> All power, arm, mips boards tested.

With a small change in #1 so that it applied correctly, applied to
u-boot/master, thanks!

--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20121104/6ae94488/attachment.pgp>