/* * Load Analog Devices SigmaStudio firmware files * * Copyright 2009-2011 Analog Devices Inc. * * Licensed under the GPL-2 or later. */ #include #include #include #include "sigmadsp.h" static int sigmadsp_write_regmap(void *control_data, unsigned int addr, const uint8_t data[], size_t len) { return regmap_raw_write(control_data, addr, data, len); } static int sigmadsp_read_regmap(void *control_data, unsigned int addr, uint8_t data[], size_t len) { return regmap_raw_read(control_data, addr, data, len); } /** * devm_sigmadsp_init_i2c() - Initialize SigmaDSP instance * @dev: The parent device * @regmap: Regmap instance to use * @ops: The sigmadsp_ops to use for this instance * @firmware_name: Name of the firmware file to load * * Allocates a SigmaDSP instance and loads the specified firmware file. * * Returns a pointer to a struct sigmadsp on success, or a PTR_ERR() on error. */ struct sigmadsp *devm_sigmadsp_init_regmap(struct device *dev, struct regmap *regmap, const struct sigmadsp_ops *ops, const char *firmware_name) { struct sigmadsp *sigmadsp; sigmadsp = devm_sigmadsp_init(dev, ops, firmware_name); if (IS_ERR(sigmadsp)) return sigmadsp; sigmadsp->control_data = regmap; sigmadsp->write = sigmadsp_write_regmap; sigmadsp->read = sigmadsp_read_regmap; return sigmadsp; } EXPORT_SYMBOL_GPL(devm_sigmadsp_init_regmap); MODULE_AUTHOR("Lars-Peter Clausen "); MODULE_DESCRIPTION("SigmaDSP regmap firmware loader"); MODULE_LICENSE("GPL"); yrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharles Keepax <ckeepax@opensource.wolfsonmicro.com>2016-11-10 10:45:18 +0000
committerMark Brown <broonie@kernel.org>2016-11-10 17:28:32 +0000
commit85b037442e3f0e84296ab1010fd6b057eee18496 (patch)
treeb745f3f22cbd45af2039a004eb3f21d530afdc8b /include/sound/gus.h
parent1001354ca34179f3db924eb66672442a173147dc (diff)
regulators: helpers: Fix handling of bypass_val_on in get_bypass_regmap
The handling of bypass_val_on that was added in regulator_get_bypass_regmap is done unconditionally however several drivers don't define a value for bypass_val_on. This results in those drivers reporting bypass being enabled when it is not. In regulator_set_bypass_regmap we use bypass_mask if bypass_val_on is zero. This patch adds similar handling in regulator_get_bypass_regmap. Fixes: commit dd1a571daee7 ("regulator: helpers: Ensure bypass register field matches ON value") Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'include/sound/gus.h')