Loading Documentation/devicetree/bindings/i2c/i2c.txt +2 −2 Original line number Diff line number Diff line Loading @@ -59,8 +59,8 @@ wants to support one of the below features, it should adapt the bindings below. interrupts used by the device. - interrupt-names "irq" and "wakeup" names are recognized by I2C core, other names are left to individual drivers. "irq", "wakeup" and "smbus_alert" names are recognized by I2C core, other names are left to individual drivers. - host-notify device uses SMBus host notify protocol instead of interrupt line. Loading Documentation/devicetree/bindings/power/supply/sbs,sbs-manager.txt 0 → 100644 +66 −0 Original line number Diff line number Diff line Binding for sbs-manager Required properties: - compatible: "<vendor>,<part-number>", "sbs,sbs-charger" as fallback. The part number compatible string might be used in order to take care of vendor specific registers. - reg: integer, i2c address of the device. Should be <0xa>. Optional properties: - gpio-controller: Marks the port as GPIO controller. See "gpio-specifier" in .../devicetree/bindings/gpio/gpio.txt. - #gpio-cells: Should be <2>. The first cell is the pin number, the second cell is used to specify optional parameters: See "gpio-specifier" in .../devicetree/bindings/gpio/gpio.txt. From OS view the device is basically an i2c-mux used to communicate with up to four smart battery devices at address 0xb. The driver actually implements this behaviour. So standard i2c-mux nodes can be used to register up to four slave batteries. Channels will be numerated starting from 1 to 4. Example: batman@a { compatible = "lltc,ltc1760", "sbs,sbs-manager"; reg = <0x0a>; #address-cells = <1>; #size-cells = <0>; gpio-controller; #gpio-cells = <2>; i2c@1 { #address-cells = <1>; #size-cells = <0>; reg = <1>; battery@b { compatible = "ti,bq2060", "sbs,sbs-battery"; reg = <0x0b>; sbs,battery-detect-gpios = <&batman 1 1>; }; }; i2c@2 { #address-cells = <1>; #size-cells = <0>; reg = <2>; battery@b { compatible = "ti,bq2060", "sbs,sbs-battery"; reg = <0x0b>; sbs,battery-detect-gpios = <&batman 2 1>; }; }; i2c@3 { #address-cells = <1>; #size-cells = <0>; reg = <3>; battery@b { compatible = "ti,bq2060", "sbs,sbs-battery"; reg = <0x0b>; sbs,battery-detect-gpios = <&batman 3 1>; }; }; }; drivers/i2c/busses/i2c-parport-light.c +0 −1 Original line number Diff line number Diff line Loading @@ -123,7 +123,6 @@ static struct i2c_adapter parport_adapter = { /* SMBus alert support */ static struct i2c_smbus_alert_setup alert_data = { .alert_edge_triggered = 1, }; static struct i2c_client *ara; static struct lineop parport_ctrl_irq = { Loading drivers/i2c/busses/i2c-parport.c +0 −1 Original line number Diff line number Diff line Loading @@ -237,7 +237,6 @@ static void i2c_parport_attach(struct parport *port) /* Setup SMBus alert if supported */ if (adapter_parm[type].smbus_alert) { adapter->alert_data.alert_edge_triggered = 1; adapter->ara = i2c_setup_smbus_alert(&adapter->adapter, &adapter->alert_data); if (adapter->ara) Loading drivers/i2c/busses/i2c-thunderx-pcidrv.c +0 −6 Original line number Diff line number Diff line Loading @@ -118,8 +118,6 @@ static void thunder_i2c_clock_disable(struct device *dev, struct clk *clk) static int thunder_i2c_smbus_setup_of(struct octeon_i2c *i2c, struct device_node *node) { u32 type; if (!node) return -EINVAL; Loading @@ -127,10 +125,6 @@ static int thunder_i2c_smbus_setup_of(struct octeon_i2c *i2c, if (!i2c->alert_data.irq) return -EINVAL; type = irqd_get_trigger_type(irq_get_irq_data(i2c->alert_data.irq)); i2c->alert_data.alert_edge_triggered = (type & IRQ_TYPE_LEVEL_MASK) ? 1 : 0; i2c->ara = i2c_setup_smbus_alert(&i2c->adap, &i2c->alert_data); if (!i2c->ara) return -ENODEV; Loading Loading
Documentation/devicetree/bindings/i2c/i2c.txt +2 −2 Original line number Diff line number Diff line Loading @@ -59,8 +59,8 @@ wants to support one of the below features, it should adapt the bindings below. interrupts used by the device. - interrupt-names "irq" and "wakeup" names are recognized by I2C core, other names are left to individual drivers. "irq", "wakeup" and "smbus_alert" names are recognized by I2C core, other names are left to individual drivers. - host-notify device uses SMBus host notify protocol instead of interrupt line. Loading
Documentation/devicetree/bindings/power/supply/sbs,sbs-manager.txt 0 → 100644 +66 −0 Original line number Diff line number Diff line Binding for sbs-manager Required properties: - compatible: "<vendor>,<part-number>", "sbs,sbs-charger" as fallback. The part number compatible string might be used in order to take care of vendor specific registers. - reg: integer, i2c address of the device. Should be <0xa>. Optional properties: - gpio-controller: Marks the port as GPIO controller. See "gpio-specifier" in .../devicetree/bindings/gpio/gpio.txt. - #gpio-cells: Should be <2>. The first cell is the pin number, the second cell is used to specify optional parameters: See "gpio-specifier" in .../devicetree/bindings/gpio/gpio.txt. From OS view the device is basically an i2c-mux used to communicate with up to four smart battery devices at address 0xb. The driver actually implements this behaviour. So standard i2c-mux nodes can be used to register up to four slave batteries. Channels will be numerated starting from 1 to 4. Example: batman@a { compatible = "lltc,ltc1760", "sbs,sbs-manager"; reg = <0x0a>; #address-cells = <1>; #size-cells = <0>; gpio-controller; #gpio-cells = <2>; i2c@1 { #address-cells = <1>; #size-cells = <0>; reg = <1>; battery@b { compatible = "ti,bq2060", "sbs,sbs-battery"; reg = <0x0b>; sbs,battery-detect-gpios = <&batman 1 1>; }; }; i2c@2 { #address-cells = <1>; #size-cells = <0>; reg = <2>; battery@b { compatible = "ti,bq2060", "sbs,sbs-battery"; reg = <0x0b>; sbs,battery-detect-gpios = <&batman 2 1>; }; }; i2c@3 { #address-cells = <1>; #size-cells = <0>; reg = <3>; battery@b { compatible = "ti,bq2060", "sbs,sbs-battery"; reg = <0x0b>; sbs,battery-detect-gpios = <&batman 3 1>; }; }; };
drivers/i2c/busses/i2c-parport-light.c +0 −1 Original line number Diff line number Diff line Loading @@ -123,7 +123,6 @@ static struct i2c_adapter parport_adapter = { /* SMBus alert support */ static struct i2c_smbus_alert_setup alert_data = { .alert_edge_triggered = 1, }; static struct i2c_client *ara; static struct lineop parport_ctrl_irq = { Loading
drivers/i2c/busses/i2c-parport.c +0 −1 Original line number Diff line number Diff line Loading @@ -237,7 +237,6 @@ static void i2c_parport_attach(struct parport *port) /* Setup SMBus alert if supported */ if (adapter_parm[type].smbus_alert) { adapter->alert_data.alert_edge_triggered = 1; adapter->ara = i2c_setup_smbus_alert(&adapter->adapter, &adapter->alert_data); if (adapter->ara) Loading
drivers/i2c/busses/i2c-thunderx-pcidrv.c +0 −6 Original line number Diff line number Diff line Loading @@ -118,8 +118,6 @@ static void thunder_i2c_clock_disable(struct device *dev, struct clk *clk) static int thunder_i2c_smbus_setup_of(struct octeon_i2c *i2c, struct device_node *node) { u32 type; if (!node) return -EINVAL; Loading @@ -127,10 +125,6 @@ static int thunder_i2c_smbus_setup_of(struct octeon_i2c *i2c, if (!i2c->alert_data.irq) return -EINVAL; type = irqd_get_trigger_type(irq_get_irq_data(i2c->alert_data.irq)); i2c->alert_data.alert_edge_triggered = (type & IRQ_TYPE_LEVEL_MASK) ? 1 : 0; i2c->ara = i2c_setup_smbus_alert(&i2c->adap, &i2c->alert_data); if (!i2c->ara) return -ENODEV; Loading