/* * Full-scale current. * * imax 5000 - 29800 uA (800 uA step)
*/ int lm3533_ctrlbank_set_max_current(struct lm3533_ctrlbank *cb, u16 imax)
{
u8 reg;
u8 val; int ret;
if (imax < LM3533_MAX_CURRENT_MIN || imax > LM3533_MAX_CURRENT_MAX) return -EINVAL;
val = (imax - LM3533_MAX_CURRENT_MIN) / LM3533_MAX_CURRENT_STEP;
reg = lm3533_ctrlbank_get_reg(cb, LM3533_REG_MAX_CURRENT_BASE);
ret = lm3533_write(cb->lm3533, reg, val); if (ret)
dev_err(cb->dev, "failed to set max current\n");
int lm3533_ctrlbank_set_brightness(struct lm3533_ctrlbank *cb, u8 val)
{
u8 reg; int ret;
reg = lm3533_ctrlbank_get_reg(cb, LM3533_REG_BRIGHTNESS_BASE);
ret = lm3533_write(cb->lm3533, reg, val); if (ret)
dev_err(cb->dev, "failed to set brightness\n");
int lm3533_ctrlbank_get_brightness(struct lm3533_ctrlbank *cb, u8 *val)
{
u8 reg; int ret;
reg = lm3533_ctrlbank_get_reg(cb, LM3533_REG_BRIGHTNESS_BASE);
ret = lm3533_read(cb->lm3533, reg, val); if (ret)
dev_err(cb->dev, "failed to get brightness\n");
/* * PWM-input control mask: * * bit 5 - PWM-input enabled in Zone 4 * bit 4 - PWM-input enabled in Zone 3 * bit 3 - PWM-input enabled in Zone 2 * bit 2 - PWM-input enabled in Zone 1 * bit 1 - PWM-input enabled in Zone 0 * bit 0 - PWM-input enabled
*/ int lm3533_ctrlbank_set_pwm(struct lm3533_ctrlbank *cb, u8 val)
{
u8 reg; int ret;
if (val > LM3533_PWM_MAX) return -EINVAL;
reg = lm3533_ctrlbank_get_reg(cb, LM3533_REG_PWM_BASE);
ret = lm3533_write(cb->lm3533, reg, val); if (ret)
dev_err(cb->dev, "failed to set PWM mask\n");
int lm3533_ctrlbank_get_pwm(struct lm3533_ctrlbank *cb, u8 *val)
{
u8 reg; int ret;
reg = lm3533_ctrlbank_get_reg(cb, LM3533_REG_PWM_BASE);
ret = lm3533_read(cb->lm3533, reg, val); if (ret)
dev_err(cb->dev, "failed to get PWM mask\n");
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.