[PATCH 00/12] ARM: OMAP2+: hwmod: remove link arrays
Paul Walmsley
paul at pwsan.com
Wed Mar 7 21:38:21 EST 2012
The hwmod code and data format was originally designed to minimize
boot time and for autogenerated data files. Compactness was traded
for precomputation. Now that the emphasis is on reducing the number
of lines in the OMAP source tree, this trade can be reversed.
This series removes the precomputed "link arrays" from the hwmod data,
and converts the code to register IP blocks by their interconnects,
rather than directly. This results in a significant reduction in
lines of source, at the cost of some additional boot time. The change
also makes it easier to share more IP block data across SoCs.
This series has a dependency on the 'hwmod_data_cleanup_3.4' branch
posted earlier.
This series is also available via git://git.pwsan.com/linux-2.6 in the
"hwmod_remove_link_arrays_cleanup_3.4" branch.
Boot-tested on N800. Boot and suspend-tested on OMAP35xx Beagleboard
and OMAP44xx Pandaboard.
- Paul
---
hwmod_remove_link_arrays_cleanup_3.4
text data bss dec hex filename
3831449 297100 5382832 9511381 9121d5 vmlinux.omap2plus_defconfig.orig
3832257 297708 5382864 9512829 91277d vmlinux.omap2plus_defconfig
Paul Walmsley (12):
ARM: OMAP2+: hwmod: add _find_mpu_rt_port()
ARM: OMAP2+: hwmod: add function to iterate over struct omap_hwmod_ocp_if
ARM: OMAP2+: hwmod: consolidate finding the MPU port index and storing it
ARM: OMAP2+: hwmod: add support for link registration
ARM: OMAP2+: hwmod data: convert to link registration
ARM: OMAP: hwmod: remove code support for direct hwmod registration
ARM: OMAP2+: hwmod data: remove forward declarations, reorganize
ARM: OMAP2xxx: hwmod data: share common hwmods between OMAP2420 and OMAP2430
ARM: OMAP2xxx: hwmod data: share common interface data
ARM: OMAP3: hwmod data: fix IVA interface clock
ARM: OMAP3: hwmod data: add IVA hard reset lines, main clock, clockdomain
ARM: OMAP2xxx: hwmod data: start to fix the IVA1, IVA2 and DSP
arch/arm/mach-omap2/omap_hwmod.c | 410 +-
arch/arm/mach-omap2/omap_hwmod_2420_data.c | 1563 +-----
arch/arm/mach-omap2/omap_hwmod_2430_data.c | 2316 ++-------
.../mach-omap2/omap_hwmod_2xxx_interconnect_data.c | 266 +
arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c | 562 ++
arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 5047 +++++++++-----------
arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 4882 ++++++++-----------
arch/arm/mach-omap2/omap_hwmod_common_data.h | 71
arch/arm/plat-omap/include/plat/omap_hwmod.h | 31
9 files changed, 6324 insertions(+), 8824 deletions(-)
More information about the linux-arm-kernel
mailing list