Imagis ISA1200 Haptics Vibrator

Required properties:
 - reg:	slave address of bus
 - compatible: should be "imagis,isa1200"
 - label: name for vibrator directory
 - imagis,hap-en-gpio: haptic enable gpio
 - imagis,mode-ctrl: mode of the controller, 0 = POWER_DOWN_MODE,
	1 = PWM_INPUT_MODE, 2 = PWM_GEN_MODE, 3 = WAVE_GEN_MODE
 - imagis,max-timeout: maximum timeout for vibration
 - imagis,chip-en: chip enable
 - vcc_i2c-supply: regulator supplying i2c bus

Regulator described as a child of the main device:
 - regulator-name: A string used as a descriptive name for regulator outputs,
	should match vcc_i2c above
 - regulator-min-microvolt: smallest voltage consumers may set
 - regulator-max-microvolt: largest voltage consumers may set
 - regulator-max-microamp: largest current consumers may set

Optional properties:
 - imagis,smart-en: automatically control haptic power based on pwm/clk signal
 - imagis,is-erm: controlled by dc motor, use ERM driving method
 - imagis,overdrive-high: overdrive high
 - imagis,overdrive-en: enable overdrive
 - imagis,pwm-freq: pwm frequency (hZ)
 - imagis,pwm-ch-id: pwm channel id
 - imagis,pwm-div: pwm division to be used for vibration
 - imagis,need-pwm-clk: use "pwm_clk"
 - imagis,hap-len-gpio: haptic ldo enable gpio
 - imagis,etc-clk-en: use external clock
 - xyz-supply: to be used if additional regulators are require beyond
		"imagis,regulator" above

Any additional regulators are described as child nodes of main device:
 - regulator-name: A string used as a descriptive name for regulator outputs,
	should match supply "xyz"
 - regulator-min-microvolt: smallest voltage consumers may set
 - regulator-max-microvolt: largest voltage consumers may set
 - regulator-max-microamp: largest current consumers may set

Example:
	i2c@f9967000 {
		isa1200@48 {
			status = "okay";
			reg = <0x48>;
			vcc_i2c-supply = <&pm8941_s3>;
			compatible = "imagis,isa1200";
			label = "vibrator";
			imagis,chip-en;
			imagis,smart-en;
			imagis,need-pwm-clk;
			imagis,ext-clk-en;
			imagis,hap-en-gpio = <&msmgpio 86 0x00>;
			imagis,max-timeout = <15000>;
			imagis,pwm-div = <256>;
			imagis,mode-ctrl = <2>;
			imagis,regulator {
				regulator-name = "vcc_i2c";
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-max-microamp = <9360>;
			};
		};
	};
