From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9C433C433F5 for ; Wed, 5 Jan 2022 05:36:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237500AbiAEFge (ORCPT ); Wed, 5 Jan 2022 00:36:34 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33866 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237516AbiAEFge (ORCPT ); Wed, 5 Jan 2022 00:36:34 -0500 Received: from mail-pg1-x530.google.com (mail-pg1-x530.google.com [IPv6:2607:f8b0:4864:20::530]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CCB37C061785 for ; Tue, 4 Jan 2022 21:36:33 -0800 (PST) Received: by mail-pg1-x530.google.com with SMTP id 7so21962407pgn.0 for ; Tue, 04 Jan 2022 21:36:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=date:message-id:from:to:cc:subject:in-reply-to:references :user-agent:mime-version; bh=TVi5CpksORLcfI1fN+SmnI5coKP1w9QYwiZzMlp/wXM=; b=m7cIBW0oUCsCJcIhy0K70SnFBvUyPeOka8Sf4E2OqxfbTsXA0mQ5JIdnVTvHnp5+gp 0PC1RwgHjYRLzEgdWjziovrFB8WuIcFv1GYd7AQ7XVdnNCdjB3hWVsYtiITPfRSnjc3V 85LSq+em5vmwo66Y5WJtXlsY8sf9Fq9NsaSZYEHJ1pp2j0IbqZcaDrwJVFjEXXnlZcxt jyWVOvvx7ttbBevVpEOduataTpCztss0ppBN52Reb9LFNFfYmw1loYLTZSDJcgBm0KsD 8A6etMk76RMOCBMIKNiaNwc1pZP3D2BhAng79YeFmAXeuWif893it+8A+b8ELIEiriqa uk+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:message-id:from:to:cc:subject:in-reply-to :references:user-agent:mime-version; bh=TVi5CpksORLcfI1fN+SmnI5coKP1w9QYwiZzMlp/wXM=; b=QB/1NZPtAfH4iR/hukxdykc1IRYpnW+746Eg9IgkjzkuS9NU+eHrYhUJplp1vh0BJk 2UxndHEaC1x/kQJrJNEiRm51Hz3MPywuyr2lfaaYhlbCj/XQae/3dEIybxjBbEPtrK0l EkATDyLjt9hHXcN6LSSGqktySkLDL3SvhgkZ03vJEAlAhwkY2lpOLhecSKySroU1Oj0e Ap0UUeACuNqImRm9cZV/mfjHtlftkdFA7OXvKerPU14/YHsUJGhuBX07KutkGZk0NfqS KkfvkCwAh3wldQbYjHNTqYncq/OMw7WgUrwKgWGVjG6nVc6RH8/pIT9KKj/MIRHwYk8t ymVA== X-Gm-Message-State: AOAM530ZVHpf0pB/7sxMY2d7/I5ZkPBxvKC7In4DQedEY5zAm43I4fwk GAU0qhfZ/iO4LcoYpoMFl5PY594v5bY= X-Google-Smtp-Source: ABdhPJxS4nJvxIzDMug+tzIw6awXdeHfXLMbKClZga9KXE2Tsam3bsyShb6tEYWh1NlymAgXCU9vHQ== X-Received: by 2002:a63:711a:: with SMTP id m26mr29336420pgc.49.1641360993389; Tue, 04 Jan 2022 21:36:33 -0800 (PST) Received: from venus.gmail.com ([126.249.140.249]) by smtp.gmail.com with ESMTPSA id c17sm44886141pfc.163.2022.01.04.21.36.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Jan 2022 21:36:33 -0800 (PST) Date: Tue, 04 Jan 2022 21:36:33 -0800 (PST) Message-ID: <87a6gawxpe.wl-kuninori.morimoto.gx@gmail.com> From: kuninori.morimoto.gx@gmail.com To: Carl Philipp Klemm Cc: alsa-devel@alsa-project.org, merlijn@wizzup.org, tony@atomide.com, sre@kernel.org, linux-omap@vger.kernel.org, kuninori.morimoto.gx@renesas.com Subject: Re: [RFC PATCH 1/3] ASoC: simple-card-utils: add support for componants provideing jack events via set_jack In-Reply-To: <20211228190931.df5d518220080a734532ebfd@uvos.xyz> References: <20211228190931.df5d518220080a734532ebfd@uvos.xyz> User-Agent: Wanderlust/2.15.9 Emacs/26.3 Mule/6.0 MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org Hi Carl Thank you for your patch. > This allows componants that want a jack to report state on to do so by calling > set_jack on components implementing this function. > > Im not entirely sure this is the right way to do this so RFC (snip) > + for_each_rtd_components(rtd, i, component) { > + if (component->driver->set_jack) { > + if (!priv->hp_jack) { > + priv->hp_jack = devm_kzalloc(priv->snd_card.dev, > + sizeof(*priv->hp_jack), GFP_KERNEL); > + snd_soc_card_jack_new(&priv->snd_card, > + "Headphones", > + SND_JACK_HEADPHONE, > + &priv->hp_jack->jack, > + NULL, 0); > + } > + snd_soc_component_set_jack(component, &priv->hp_jack->jack, NULL); > + } > + } I'm sorry but I don't understand what you want to do by this patch. Is main code of this patch asoc_simple_dai_init() update (= call set_jack() for all component) ? > int asoc_simple_init_jack(struct snd_soc_card *card, > - struct asoc_simple_jack *sjack, > + struct asoc_simple_jack **sjack, > int is_hp, char *prefix, char *pin); ${LINUX}/sound/soc/fsl/fsl-asoc-card.c is using this function, too. We will have compile error without update it. > int asoc_simple_init_jack(struct snd_soc_card *card, > - struct asoc_simple_jack *sjack, > + struct asoc_simple_jack **sjack, > int is_hp, char *prefix, > char *pin) (snip) > if (gpio_is_valid(det)) { > - sjack->pin.pin = pin_name; > - sjack->pin.mask = mask; > + struct asoc_simple_jack *sjack_d; > + > + sjack = devm_kzalloc(dev, sizeof(*(*sjack)), GFP_KERNEL); > + sjack_d = *sjack; Am I misunderstanding ? I think you need to do here is this ? - sjack = devm_kzalloc(dev, sizeof(*(*sjack)), GFP_KERNEL); + *sjack = devm_kzalloc(dev, sizeof(*(*sjack)), GFP_KERNEL); Thank you for your help !! Best regards --- Kuninori Morimoto From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B69A9C433EF for ; Wed, 5 Jan 2022 08:43:58 +0000 (UTC) Received: from alsa1.perex.cz (alsa1.perex.cz [207.180.221.201]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa0.perex.cz (Postfix) with ESMTPS id 06AD81767; Wed, 5 Jan 2022 09:43:07 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz 06AD81767 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1641372237; bh=T4eg1sA/wakejbQOiRTT6j4i2E47Q9/yUoUz5SigmQc=; h=Date:From:To:Subject:In-Reply-To:References:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=pZc1hUS2SJQDAXTEfAdiltu6PGeHGe71ul0g+JrTIR4xm6Rsl3vfVUUd+BhT5gSB0 IVroZt1aHj1IqWisAdoocR+FmiWyNJ/m/OvVJr1/lEoQUohBwol3uDu/s+AB/HZOLz N1pM0aWSGmyX7XW8sokgOikQ9gD3wsSOzCq8dNW8= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id 1E3CAF804FB; Wed, 5 Jan 2022 09:42:17 +0100 (CET) Received: by alsa1.perex.cz (Postfix, from userid 50401) id 391C5F801D8; Wed, 5 Jan 2022 06:36:40 +0100 (CET) Received: from mail-pf1-x434.google.com (mail-pf1-x434.google.com [IPv6:2607:f8b0:4864:20::434]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id 8F532F80089 for ; Wed, 5 Jan 2022 06:36:35 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz 8F532F80089 Authentication-Results: alsa1.perex.cz; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="m7cIBW0o" Received: by mail-pf1-x434.google.com with SMTP id m1so34214571pfk.8 for ; Tue, 04 Jan 2022 21:36:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=date:message-id:from:to:cc:subject:in-reply-to:references :user-agent:mime-version; bh=TVi5CpksORLcfI1fN+SmnI5coKP1w9QYwiZzMlp/wXM=; b=m7cIBW0oUCsCJcIhy0K70SnFBvUyPeOka8Sf4E2OqxfbTsXA0mQ5JIdnVTvHnp5+gp 0PC1RwgHjYRLzEgdWjziovrFB8WuIcFv1GYd7AQ7XVdnNCdjB3hWVsYtiITPfRSnjc3V 85LSq+em5vmwo66Y5WJtXlsY8sf9Fq9NsaSZYEHJ1pp2j0IbqZcaDrwJVFjEXXnlZcxt jyWVOvvx7ttbBevVpEOduataTpCztss0ppBN52Reb9LFNFfYmw1loYLTZSDJcgBm0KsD 8A6etMk76RMOCBMIKNiaNwc1pZP3D2BhAng79YeFmAXeuWif893it+8A+b8ELIEiriqa uk+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:message-id:from:to:cc:subject:in-reply-to :references:user-agent:mime-version; bh=TVi5CpksORLcfI1fN+SmnI5coKP1w9QYwiZzMlp/wXM=; b=2OO2Oc87Rj4T6HunCKafFdhSuhjT/Qq0OC5XOZHEI2yUTNOYLj3U3xoGtyodbEI4Lj AnKGWXsRBEQCyiC4uD5wYT8FrT8jHbl9GjmKyX6EJyMvZq5E1dCVykX8tXOxAQ6Df9S+ HKwZBMO4wZ8q//11KLWdpmmoDt29f0AYQWzQl3UMW9FfMRS/KUq5TNSUlRG/j5TLnuID C1P4D0wT9yDJPbxXTrgPU2dSmFmpUpiboHB8mRy5qFFFAMMUMOUvHuhLEnN1miGKIwdO RTj9ZlEbuG7N4usSS75S1MgaS0DRpRTrMYDvV29C54uvot+wRpiC60tgFiuM1itYsNf5 69gA== X-Gm-Message-State: AOAM532niZsfT8+jSHjvnf/VcKe0RBJpu7zblPqlW/qx4WERn/nfZtXW qoSw2t4Xtvhi/uEnuko4sX4= X-Google-Smtp-Source: ABdhPJxS4nJvxIzDMug+tzIw6awXdeHfXLMbKClZga9KXE2Tsam3bsyShb6tEYWh1NlymAgXCU9vHQ== X-Received: by 2002:a63:711a:: with SMTP id m26mr29336420pgc.49.1641360993389; Tue, 04 Jan 2022 21:36:33 -0800 (PST) Received: from venus.gmail.com ([126.249.140.249]) by smtp.gmail.com with ESMTPSA id c17sm44886141pfc.163.2022.01.04.21.36.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Jan 2022 21:36:33 -0800 (PST) Date: Tue, 04 Jan 2022 21:36:33 -0800 (PST) Message-ID: <87a6gawxpe.wl-kuninori.morimoto.gx@gmail.com> From: kuninori.morimoto.gx@gmail.com To: Carl Philipp Klemm Subject: Re: [RFC PATCH 1/3] ASoC: simple-card-utils: add support for componants provideing jack events via set_jack In-Reply-To: <20211228190931.df5d518220080a734532ebfd@uvos.xyz> References: <20211228190931.df5d518220080a734532ebfd@uvos.xyz> User-Agent: Wanderlust/2.15.9 Emacs/26.3 Mule/6.0 MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-Mailman-Approved-At: Wed, 05 Jan 2022 09:42:15 +0100 Cc: alsa-devel@alsa-project.org, kuninori.morimoto.gx@renesas.com, tony@atomide.com, merlijn@wizzup.org, sre@kernel.org, linux-omap@vger.kernel.org X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" Hi Carl Thank you for your patch. > This allows componants that want a jack to report state on to do so by calling > set_jack on components implementing this function. > > Im not entirely sure this is the right way to do this so RFC (snip) > + for_each_rtd_components(rtd, i, component) { > + if (component->driver->set_jack) { > + if (!priv->hp_jack) { > + priv->hp_jack = devm_kzalloc(priv->snd_card.dev, > + sizeof(*priv->hp_jack), GFP_KERNEL); > + snd_soc_card_jack_new(&priv->snd_card, > + "Headphones", > + SND_JACK_HEADPHONE, > + &priv->hp_jack->jack, > + NULL, 0); > + } > + snd_soc_component_set_jack(component, &priv->hp_jack->jack, NULL); > + } > + } I'm sorry but I don't understand what you want to do by this patch. Is main code of this patch asoc_simple_dai_init() update (= call set_jack() for all component) ? > int asoc_simple_init_jack(struct snd_soc_card *card, > - struct asoc_simple_jack *sjack, > + struct asoc_simple_jack **sjack, > int is_hp, char *prefix, char *pin); ${LINUX}/sound/soc/fsl/fsl-asoc-card.c is using this function, too. We will have compile error without update it. > int asoc_simple_init_jack(struct snd_soc_card *card, > - struct asoc_simple_jack *sjack, > + struct asoc_simple_jack **sjack, > int is_hp, char *prefix, > char *pin) (snip) > if (gpio_is_valid(det)) { > - sjack->pin.pin = pin_name; > - sjack->pin.mask = mask; > + struct asoc_simple_jack *sjack_d; > + > + sjack = devm_kzalloc(dev, sizeof(*(*sjack)), GFP_KERNEL); > + sjack_d = *sjack; Am I misunderstanding ? I think you need to do here is this ? - sjack = devm_kzalloc(dev, sizeof(*(*sjack)), GFP_KERNEL); + *sjack = devm_kzalloc(dev, sizeof(*(*sjack)), GFP_KERNEL); Thank you for your help !! Best regards --- Kuninori Morimoto