From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752672AbcEJOEY (ORCPT ); Tue, 10 May 2016 10:04:24 -0400 Received: from mout.kundenserver.de ([217.72.192.75]:58366 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751867AbcEJOEW (ORCPT ); Tue, 10 May 2016 10:04:22 -0400 From: Arnd Bergmann To: Linus Walleij Cc: Lee Jones , linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Lars-Peter Clausen , Xiubo Li , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Subject: [PATCH 3/4] ASoC: ab8500-codec: remove platform data based probe Date: Tue, 10 May 2016 16:02:05 +0200 Message-Id: <1462888941-2810783-1-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 X-Provags-ID: V03:K0:JAs4a5KcmIvEUNs3SN3fDcmn5ZgaOdxNnrwlU97Cf3V9ioUSLgL vDb24KFMy+xSuq5u3glIg+AseA0Rv1V/xiDWVU/1lAZHBeucnKKpbW60LsOnCYUAjPGB44t yak39fhMIa+wv3XzWx17iIrjw3iNfHxz3HWBePxrxxapHaBlX9k8feMVEBH3VNfHL71cB8O oGnDIzHJvj7tSeMZBVbaw== X-UI-Out-Filterresults: notjunk:1;V01:K0:5+zsrqzh3ww=:QO0/wwkr0VCdOLX3ktlruy q2ukmNMMOi/Roys4OXw+Xj7Na7FIQwDCm+419vC2JKz5tUsVXe95L1XCY9SPouchR6hjWnYps zJE4/yM1gyn4OrU4GUjyr1+4SL0vs06wtyTiSD92+7q6klhZSnOIIPH3zG0s0y83O+nur0B9/ lwB5CcIpgoV2e1W5kKVP0x7ggSvEXQOlHKoOc3RA8ew1s88rDlRq8HU7ENWkKJipb+RLOicaP iABnlfVA9t0td5omQvrmzLCQF5J2eyl/bpoaNCRX/+vxkXjwYt0BTNZr+m5zoV3te7Tv+GK9F U4TyIEwrjgc/yT7ml4sL3VWDNlQzuxPO1Xfw1wM6AybCtXvg82OQt1qs8oWetonfa5jVln/V0 CR2yg6WL8ixUc82m4t6K5GYuBVNEnZQnAdyrP6yoShkAejfy7xw3R2ai9ZujCkKqfJsTKEj1J pPwSIuLVu5UfgLQFKZnvkh+Qe9SnhHHGevxEGW2DqnTRtjTqVOwyPfbmERvM4LBoIU1v4Vy0E DfU1OW6xfy1FV3Z8bM4NIbUbguc/OI8wzseCGSuBDD4gmiuBHQMuQrObGgJnQMqXbD8z6HrxD zNQYAf3FLOUAqQSPoOouPqHoQH1iWnCFaruhhZTz1CG0v1VbtRJ5xo1/mLO+BwPLCI/qkygDi LjcN9Yh1Wv0AoHm8axO6mNN3dpHI4uZdh/tS+5Okl4NjNy+cNUwayB8Lma2mAMc1QtfM= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The ux500 platform hasn't used board files for a long time, and nothing defines a ab8500_codec_platform_data, so we can just remove the probing based on that and always use device tree properties directly. Signed-off-by: Arnd Bergmann --- sound/soc/codecs/ab8500-codec.c | 33 ++++----------------------------- 1 file changed, 4 insertions(+), 29 deletions(-) diff --git a/sound/soc/codecs/ab8500-codec.c b/sound/soc/codecs/ab8500-codec.c index 8b1d0c1a7839..2fc89155f14a 100644 --- a/sound/soc/codecs/ab8500-codec.c +++ b/sound/soc/codecs/ab8500-codec.c @@ -2464,45 +2464,20 @@ static int ab8500_codec_probe(struct snd_soc_codec *codec) struct device *dev = codec->dev; struct device_node *np = dev->of_node; struct ab8500_codec_drvdata *drvdata = dev_get_drvdata(dev); - struct ab8500_platform_data *pdata; + struct ab8500_codec_platform_data codec_pdata; struct filter_control *fc; int status; dev_dbg(dev, "%s: Enter.\n", __func__); - /* Setup AB8500 according to board-settings */ - pdata = dev_get_platdata(dev->parent); + ab8500_codec_of_probe(dev, np, &codec_pdata); - if (np) { - if (!pdata) - pdata = devm_kzalloc(dev, - sizeof(struct ab8500_platform_data), - GFP_KERNEL); - - if (pdata && !pdata->codec) - pdata->codec - = devm_kzalloc(dev, - sizeof(struct ab8500_codec_platform_data), - GFP_KERNEL); - - if (!(pdata && pdata->codec)) - return -ENOMEM; - - ab8500_codec_of_probe(dev, np, pdata->codec); - - } else { - if (!(pdata && pdata->codec)) { - dev_err(dev, "No codec platform data or DT found\n"); - return -EINVAL; - } - } - - status = ab8500_audio_setup_mics(codec, &pdata->codec->amics); + status = ab8500_audio_setup_mics(codec, &codec_pdata.amics); if (status < 0) { pr_err("%s: Failed to setup mics (%d)!\n", __func__, status); return status; } - status = ab8500_audio_set_ear_cmv(codec, pdata->codec->ear_cmv); + status = ab8500_audio_set_ear_cmv(codec, codec_pdata.ear_cmv); if (status < 0) { pr_err("%s: Failed to set earpiece CM-voltage (%d)!\n", __func__, status); -- 2.7.0