sandbox: Move CONFIG_SYS_I2C_SANDBOX to Kconfig

Move this over to Kconfig and tidy up.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Heiko Schocher<hs@denx.de>
diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
index efc020f..56e7deb 100644
--- a/configs/sandbox_defconfig
+++ b/configs/sandbox_defconfig
@@ -19,3 +19,4 @@
 CONFIG_BOOTSTAGE_REPORT=y
 CONFIG_SANDBOX_GPIO=y
 CONFIG_SYS_VSNPRINTF=y
+CONFIG_SYS_I2C_SANDBOX=y
diff --git a/drivers/i2c/Kconfig b/drivers/i2c/Kconfig
index 739badc..ba43019 100644
--- a/drivers/i2c/Kconfig
+++ b/drivers/i2c/Kconfig
@@ -28,6 +28,36 @@
 	  bindings are supported.
 	  Binding info: doc/device-tree-bindings/i2c/i2c-gpio.txt
 
+config SYS_I2C_SANDBOX
+	bool "Sandbox I2C driver"
+	depends on SANDBOX && DM_I2C
+	help
+	  Enable I2C support for sandbox. This is an emulation of a real I2C
+	  bus. Devices can be attached to the bus using the device tree
+	  which specifies the driver to use. As an example, see this device
+	  tree fragment from sandbox.dts. It shows that the I2C bus has a
+	  single EEPROM at address 0x2c (7-bit address) which is emulated by
+	  the driver for "sandbox,i2c-eeprom", which is in
+	  drivers/misc/i2c_eeprom_emul.c.
+
+	  i2c@0 {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		reg = <0>;
+		compatible = "sandbox,i2c";
+		clock-frequency = <400000>;
+		eeprom@2c {
+			reg = <0x2c>;
+			compatible = "i2c-eeprom";
+			emul {
+				compatible = "sandbox,i2c-eeprom";
+				sandbox,filename = "i2c.bin";
+				sandbox,size = <128>;
+			};
+		};
+	};
+
+
 config SYS_I2C_UNIPHIER
 	bool "UniPhier I2C driver"
 	depends on ARCH_UNIPHIER && DM_I2C
diff --git a/include/configs/sandbox.h b/include/configs/sandbox.h
index f714298..30d41e5 100644
--- a/include/configs/sandbox.h
+++ b/include/configs/sandbox.h
@@ -95,7 +95,6 @@
 #define CONFIG_SPI_FLASH_WINBOND
 
 #define CONFIG_CMD_I2C
-#define CONFIG_SYS_I2C_SANDBOX
 #define CONFIG_I2C_EDID
 #define CONFIG_I2C_EEPROM