ARM: i.MX6: cm-fx6: Add v4l init call for XBMC support
ARM: i.MX6: cm-fx6: add igb pdata after detection

Move the igb platform data code after the base board detection.
First of all detect the base board we are running on and then do all
other settings setup/fixup.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: minor white space fixes

Fix indentation and alignment white space issues.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: add sdhci 3 after board detect

Move the SDHCI controller initialization after the board detection and
platform data fixup are made.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: refactor esdhc 3 support code

Make the default platform data settings for sb-fx6m and
make the appropriate adjustments for sb-fx6 at runtime.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
net: igb: fall back to random mac address

If for some reason neither NVM, nor eeprom contains valid mac address
a random one will be generated.

Signed-off-by: Valentin Raevsky <valentin@compulab.co.il>
ARM: i.MX6: cm-fx6: register touchscreen on sb-fx6

Himax touchscreen is only available on sb-fx6 and not on sb-fx6m.
Moreover, pen down GPIO on sb-fx6 overlaps with DVI hotplug detect GPIO
on sb-fx6m.
Resolve the above issues by moving the Himax touchscreen registration
to after the board detection is done.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: Add v4l bootarg's parameter

Add v4l bootarg's parameter in order to enable/disable v4l subsystem.
ARM: i.MX6: cm-fx6: fix GPIO1_2 double mux

Fix potential problem with GPIO1_2 muxed several times.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: defconfig: enable gpio-i2cmux

Enable gpio-i2cmux by default in cm_fx6_defconfig.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: refactor Himax TS support

Introduce baseboard_i2c_device_register() - a helper function for adding
an I2C devices dynamically.
Switch the Himax touch screen registration codeto use the helper
function.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: clean the V4L support code

1) Do not initialize static globals to zero.
2) Use early_param() macro instead of __setup().
3) Return 0 from early_param() called function.
4) Fix syntax/coding style/white space.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: fix DVI registration

The DVI i2c_board_info and platform data structures should be updated
prior to their registration to avoid potential copying problems.
Move the DVI registration after the baseboard detection and relevant
structures adjustmens are made.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: fix DVI data on sb-fx6 rev 1.0

sb-fx6 rev 1.0 does not have the DVI EDID connected and
does not have the Hot Plug Detect connected.
Adjust the DVI i2c_board_info structure to cope with the
sb-fx6 design restrictions.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: SNVS ONOFF: Add SNVS Power key support

This patch is originally authored by Lin Fuzhen <fuzhen.lin@freescale.com>
ARM: i.MX6: cm-fx6: add SNVS Power key to the board file

Add SNVS Power key init call to the board file.
ARM: i.MX6: cm-fx6: defconfig: enable v4l and power key support

Enable v4l and power key support.

Signed-off-by: Valentin Raevsky <valentin@compulab.co.il>
ARM: i.MX6: cm-fx6: update defconfig

Enable Himax touch screen, spidev, and EM3027 RTC.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: minor comment/typo fixes

Add comment on #endif to better see which define it belongs to.
Fix the typo of '/n' to '\n' in the pr_err() message.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
ARM: i.MX6: cm-fx6: fix the LCD functionality

The SCF0403 LCD is only available on sb-fx6 and also depends on pca953x
driver initialization.

Currently, the sfc0403 driver emits the following error message:
scf0403 spi1.1: Failed requesting reset GPIO235: -22
scf0403: probe of spi1.1 failed with error -22

Fix the scf0403 LCD by moving the SPI device registration code after the
baseboard detection code (epprom setup callback).

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>