Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b614e38e authored by Takashi Iwai's avatar Takashi Iwai
Browse files

Merge branch 'fix/asoc' into for-linus

parents e68d3b31 0077ca0b
Loading
Loading
Loading
Loading
+13 −2
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@
#include <linux/firmware.h>
#include <linux/module.h>

#include <asm/clkdev.h>
#include <asm/clock.h>

#include <cpu/sh7722.h>
@@ -40,12 +41,12 @@ static struct clk_ops siumckb_clk_ops = {
};

static struct clk siumckb_clk = {
	.name		= "siumckb_clk",
	.id		= -1,
	.ops		= &siumckb_clk_ops,
	.rate		= 0, /* initialised at run-time */
};

static struct clk_lookup *siumckb_lookup;

static int migor_hw_params(struct snd_pcm_substream *substream,
			   struct snd_pcm_hw_params *params)
{
@@ -180,6 +181,13 @@ static int __init migor_init(void)
	if (ret < 0)
		return ret;

	siumckb_lookup = clkdev_alloc(&siumckb_clk, "siumckb_clk", NULL);
	if (!siumckb_lookup) {
		ret = -ENOMEM;
		goto eclkdevalloc;
	}
	clkdev_add(siumckb_lookup);

	/* Port number used on this machine: port B */
	migor_snd_device = platform_device_alloc("soc-audio", 1);
	if (!migor_snd_device) {
@@ -200,12 +208,15 @@ static int __init migor_init(void)
epdevadd:
	platform_device_put(migor_snd_device);
epdevalloc:
	clkdev_drop(siumckb_lookup);
eclkdevalloc:
	clk_unregister(&siumckb_clk);
	return ret;
}

static void __exit migor_exit(void)
{
	clkdev_drop(siumckb_lookup);
	clk_unregister(&siumckb_clk);
	platform_device_unregister(migor_snd_device);
}
+3 −2
Original line number Diff line number Diff line
@@ -203,7 +203,8 @@ static int snd_soc_8_16_write(struct snd_soc_codec *codec, unsigned int reg,
	data[1] = (value >> 8) & 0xff;
	data[2] = value & 0xff;

	if (!snd_soc_codec_volatile_register(codec, reg))
	if (!snd_soc_codec_volatile_register(codec, reg)
		&& reg < codec->reg_cache_size)
			reg_cache[reg] = value;

	if (codec->cache_only) {