* Rockchip RK3xxx I2C controller

This driver interfaces with the native I2C controller present in Rockchip
RK3xxx SoCs.

Required properties :

 - reg : Offset and length of the register set for the device
 - compatible: should be one of the following:
   - "rockchip,rk3066-i2c": for rk3066
   - "rockchip,rk3188-i2c": for rk3188
   - "rockchip,rk3228-i2c": for rk3228
   - "rockchip,rk3288-i2c": for rk3288
   - "rockchip,rk3328-i2c", "rockchip,rk3399-i2c": for rk3328
   - "rockchip,rk3399-i2c": for rk3399
 - interrupts : interrupt number
 - clocks: See ../clock/clock-bindings.txt
   - For older hardware (rk3066, rk3188, rk3228, rk3288):
     - There is one clock that's used both to derive the functional clock
       for the device and as the bus clock.
   - For newer hardware (rk3399): specified by name
     - "i2c": This is used to derive the functional clock.
     - "pclk": This is the bus clock.

Required on RK3066, RK3188 :

 - rockchip,grf : the phandle of the syscon node for the general register
		  file (GRF)
 - on those SoCs an alias with the correct I2C bus ID (bit offset in the GRF)
   is also required.

Optional properties :

 - clock-frequency : SCL frequency to use (in Hz). If omitted, 100kHz is used.
 - i2c-scl-rising-time-ns : Number of nanoseconds the SCL signal takes to rise
	(t(r) in I2C specification). If not specified this is assumed to be
	the maximum the specification allows(1000 ns for Standard-mode,
	300 ns for Fast-mode) which might cause slightly slower communication.
 - i2c-scl-falling-time-ns : Number of nanoseconds the SCL signal takes to fall
	(t(f) in the I2C specification). If not specified this is assumed to
	be the maximum the specification allows (300 ns) which might cause
	slightly slower communication.
 - i2c-sda-falling-time-ns : Number of nanoseconds the SDA signal takes to fall
	(t(f) in the I2C specification). If not specified we'll use the SCL
	value since they are the same in nearly all cases.

Example:

aliases {
	i2c0 = &i2c0;
}

i2c0: i2c@2002d000 {
	compatible = "rockchip,rk3188-i2c";
	reg = <0x2002d000 0x1000>;
	interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
	#address-cells = <1>;
	#size-cells = <0>;

	rockchip,grf = <&grf>;

	clock-names = "i2c";
	clocks = <&cru PCLK_I2C0>;

	i2c-scl-rising-time-ns = <800>;
	i2c-scl-falling-time-ns = <100>;
};
