I typed your error message into Google. It found your post, and a previous one in this forum dated July 1, 2013.
kernel hacking
Nobody has responded to that question in almost three years.
The Linux 2.6.35 Kernel, plus the 1200 or so Freescale-applied patches have not been tested with all possible combinations of kernel options.
There may be some other options that you can turn on or off that might let it work.
If all else fails you might just have to understand the Makefiles and try to work out a source code change to fix this.
Otherwise, looking at the file it complained about, that file is being included without " __ASM_ARCH_MXC_HARDWARE_H__" being defined.
Assuming you have a clone of Freescale's git repository (if not, get it), type "git grep __ASM_ARCH_MXC_HARDWARE_H__" and find :
$ git grep __ASM_ARCH_MXC_HARDWARE_H__
arch/arm/plat-mxc/include/mach/hardware.h:#ifndef __ASM_ARCH_MXC_HARDWARE_H__
arch/arm/plat-mxc/include/mach/hardware.h:#define __ASM_ARCH_MXC_HARDWARE_H__
arch/arm/plat-mxc/include/mach/hardware.h:#endif /* __ASM_ARCH_MXC_HARDWARE_H__ */
arch/arm/plat-mxc/include/mach/mx5x.h:#ifndef __ASM_ARCH_MXC_HARDWARE_H__
arch/arm/plat-mxc/include/mach/mxc.h:#ifndef __ASM_ARCH_MXC_HARDWARE_H__
You should also find out the "magic" to pass to "make" to get it to give you the full compiler commands instead of the "CC Summaries". Then you can try to run the compiler command (that failed) manually with "-E" to get the preprocessor output. That tells you which file included what (and got the assumptions in that file wrong).
Google also finds this, which might be worth checking:
[PATCH 07/14] ARM i.MX/MXS: Allow to include imx*-regs.h directly
Then read this:
xkcd: Arcane Bullshit
Tom