mirror of https://gitee.com/openkylin/linux.git
Merge branch 'for-2.6.37' into for-2.6.38
This commit is contained in:
commit
fdc1f5d060
|
@ -1180,7 +1180,7 @@ EXPORT_SYMBOL_GPL(aic3x_set_gpio);
|
||||||
int aic3x_get_gpio(struct snd_soc_codec *codec, int gpio)
|
int aic3x_get_gpio(struct snd_soc_codec *codec, int gpio)
|
||||||
{
|
{
|
||||||
u8 reg = gpio ? AIC3X_GPIO2_REG : AIC3X_GPIO1_REG;
|
u8 reg = gpio ? AIC3X_GPIO2_REG : AIC3X_GPIO1_REG;
|
||||||
u8 val, bit = gpio ? 2: 1;
|
u8 val = 0, bit = gpio ? 2 : 1;
|
||||||
|
|
||||||
aic3x_read(codec, reg, &val);
|
aic3x_read(codec, reg, &val);
|
||||||
return (val >> bit) & 1;
|
return (val >> bit) & 1;
|
||||||
|
@ -1208,7 +1208,7 @@ EXPORT_SYMBOL_GPL(aic3x_set_headset_detection);
|
||||||
|
|
||||||
int aic3x_headset_detected(struct snd_soc_codec *codec)
|
int aic3x_headset_detected(struct snd_soc_codec *codec)
|
||||||
{
|
{
|
||||||
u8 val;
|
u8 val = 0;
|
||||||
aic3x_read(codec, AIC3X_HEADSET_DETECT_CTRL_B, &val);
|
aic3x_read(codec, AIC3X_HEADSET_DETECT_CTRL_B, &val);
|
||||||
return (val >> 4) & 1;
|
return (val >> 4) & 1;
|
||||||
}
|
}
|
||||||
|
@ -1216,7 +1216,7 @@ EXPORT_SYMBOL_GPL(aic3x_headset_detected);
|
||||||
|
|
||||||
int aic3x_button_pressed(struct snd_soc_codec *codec)
|
int aic3x_button_pressed(struct snd_soc_codec *codec)
|
||||||
{
|
{
|
||||||
u8 val;
|
u8 val = 0;
|
||||||
aic3x_read(codec, AIC3X_HEADSET_DETECT_CTRL_B, &val);
|
aic3x_read(codec, AIC3X_HEADSET_DETECT_CTRL_B, &val);
|
||||||
return (val >> 5) & 1;
|
return (val >> 5) & 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -177,7 +177,8 @@ static int __init osk_soc_init(void)
|
||||||
tlv320aic23_mclk = clk_get(dev, "mclk");
|
tlv320aic23_mclk = clk_get(dev, "mclk");
|
||||||
if (IS_ERR(tlv320aic23_mclk)) {
|
if (IS_ERR(tlv320aic23_mclk)) {
|
||||||
printk(KERN_ERR "Could not get mclk clock\n");
|
printk(KERN_ERR "Could not get mclk clock\n");
|
||||||
return -ENODEV;
|
err = PTR_ERR(tlv320aic23_mclk);
|
||||||
|
goto err2;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -188,7 +189,7 @@ static int __init osk_soc_init(void)
|
||||||
if (clk_set_rate(tlv320aic23_mclk, CODEC_CLOCK)) {
|
if (clk_set_rate(tlv320aic23_mclk, CODEC_CLOCK)) {
|
||||||
printk(KERN_ERR "Cannot set MCLK for AIC23 CODEC\n");
|
printk(KERN_ERR "Cannot set MCLK for AIC23 CODEC\n");
|
||||||
err = -ECANCELED;
|
err = -ECANCELED;
|
||||||
goto err1;
|
goto err3;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -196,9 +197,12 @@ static int __init osk_soc_init(void)
|
||||||
(uint) clk_get_rate(tlv320aic23_mclk), CODEC_CLOCK);
|
(uint) clk_get_rate(tlv320aic23_mclk), CODEC_CLOCK);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
err1:
|
|
||||||
|
err3:
|
||||||
clk_put(tlv320aic23_mclk);
|
clk_put(tlv320aic23_mclk);
|
||||||
|
err2:
|
||||||
platform_device_del(osk_snd_device);
|
platform_device_del(osk_snd_device);
|
||||||
|
err1:
|
||||||
platform_device_put(osk_snd_device);
|
platform_device_put(osk_snd_device);
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
|
@ -207,6 +211,7 @@ static int __init osk_soc_init(void)
|
||||||
|
|
||||||
static void __exit osk_soc_exit(void)
|
static void __exit osk_soc_exit(void)
|
||||||
{
|
{
|
||||||
|
clk_put(tlv320aic23_mclk);
|
||||||
platform_device_unregister(osk_snd_device);
|
platform_device_unregister(osk_snd_device);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue