[PATCH 00/17] Massive OMAP730/OMAP850 cleanup
Tony Lindgren
tony at atomide.com
Wed Oct 14 17:12:07 EDT 2009
* Alistair Buxton <a.j.buxton at gmail.com> [091014 13:03]:
> Reposting the full series for review. Assuming this is all OK would it
> be a good idea to merge the config variables into a single
> CONFIG_ARCH_OMAP7XX? There doesn't seem to be any reason to have both.
> Original description follows.
Yeah, those should be merged too. Let's do that as a separate patch.
Regards,
Tony
>
>
> Hello from the Linwizard project,
>
> We have been working on supporting omap850 smartphones from HTC such
> as Wizard, Herald etc. We have found that omap730 and omap850 are
> almost exactly the same. As far as what is supported in linux-omap so
> far, they are identical. Currently there are seperate code paths for
> 730 and 850, and this is causing us a lot of problems when one is
> changed and the other isn't. I also noticed that OMAP F-Sample board
> uses ARCH_OMAP730 even though it has a OMAP850 SoC.
>
> In order to try to clean this up I have produced a patch series which
> removes all cpu_is_omap730/850 and replaces them with unified
> cpu_is_omap7xx() blocks, and similarly merges CONFIG checks. Here is a
> random example:
>
> -#ifdef CONFIG_ARCH_OMAP730
> - if (cpu_is_omap730()) {
> +#if defined(CONFIG_ARCH_OMAP730) || defined(CONFIG_ARCH_OMAP850)
> + if (cpu_is_omap7xx()) {
> irq_banks = omap730_irq_banks;
> irq_bank_count = ARRAY_SIZE(omap730_irq_banks);
> }
> #endif
> -#ifdef CONFIG_ARCH_OMAP850
> - if (cpu_is_omap850()) {
> - irq_banks = omap850_irq_banks;
> - irq_bank_count = ARRAY_SIZE(omap850_irq_banks);
> - }
> -#endif
>
> Drilling down through the variables shows they are always equivalent
> for 730 and 850, except where there is a bug.
>
> This makes several bugs go away for us on omap850, including the
> MPUIO_VBASE bug, and the lack of working IRQs - since these bugs arn't
> in the 730 paths. It would hopefully prevent similar bugs from showing
> up in the future too.
>
> Alistair Buxton (16):
> OMAP7XX: Serial: Remove duplicate omap850 code
> OMAP7XX: GPIO: Remove duplicate omap850 code
> OMAP7XX: IO: Remove duplicate omap850 code
> OMAP7XX: Mux: Remove duplicate omap850 code
> OMAP7XX: USB: Remove duplicate omap850 code
> OMAP7XX: IRQ: Remove duplicate omap850 code
> OMAP7XX: PM: Add omap850 support
> OMAP7XX: Clocks: Add omap850 support
> OMAP7XX: McBSP: Add omap850 support
> OMAP7XX: Create omap7xx.h
> OMAP7XX: Update core omap1 files to use omap7xx.h
> OMAP7XX: Replace omap730 references in irqs.h and all users
> OMAP7XX: Rename all the rest of the omap730 references in omap1 core
> OMAP7XX: omap_uwire.c: Convert to omap7xx.h
> OMAP850: PM: Add an ARCH_OMAP850 check
> OMAP850: Fix zImage booting
>
> Angelo Arrifano (1):
> OMAP7XX: Clocks: Add ck_ref and armxor
>
> arch/arm/mach-omap1/board-fsample.c | 18 +-
> arch/arm/mach-omap1/board-perseus2.c | 18 +-
> arch/arm/mach-omap1/clock.c | 24 ++--
> arch/arm/mach-omap1/io.c | 45 ++----
> arch/arm/mach-omap1/irq.c | 32 +---
> arch/arm/mach-omap1/mcbsp.c | 32 ++--
> arch/arm/mach-omap1/mux.c | 70 +++-----
> arch/arm/mach-omap1/pm.c | 100 ++++++------
> arch/arm/mach-omap1/pm.h | 53 +++---
> arch/arm/mach-omap1/serial.c | 13 +-
> arch/arm/mach-omap1/sleep.S | 22 ++--
> arch/arm/plat-omap/devices.c | 22 ++--
> arch/arm/plat-omap/gpio.c | 227 +++++++------------------
> arch/arm/plat-omap/include/mach/entry-macro.S | 8 +-
> arch/arm/plat-omap/include/mach/hardware.h | 2 +-
> arch/arm/plat-omap/include/mach/irqs.h | 229 ++++++++-----------------
> arch/arm/plat-omap/include/mach/mcbsp.h | 6 +-
> arch/arm/plat-omap/include/mach/mux.h | 100 +++--------
> arch/arm/plat-omap/include/mach/omap7xx.h | 104 +++++++++++
> arch/arm/plat-omap/include/mach/uncompress.h | 3 +-
> arch/arm/plat-omap/io.c | 14 +-
> arch/arm/plat-omap/usb.c | 10 +-
> drivers/spi/omap_uwire.c | 8 +-
> 23 files changed, 480 insertions(+), 680 deletions(-)
> create mode 100644 arch/arm/plat-omap/include/mach/omap7xx.h
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
More information about the linux-arm-kernel
mailing list