mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-04 03:33:58 +08:00
ASoC: lpass-platform: use devm_regmap_field_bulk_alloc
use new devm_regmap_field_bulk_alloc to allocate fields as it make the code more readable! Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Tested-by: Srinivasa Rao Mandadapu <srivasam@codeaurora.org> Link: https://lore.kernel.org/r/20200925164856.10315-3-srinivas.kandagatla@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
013bc9e6f7
commit
19895e92dd
@ -56,6 +56,7 @@ static int lpass_platform_alloc_dmactl_fields(struct device *dev,
|
||||
struct lpass_data *drvdata = dev_get_drvdata(dev);
|
||||
struct lpass_variant *v = drvdata->variant;
|
||||
struct lpaif_dmactl *rd_dmactl, *wr_dmactl;
|
||||
int rval;
|
||||
|
||||
drvdata->rd_dmactl = devm_kzalloc(dev, sizeof(struct lpaif_dmactl),
|
||||
GFP_KERNEL);
|
||||
@ -70,31 +71,13 @@ static int lpass_platform_alloc_dmactl_fields(struct device *dev,
|
||||
rd_dmactl = drvdata->rd_dmactl;
|
||||
wr_dmactl = drvdata->wr_dmactl;
|
||||
|
||||
rd_dmactl->bursten = devm_regmap_field_alloc(dev, map, v->rdma_bursten);
|
||||
rd_dmactl->wpscnt = devm_regmap_field_alloc(dev, map, v->rdma_wpscnt);
|
||||
rd_dmactl->fifowm = devm_regmap_field_alloc(dev, map, v->rdma_fifowm);
|
||||
rd_dmactl->intf = devm_regmap_field_alloc(dev, map, v->rdma_intf);
|
||||
rd_dmactl->enable = devm_regmap_field_alloc(dev, map, v->rdma_enable);
|
||||
rd_dmactl->dyncclk = devm_regmap_field_alloc(dev, map, v->rdma_dyncclk);
|
||||
rval = devm_regmap_field_bulk_alloc(dev, map, &rd_dmactl->bursten,
|
||||
&v->rdma_bursten, 6);
|
||||
if (rval)
|
||||
return rval;
|
||||
|
||||
if (IS_ERR(rd_dmactl->bursten) || IS_ERR(rd_dmactl->wpscnt) ||
|
||||
IS_ERR(rd_dmactl->fifowm) || IS_ERR(rd_dmactl->intf) ||
|
||||
IS_ERR(rd_dmactl->enable) || IS_ERR(rd_dmactl->dyncclk))
|
||||
return -EINVAL;
|
||||
|
||||
wr_dmactl->bursten = devm_regmap_field_alloc(dev, map, v->wrdma_bursten);
|
||||
wr_dmactl->wpscnt = devm_regmap_field_alloc(dev, map, v->wrdma_wpscnt);
|
||||
wr_dmactl->fifowm = devm_regmap_field_alloc(dev, map, v->wrdma_fifowm);
|
||||
wr_dmactl->intf = devm_regmap_field_alloc(dev, map, v->wrdma_intf);
|
||||
wr_dmactl->enable = devm_regmap_field_alloc(dev, map, v->wrdma_enable);
|
||||
wr_dmactl->dyncclk = devm_regmap_field_alloc(dev, map, v->wrdma_dyncclk);
|
||||
|
||||
if (IS_ERR(wr_dmactl->bursten) || IS_ERR(wr_dmactl->wpscnt) ||
|
||||
IS_ERR(wr_dmactl->fifowm) || IS_ERR(wr_dmactl->intf) ||
|
||||
IS_ERR(wr_dmactl->enable) || IS_ERR(wr_dmactl->dyncclk))
|
||||
return -EINVAL;
|
||||
|
||||
return 0;
|
||||
return devm_regmap_field_bulk_alloc(dev, map, &wr_dmactl->bursten,
|
||||
&v->wrdma_bursten, 6);
|
||||
}
|
||||
|
||||
static int lpass_platform_pcmops_open(struct snd_soc_component *component,
|
||||
|
Loading…
Reference in New Issue
Block a user