Skip to content

Commit 3139f5c

Browse files
committed
Merge branch 'asoc-linus' into asoc-next
2 parents e783362 + 353bb6a commit 3139f5c

43 files changed

Lines changed: 365 additions & 198 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Documentation/devicetree/bindings/sound/google,cros-ec-codec.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ title: Audio codec controlled by ChromeOS EC
88

99
maintainers:
1010
- Cheng-Yi Chiang <cychiang@chromium.org>
11+
- Tzung-Bi Shih <tzungbi@google.com>
1112

1213
description: |
1314
Google's ChromeOS EC codec is a digital mic codec provided by the

MAINTAINERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4543,6 +4543,7 @@ F: drivers/platform/chrome/
45434543

45444544
CHROMEOS EC CODEC DRIVER
45454545
M: Cheng-Yi Chiang <cychiang@chromium.org>
4546+
M: Tzung-Bi Shih <tzungbi@google.com>
45464547
R: Guenter Roeck <groeck@chromium.org>
45474548
S: Maintained
45484549
F: Documentation/devicetree/bindings/sound/google,cros-ec-codec.yaml

drivers/input/touchscreen/wm97xx-core.c

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -615,10 +615,9 @@ static int wm97xx_register_touch(struct wm97xx *wm)
615615
* extensions)
616616
*/
617617
wm->touch_dev = platform_device_alloc("wm97xx-touch", -1);
618-
if (!wm->touch_dev) {
619-
ret = -ENOMEM;
620-
goto touch_err;
621-
}
618+
if (!wm->touch_dev)
619+
return -ENOMEM;
620+
622621
platform_set_drvdata(wm->touch_dev, wm);
623622
wm->touch_dev->dev.parent = wm->dev;
624623
wm->touch_dev->dev.platform_data = pdata;
@@ -629,18 +628,13 @@ static int wm97xx_register_touch(struct wm97xx *wm)
629628
return 0;
630629
touch_reg_err:
631630
platform_device_put(wm->touch_dev);
632-
touch_err:
633-
input_unregister_device(wm->input_dev);
634-
wm->input_dev = NULL;
635631

636632
return ret;
637633
}
638634

639635
static void wm97xx_unregister_touch(struct wm97xx *wm)
640636
{
641637
platform_device_unregister(wm->touch_dev);
642-
input_unregister_device(wm->input_dev);
643-
wm->input_dev = NULL;
644638
}
645639

646640
static int _wm97xx_probe(struct wm97xx *wm)

drivers/soc/mediatek/mtk-scpsys.c

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -411,17 +411,12 @@ static int scpsys_power_off(struct generic_pm_domain *genpd)
411411
return ret;
412412
}
413413

414-
static int init_clks(struct platform_device *pdev, struct clk **clk)
414+
static void init_clks(struct platform_device *pdev, struct clk **clk)
415415
{
416416
int i;
417417

418-
for (i = CLK_NONE + 1; i < CLK_MAX; i++) {
418+
for (i = CLK_NONE + 1; i < CLK_MAX; i++)
419419
clk[i] = devm_clk_get(&pdev->dev, clk_names[i]);
420-
if (IS_ERR(clk[i]))
421-
return PTR_ERR(clk[i]);
422-
}
423-
424-
return 0;
425420
}
426421

