obj-$(CONFIG_SMP) += platsmp.o
  obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o
  obj-$(CONFIG_LOCAL_TIMERS) += localtimer.o
 -obj-$(CONFIG_SOC_IMX6Q) += clock-imx6q.o mach-imx6q.o pm-imx6q.o
 +obj-$(CONFIG_SOC_IMX6Q) += clock-imx6q.o mach-imx6q.o
 +
 +ifeq ($(CONFIG_PM),y)
 +obj-$(CONFIG_SOC_IMX6Q) += pm-imx6q.o
 +endif
+ 
+ # i.MX5 based machines
+ obj-$(CONFIG_MACH_MX51_BABBAGE) += mach-mx51_babbage.o
+ obj-$(CONFIG_MACH_MX51_3DS) += mach-mx51_3ds.o
+ obj-$(CONFIG_MACH_MX53_EVK) += mach-mx53_evk.o
+ obj-$(CONFIG_MACH_MX53_SMD) += mach-mx53_smd.o
+ obj-$(CONFIG_MACH_MX53_LOCO) += mach-mx53_loco.o
+ obj-$(CONFIG_MACH_MX53_ARD) += mach-mx53_ard.o
+ obj-$(CONFIG_MACH_EUKREA_CPUIMX51) += mach-cpuimx51.o
+ obj-$(CONFIG_MACH_EUKREA_MBIMX51_BASEBOARD) += eukrea_mbimx51-baseboard.o
+ obj-$(CONFIG_MACH_EUKREA_CPUIMX51SD) += mach-cpuimx51sd.o
+ obj-$(CONFIG_MACH_EUKREA_MBIMXSD51_BASEBOARD) += eukrea_mbimxsd-baseboard.o
+ obj-$(CONFIG_MX51_EFIKA_COMMON) += mx51_efika.o
+ obj-$(CONFIG_MACH_MX51_EFIKAMX) += mach-mx51_efikamx.o
+ obj-$(CONFIG_MACH_MX51_EFIKASB) += mach-mx51_efikasb.o
+ obj-$(CONFIG_MACH_MX50_RDP) += mach-mx50_rdp.o
+ 
+ obj-$(CONFIG_MACH_IMX51_DT) += imx51-dt.o
+ obj-$(CONFIG_MACH_IMX53_DT) += imx53-dt.o
 
 -zreladdr-$(CONFIG_ARCH_MX1)   += 0x08008000
 -params_phys-$(CONFIG_ARCH_MX1)        := 0x08000100
 -initrd_phys-$(CONFIG_ARCH_MX1)        := 0x08800000
 +zreladdr-$(CONFIG_SOC_IMX1)   += 0x08008000
 +params_phys-$(CONFIG_SOC_IMX1)        := 0x08000100
 +initrd_phys-$(CONFIG_SOC_IMX1)        := 0x08800000
  
 -zreladdr-$(CONFIG_MACH_MX21)  += 0xC0008000
 -params_phys-$(CONFIG_MACH_MX21)       := 0xC0000100
 -initrd_phys-$(CONFIG_MACH_MX21)       := 0xC0800000
 +zreladdr-$(CONFIG_SOC_IMX21)  += 0xC0008000
 +params_phys-$(CONFIG_SOC_IMX21)       := 0xC0000100
 +initrd_phys-$(CONFIG_SOC_IMX21)       := 0xC0800000
  
 -zreladdr-$(CONFIG_ARCH_MX25)  += 0x80008000
 -params_phys-$(CONFIG_ARCH_MX25)       := 0x80000100
 -initrd_phys-$(CONFIG_ARCH_MX25)       := 0x80800000
 +zreladdr-$(CONFIG_SOC_IMX25)  += 0x80008000
 +params_phys-$(CONFIG_SOC_IMX25)       := 0x80000100
 +initrd_phys-$(CONFIG_SOC_IMX25)       := 0x80800000
  
 -zreladdr-$(CONFIG_MACH_MX27)  += 0xA0008000
 -params_phys-$(CONFIG_MACH_MX27)       := 0xA0000100
 -initrd_phys-$(CONFIG_MACH_MX27)       := 0xA0800000
 +zreladdr-$(CONFIG_SOC_IMX27)  += 0xA0008000
 +params_phys-$(CONFIG_SOC_IMX27)       := 0xA0000100
 +initrd_phys-$(CONFIG_SOC_IMX27)       := 0xA0800000
  
 -zreladdr-$(CONFIG_ARCH_MX3)   += 0x80008000
 -params_phys-$(CONFIG_ARCH_MX3)        := 0x80000100
 -initrd_phys-$(CONFIG_ARCH_MX3)        := 0x80800000
 +zreladdr-$(CONFIG_SOC_IMX31)  += 0x80008000
 +params_phys-$(CONFIG_SOC_IMX31)       := 0x80000100
 +initrd_phys-$(CONFIG_SOC_IMX31)       := 0x80800000
 +
 +zreladdr-$(CONFIG_SOC_IMX35)  += 0x80008000
 +params_phys-$(CONFIG_SOC_IMX35)       := 0x80000100
 +initrd_phys-$(CONFIG_SOC_IMX35)       := 0x80800000
  
+ zreladdr-$(CONFIG_SOC_IMX50)  += 0x70008000
+ params_phys-$(CONFIG_SOC_IMX50)       := 0x70000100
+ initrd_phys-$(CONFIG_SOC_IMX50)       := 0x70800000
+ 
+ zreladdr-$(CONFIG_SOC_IMX51)  += 0x90008000
+ params_phys-$(CONFIG_SOC_IMX51)       := 0x90000100
+ initrd_phys-$(CONFIG_SOC_IMX51)       := 0x90800000
+ 
+ zreladdr-$(CONFIG_SOC_IMX53)  += 0x70008000
+ params_phys-$(CONFIG_SOC_IMX53)       := 0x70000100
+ initrd_phys-$(CONFIG_SOC_IMX53)       := 0x70800000
+ 
  zreladdr-$(CONFIG_SOC_IMX6Q)  += 0x10008000
  params_phys-$(CONFIG_SOC_IMX6Q)       := 0x10000100
  initrd_phys-$(CONFIG_SOC_IMX6Q)       := 0x10800000
 
          and ARMv5 SoCs
  
  config ARCH_IMX_V6_V7
-       bool "i.MX3, i.MX6"
+       bool "i.MX3, i.MX5, i.MX6"
        select AUTO_ZRELADDR if !ZBOOT_ROM
        select ARM_PATCH_PHYS_VIRT
 +      select MIGHT_HAVE_CACHE_L2X0
        help
-         This enables support for systems based on the Freescale i.MX3 and i.MX6
-         family.
- 
- config ARCH_MX5
-       bool "i.MX50, i.MX51, i.MX53"
-       select AUTO_ZRELADDR if !ZBOOT_ROM
-       select ARM_PATCH_PHYS_VIRT
-       help
-         This enables support for machines using Freescale's i.MX50 and i.MX53
-         processors.
+         This enables support for systems based on the Freescale i.MX3, i.MX5
+         and i.MX6 family.
  
  endchoice