Can '1GHZ' CPU be used by '800MHZ '
Why not ?
If my understanding is correct, you want to run a 1GHz i.MX6 processor at 800MHz (core frequency), right? If so, the answer is yes, you just have to configure the clocks (see reference manual chapter 18) so the resulting frequency is the one you desire. If you are using an OS like Linux, this is done automatically by configuring some settings. I'm mainly focused on HW, but a SW person can help you with this.
If your BSP is Android or Linux, you can add "arm_freq=800" into your bootloader parameters. Lets CPU work at special frequency (MHz).
Adding "arm_freq=800" is only working for L3.0.35, to make it work for all kernel, I think you can change the /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq to 792000. just "echo 792000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq" after linux kernel boot up.
Retrieving data ...