|
|
|
@ -177,7 +177,8 @@ static int __init osk_soc_init(void) |
|
|
|
|
tlv320aic23_mclk = clk_get(dev, "mclk"); |
|
|
|
|
if (IS_ERR(tlv320aic23_mclk)) { |
|
|
|
|
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)) { |
|
|
|
|
printk(KERN_ERR "Cannot set MCLK for AIC23 CODEC\n"); |
|
|
|
|
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); |
|
|
|
|
|
|
|
|
|
return 0; |
|
|
|
|
err1: |
|
|
|
|
|
|
|
|
|
err3: |
|
|
|
|
clk_put(tlv320aic23_mclk); |
|
|
|
|
err2: |
|
|
|
|
platform_device_del(osk_snd_device); |
|
|
|
|
err1: |
|
|
|
|
platform_device_put(osk_snd_device); |
|
|
|
|
|
|
|
|
|
return err; |
|
|
|
@ -207,6 +211,7 @@ err1: |
|
|
|
|
|
|
|
|
|
static void __exit osk_soc_exit(void) |
|
|
|
|
{ |
|
|
|
|
clk_put(tlv320aic23_mclk); |
|
|
|
|
platform_device_unregister(osk_snd_device); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|