obj-$(CONFIG_MFD_LOCHNAGAR)    += lochnagar-i2c.o
 
-obj-$(CONFIG_MFD_ARIZONA)      += arizona-core.o
-obj-$(CONFIG_MFD_ARIZONA)      += arizona-irq.o
+arizona-objs                   := arizona-core.o arizona-irq.o
+obj-$(CONFIG_MFD_ARIZONA)      += arizona.o
 obj-$(CONFIG_MFD_ARIZONA_I2C)  += arizona-i2c.o
 obj-$(CONFIG_MFD_ARIZONA_SPI)  += arizona-spi.o
 ifeq ($(CONFIG_MFD_WM5102),y)
-obj-$(CONFIG_MFD_ARIZONA)      += wm5102-tables.o
+arizona-objs                   += wm5102-tables.o
 endif
 ifeq ($(CONFIG_MFD_WM5110),y)
-obj-$(CONFIG_MFD_ARIZONA)      += wm5110-tables.o
+arizona-objs                   += wm5110-tables.o
 endif
 ifeq ($(CONFIG_MFD_WM8997),y)
-obj-$(CONFIG_MFD_ARIZONA)      += wm8997-tables.o
+arizona-objs                   += wm8997-tables.o
 endif
 ifeq ($(CONFIG_MFD_WM8998),y)
-obj-$(CONFIG_MFD_ARIZONA)      += wm8998-tables.o
+arizona-objs                   += wm8998-tables.o
 endif
 ifeq ($(CONFIG_MFD_CS47L24),y)
-obj-$(CONFIG_MFD_ARIZONA)      += cs47l24-tables.o
+arizona-objs                   += cs47l24-tables.o
 endif
 obj-$(CONFIG_MFD_WCD934X)      += wcd934x.o
 obj-$(CONFIG_MFD_WM8400)       += wm8400-core.o
 
 
 config SND_SOC_CS47L24
        tristate
-       depends on MFD_CS47L24
+       depends on MFD_CS47L24 && MFD_ARIZONA
 
 config SND_SOC_CS47L35
        tristate
 
 config SND_SOC_WM5102
        tristate
-       depends on MFD_WM5102
+       depends on MFD_WM5102 && MFD_ARIZONA
 
 config SND_SOC_WM5110
        tristate
-       depends on MFD_WM5110
+       depends on MFD_WM5110 && MFD_ARIZONA
 
 config SND_SOC_WM8350
        tristate
 
 config SND_SOC_WM8997
        tristate
-       depends on MFD_WM8997
+       depends on MFD_WM8997 && MFD_ARIZONA
 
 config SND_SOC_WM8998
        tristate
-       depends on MFD_WM8998
+       depends on MFD_WM8998 && MFD_ARIZONA
 
 config SND_SOC_WM9081
        tristate