Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp7841692ybi; Tue, 9 Jul 2019 05:16:10 -0700 (PDT) X-Google-Smtp-Source: APXvYqwlyxRXlRd9iBsCMvdGem3gN5UX0XB+tUAdATDBDU20ffw+d5keva3VOIuHjdpKx7snHfyy X-Received: by 2002:a17:902:b582:: with SMTP id a2mr25177051pls.128.1562674570257; Tue, 09 Jul 2019 05:16:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1562674570; cv=none; d=google.com; s=arc-20160816; b=CPePHl21gFOTX6EwHIO0fC2JuCWbSkO+RMJaLcCCxeYKi1tevt8PtnG2nmRXZr4LrP fUQvSONWh95mbvxaZSvCLeEsmdV1dOktjHAw/1tQ/yNS8jyT5fwCB7robyRTIlItm82d Kb04QN1xtvCsWNeAY+tb1xzS1ww6YyhzblLnj+DoXdvOvT8aO5DEvAE5euhQiACGEub5 7XoIvzUen5Z4UNM7VT56BpP0nzA2HjBjCBHc4ZZdW6dS0mw6aQdMDofvjcjPmIN2ZzGr jJ0xoNY+VXnSz3QVtFBW4VGurHFKfQBttGdWvyQGtDEydzts06zRYNB/GR0DiUPTccwg k7mA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=BVsg21whGsT0nCQujzZPC48g95cuUgQWLBZNQAx+pZc=; b=wcPk9+vesdkJq+EUz3EnCRXtPaF7reRxcegny8eerAS+hzMCNwl5su89UuAX2z3KAF zF9Ag5BW1/PT7bajwTgkPcdHDW4UWeCOZC21awZOlZ50720XOK5sX5ETfiwoGcs5WcPg S68ILKampT7ySkB96rF743ZqzmqTUd+ExWRCzieLbENKz2FyeSA4Vf2pjOQPFhIA0isN /adbpbo1c2+2tjuM+/W7wugSCiz5Sk42mNTsaujv4BDelOi6TYB2ya6ZypSOJxQHnCQk rcMdW6JUoxTWGAsuR8GQ3YtcJAKR/jhMQAyFVKmmw5xxg56RE7tu+qUeigpQoRClfLef AvyA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=Hif8gvZ3; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p27si21525420pli.411.2019.07.09.05.15.54; Tue, 09 Jul 2019 05:16:10 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=Hif8gvZ3; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726251AbfGILz6 (ORCPT + 99 others); Tue, 9 Jul 2019 07:55:58 -0400 Received: from mail-vs1-f68.google.com ([209.85.217.68]:40062 "EHLO mail-vs1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725947AbfGILz5 (ORCPT ); Tue, 9 Jul 2019 07:55:57 -0400 Received: by mail-vs1-f68.google.com with SMTP id a186so10432322vsd.7 for ; Tue, 09 Jul 2019 04:55:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=BVsg21whGsT0nCQujzZPC48g95cuUgQWLBZNQAx+pZc=; b=Hif8gvZ34qKJMh958dAAJSHO70lREX96FjBgtOfqYNFJyuQpBMR0C1BjfHgf8lDQ92 sADjoOm6BOziZ8iFV4rfX/D+8PH0/e3yQd9VX01BYzeP27ufOcJLZvyArqht8aRbI3eJ IS7yqBpL3VKcMJ1o6/XM6Re5YNCRXm029XCfc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=BVsg21whGsT0nCQujzZPC48g95cuUgQWLBZNQAx+pZc=; b=suUYScn9FkzQqGiImvse7u6gq6SgXdncWM8mz0BYv4Ht+L0xd4gJI8hWRcvWx11KWw E0/YPTuRSK3xE04VlvNsR3VCI5KF1Xv3hn9Gxdh8clxj3y4XqWzwgpZPkOef+LZ8hFBA yPU+CeXWCu4XiihAKSr5Ak4BhAQxFzDxynA2FhDUS9tFPbY2v/GmASIfyYIrLeqOTiXs tejUSc3tgRkSsV2syZt5w+f7MuEdfrIx4xvAGWQYfONcXl+YUGk/6tvFY4jnKbaQZVnt qSYP1JM/RL9LD4pQOiQ0Q50gue6W/wNk9kFt1NNiblLGpOLe5PDrd47tlWBU76bdOjYN E+LA== X-Gm-Message-State: APjAAAUyLlWGs7dDy8v3CTZinpUQnTUhDsE9MsOrPUHaNU2N0oPmmUqm 3hhiseoXKI1801x5ytuM4rHMtfGFhpKfktKWXANV/bWu9tVVtg== X-Received: by 2002:a67:ebcb:: with SMTP id y11mr13483911vso.138.1562673356146; Tue, 09 Jul 2019 04:55:56 -0700 (PDT) MIME-Version: 1.0 References: <20190705042623.129541-1-cychiang@chromium.org> <20190705042623.129541-2-cychiang@chromium.org> <3d5755cf-34e9-44f7-3b03-6bdfca84ff95@intel.com> In-Reply-To: <3d5755cf-34e9-44f7-3b03-6bdfca84ff95@intel.com> From: Cheng-yi Chiang Date: Tue, 9 Jul 2019 19:55:29 +0800 Message-ID: Subject: Re: [PATCH 1/4] ASoC: hdmi-codec: Add an op to set callback function for plug event To: Cezary Rojewski Cc: linux-kernel , Hans Verkuil , Mark Brown , Liam Girdwood , Takashi Iwai , Jaroslav Kysela , Russell King , Andrzej Hajda , Laurent Pinchart , David Airlie , Daniel Vetter , Heiko Stuebner , Doug Anderson , Dylan Reid , tzungbi@chromium.org, "moderated list:SOUND - SOC LAYER / DYNAMIC AUDIO POWER MANAGEM..." , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jul 9, 2019 at 7:47 PM Cezary Rojewski wrote: > > On 2019-07-05 06:26, Cheng-Yi Chiang wrote: > > +static void hdmi_codec_jack_report(struct hdmi_codec_priv *hcp, > > + unsigned int jack_status) > > +{ > > + if (!hcp->jack) > > + return; > > + > > + if (jack_status != hcp->jack_status) { > > + snd_soc_jack_report(hcp->jack, jack_status, SND_JACK_LINEOUT); > > + hcp->jack_status = jack_status; > > + } > > +} > > Single "if" statement instead? The first "if" does not even cover all > cases - if the secondary check fails, you'll "return;" too. > ACK. I will fix in v2. > > +/** > > + * hdmi_codec_set_jack_detect - register HDMI plugged callback > > + * @component: the hdmi-codec instance > > + * @jack: ASoC jack to report (dis)connection events on > > + */ > > +int hdmi_codec_set_jack_detect(struct snd_soc_component *component, > > + struct snd_soc_jack *jack) > > +{ > > + struct hdmi_codec_priv *hcp = snd_soc_component_get_drvdata(component); > > + int ret; > > + > > + if (hcp->hcd.ops->hook_plugged_cb) { > > + hcp->jack = jack; > > + ret = hcp->hcd.ops->hook_plugged_cb(component->dev->parent, > > + hcp->hcd.data, > > + plugged_cb); > > + if (ret) { > > + hcp->jack = NULL; > > + return ret; > > + } > > + return 0; > > + } > > + return -EOPNOTSUPP; > > +} > > +EXPORT_SYMBOL_GPL(hdmi_codec_set_jack_detect); > > int ret = -EOPNOTSUPP; > (...) > > return ret; > > In consequence, you can reduce the number of "return(s)" and also remove > the redundant parenthesis for the if-statement used to set jack to NULL. > > Czarek ACK will fix in v2. Thanks a lot for the review!