/* This instance is not set for torch mode so bail out */ if (pdata->mode != TPS6105X_MODE_TORCH) {
dev_info(&pdev->dev, "chip not in torch mode, exit probe"); return -EINVAL;
}
priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL); if (!priv) return -ENOMEM; /* fwnode/devicetree is optional. NULL is allowed for priv->fwnode */
priv->fwnode = device_get_next_child_node(pdev->dev.parent, NULL);
ret = devm_add_action_or_reset(&pdev->dev, tps6105x_handle_put, priv); if (ret) return ret;
priv->regmap = tps6105x->regmap;
priv->cdev.brightness_set_blocking = tps6105x_brightness_set;
priv->cdev.max_brightness = 7;
init_data.devicename = "tps6105x";
init_data.default_label = ":torch";
init_data.fwnode = priv->fwnode;
ret = regmap_update_bits(tps6105x->regmap, TPS6105X_REG_0,
TPS6105X_REG0_MODE_MASK |
TPS6105X_REG0_TORCHC_MASK,
TPS6105X_REG0_MODE_TORCH <<
TPS6105X_REG0_MODE_SHIFT); if (ret) return ret;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.