427422
static struct scp *init_scp(struct platform_device *pdev,
@@ -431,7 +426,7 @@ static struct scp *init_scp(struct platform_device *pdev,
431426
{
432427
struct genpd_onecell_data *pd_data;
433428
struct resource *res;
434-
int i, j, ret;
429+
int i, j;
435430
struct scp *scp;
436431
struct clk *clk[CLK_MAX];
437432

@@ -486,9 +481,7 @@ static struct scp *init_scp(struct platform_device *pdev,
486481

487482
pd_data->num_domains = num;
488483

489-
ret = init_clks(pdev, clk);
490-
if (ret)
491-
return ERR_PTR(ret);
484+
init_clks(pdev, clk);
492485

493486
for (i = 0; i < num; i++) {
494487
struct scp_domain *scpd = &scp->domains[i];

include/sound/pcm.h

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -617,6 +617,7 @@ void snd_pcm_stream_unlock(struct snd_pcm_substream *substream);
617617
void snd_pcm_stream_lock_irq(struct snd_pcm_substream *substream);
618618
void snd_pcm_stream_unlock_irq(struct snd_pcm_substream *substream);
619619
unsigned long _snd_pcm_stream_lock_irqsave(struct snd_pcm_substream *substream);
620+
unsigned long _snd_pcm_stream_lock_irqsave_nested(struct snd_pcm_substream *substream);
620621

621622
/**
622623
* snd_pcm_stream_lock_irqsave - Lock the PCM stream
@@ -635,6 +636,20 @@ unsigned long _snd_pcm_stream_lock_irqsave(struct snd_pcm_substream *substream);
635636
void snd_pcm_stream_unlock_irqrestore(struct snd_pcm_substream *substream,
636637
unsigned long flags);
637638

639+
/**
640+
* snd_pcm_stream_lock_irqsave_nested - Single-nested PCM stream locking
641+
* @substream: PCM substream
642+
* @flags: irq flags
643+
*
644+
* This locks the PCM stream like snd_pcm_stream_lock_irqsave() but with
645+
* the single-depth lockdep subclass.
646+
*/
647+
#define snd_pcm_stream_lock_irqsave_nested(substream, flags) \
648+
do { \
649+
typecheck(unsigned long, flags); \
650+
flags = _snd_pcm_stream_lock_irqsave_nested(substream); \
651+
} while (0)
652+
638653
/**
639654
* snd_pcm_group_for_each_entry - iterate over the linked substreams
640655
* @s: the iterator

include/uapi/sound/asound.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,10 @@
5656
* *
5757
****************************************************************************/
5858

59+
#define AES_IEC958_STATUS_SIZE 24
60+
5961
struct snd_aes_iec958 {
60-
unsigned char status[24]; /* AES/IEC958 channel status bits */
62+
unsigned char status[AES_IEC958_STATUS_SIZE]; /* AES/IEC958 channel status bits */
6163
unsigned char subcode[147]; /* AES/IEC958 subcode bits */
6264
unsigned char pad; /* nothing */
6365
unsigned char dig_subframe[4]; /* AES/IEC958 subframe bits */

sound/core/pcm_native.c

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,19 @@ unsigned long _snd_pcm_stream_lock_irqsave(struct snd_pcm_substream *substream)
172172
}
173173
EXPORT_SYMBOL_GPL(_snd_pcm_stream_lock_irqsave);
174174

175+
unsigned long _snd_pcm_stream_lock_irqsave_nested(struct snd_pcm_substream *substream)
176+
{
177+
unsigned long flags = 0;
178+
if (substream->pcm->nonatomic)
179+
mutex_lock_nested(&substream->self_group.mutex,
180+
SINGLE_DEPTH_NESTING);
181+
else
182+
spin_lock_irqsave_nested(&substream->self_group.lock, flags,
183+
SINGLE_DEPTH_NESTING);
184+
return flags;
185+
}
186+
EXPORT_SYMBOL_GPL(_snd_pcm_stream_lock_irqsave_nested);
187+
175188
/**
176189
* snd_pcm_stream_unlock_irqrestore - Unlock the PCM stream
177190
* @substream: PCM substream

sound/soc/amd/acp/acp-mach-common.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -303,11 +303,11 @@ static const struct snd_soc_dapm_route rt1019_map_lr[] = {
303303

304304
static struct snd_soc_codec_conf rt1019_conf[] = {
305305
{
306-
.dlc = COMP_CODEC_CONF("i2c-10EC1019:00"),
306+
.dlc = COMP_CODEC_CONF("i2c-10EC1019:01"),
307307
.name_prefix = "Left",
308308
},
309309
{
310-
.dlc = COMP_CODEC_CONF("i2c-10EC1019:01"),
310+
.dlc = COMP_CODEC_CONF("i2c-10EC1019:00"),
311311
.name_prefix = "Right",
312312
},
313313
};

sound/soc/amd/acp/acp-mach.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
#include <linux/gpio/consumer.h>
2222

2323
#define EN_SPKR_GPIO_GB 0x11F
24-
#define EN_SPKR_GPIO_NK 0x146
2524
#define EN_SPKR_GPIO_NONE -EINVAL
2625

2726
enum be_id {

sound/soc/amd/acp/acp-sof-mach.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ static struct acp_card_drvdata sof_rt5682_max_data = {
3737
.hs_codec_id = RT5682,
3838
.amp_codec_id = MAX98360A,
3939
.dmic_codec_id = DMIC,
40-
.gpio_spkr_en = EN_SPKR_GPIO_NK,
40+
.gpio_spkr_en = EN_SPKR_GPIO_NONE,
4141
};
4242

4343
static struct acp_card_drvdata sof_rt5682s_max_data = {
@@ -47,7 +47,7 @@ static struct acp_card_drvdata sof_rt5682s_max_data = {
4747
.hs_codec_id = RT5682S,
4848
.amp_codec_id = MAX98360A,
4949
.dmic_codec_id = DMIC,
50-
.gpio_spkr_en = EN_SPKR_GPIO_NK,
50+
.gpio_spkr_en = EN_SPKR_GPIO_NONE,
5151
};
5252

5353
static const struct snd_kcontrol_new acp_controls[] = {

0 commit comments

Comments
 (0)