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 X-Spam-Level: X-Spam-Status: No, score=-7.3 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D1665C433E9 for ; Mon, 8 Mar 2021 16:17:10 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A688C6521B for ; Mon, 8 Mar 2021 16:17:10 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230522AbhCHQQm (ORCPT ); Mon, 8 Mar 2021 11:16:42 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51946 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231226AbhCHQQO (ORCPT ); Mon, 8 Mar 2021 11:16:14 -0500 Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com [IPv6:2a00:1450:4864:20::32b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0DAA6C06174A for ; Mon, 8 Mar 2021 08:16:14 -0800 (PST) Received: by mail-wm1-x32b.google.com with SMTP id r10-20020a05600c35cab029010c946c95easo4153333wmq.4 for ; Mon, 08 Mar 2021 08:16:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=dUhsdpgyKbkw4pWWzlPQlJO0EnmBV3jJKURQm4/QkFA=; b=Nff/mQrlyV5ROAurVkLSqXKFuMVDszocw7rDWhPBnR1Ok/wDmBLCS7nSDiGVDCozIp 80abNeWluZ3qJunraTaWeTDrTS6QZ55A1JrT+eOXxLY/VB8r0lVPL4S2vI9JqXfUw0Qg jb+a3xx6pBIAaJX274bWbRkLGTLpBwGJCgCj/mU7Jh1LVVmhvZbA1Yfo5a594wVROqUF cbvNKf6TSIj9Cebzvjd+bnKKtgJfjwRW4lwN84X4C8ewFjkxdJsneCURVdlOu38mHCCF LGW4Eqinvni1b7sguCO8y/yy0KD8f0vs5HY7l6zV1f0csCm/Z6QNTZIXx80Spfy2uVhK r2KA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=dUhsdpgyKbkw4pWWzlPQlJO0EnmBV3jJKURQm4/QkFA=; b=lsuFjqWyXnwK4UOIpJ98WS1AI99YH1VOMGmixcAD5c77DNHJxTHmQswqheTHNaItW9 G0rxBB9MBvlSKgqufx49bYAgbBfvaDJLsHagVkXL2h/BIdjOSAssXh5maJVa82es4sdP LKSmGo5oPdMt/VDu3U65sfruLhsJKQGmAqoFMHN2hcpQ02OR6rVbb1cfxC7gthsvKx0U b0zXkuMB7+N0qNKZvchRTYpRsZ5w5qjq6z7KmUFzDGZZI8eG62xyjqyaXgo9ee7ujd9j ZWxsWV1uuQxv/3YaoUOScKbLkpUCRg/h53IeEfJF0dhRe89W8yBG5OWyzX1BcSC9w8GC /5Bg== X-Gm-Message-State: AOAM533hRexwY140c/Oakn2lHUUIZQe4o5WN435j/I7hLGcvrKIiWRhj U+0yA2uugL03XuF9Tn2eJnWK2g== X-Google-Smtp-Source: ABdhPJx+IiBiziHQQ87PcUBmZFUJZZod0kR9YdAx8gqEn3DHUhj10eGtKcUpB9mxBAwo+eSgd3bZaQ== X-Received: by 2002:a1c:c282:: with SMTP id s124mr22525795wmf.99.1615220172820; Mon, 08 Mar 2021 08:16:12 -0800 (PST) Received: from [192.168.86.34] (cpc86377-aztw32-2-0-cust226.18-1.cable.virginm.net. [92.233.226.227]) by smtp.googlemail.com with ESMTPSA id n6sm20123107wmd.27.2021.03.08.08.16.12 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 08 Mar 2021 08:16:12 -0800 (PST) Subject: Re: [PATCH v3 8/9] soundwire: qcom: add auto enumeration support To: Pierre-Louis Bossart , vkoul@kernel.org Cc: yung-chuan.liao@linux.intel.com, sanyog.r.kale@intel.com, linux-kernel@vger.kernel.org, alsa-devel@alsa-project.org References: <20210308134957.16024-1-srinivas.kandagatla@linaro.org> <20210308134957.16024-9-srinivas.kandagatla@linaro.org> From: Srinivas Kandagatla Message-ID: <6050461e-5594-6272-e0ef-2ebdc271d809@linaro.org> Date: Mon, 8 Mar 2021 16:16:11 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 08/03/2021 15:56, Pierre-Louis Bossart wrote: > >> +static int qcom_swrm_enumerate(struct sdw_bus *bus) >> +{ >> +    struct qcom_swrm_ctrl *ctrl = to_qcom_sdw(bus); >> +    struct sdw_slave *slave, *_s; >> +    struct sdw_slave_id id; >> +    u32 val1, val2; >> +    bool found; >> +    u64 addr; >> +    int i; >> +    char *buf1 = (char *)&val1, *buf2 = (char *)&val2; >> + >> +    for (i = 1; i <= SDW_MAX_DEVICES; i++) { >> +        /*SCP_Devid5 - Devid 4*/ >> +        ctrl->reg_read(ctrl, SWRM_ENUMERATOR_SLAVE_DEV_ID_1(i), &val1); >> + >> +        /*SCP_Devid3 - DevId 2 Devid 1 Devid 0*/ >> +        ctrl->reg_read(ctrl, SWRM_ENUMERATOR_SLAVE_DEV_ID_2(i), &val2); >> + >> +        if (!val1 && !val2) >> +            break; >> + >> +        addr = buf2[1] | (buf2[0] << 8) | (buf1[3] << 16) | >> +            ((u64)buf1[2] << 24) | ((u64)buf1[1] << 32) | >> +            ((u64)buf1[0] << 40); >> + >> +        sdw_extract_slave_id(bus, addr, &id); >> +        found = false; >> +        /* Now compare with entries */ >> +        list_for_each_entry_safe(slave, _s, &bus->slaves, node) { >> +            if (sdw_compare_devid(slave, id) == 0) { >> +                u32 status = qcom_swrm_get_n_device_status(ctrl, i); >> + >> +                found = true; >> +                if (status == SDW_SLAVE_ATTACHED) { >> +                    slave->dev_num = i; >> +                    mutex_lock(&bus->bus_lock); >> +                    set_bit(i, bus->assigned); >> +                    mutex_unlock(&bus->bus_lock); >> + >> +                } > > you haven't changed that part, if the device is not in DT we should > still set bus->assigned::i My bad! I missed it again! Will fix it in next spin! --srini 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 X-Spam-Level: X-Spam-Status: No, score=-5.3 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A, SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E7388C433E0 for ; Mon, 8 Mar 2021 16:17:11 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 6EBCD6521B for ; Mon, 8 Mar 2021 16:17:11 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6EBCD6521B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=alsa-devel-bounces@alsa-project.org 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 0987F18D9; Mon, 8 Mar 2021 17:16:20 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz 0987F18D9 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1615220230; bh=Hf55fkCww1Btslpb4csEw76QDlJxLHAO9j5RJ5HekjM=; h=Subject:To:References:From:Date:In-Reply-To:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=g+yeaSDpzXXct5Bdy/O4LGsRp8bprvndKUJhwUlUVlTx3uaSRFxUmC4pQbJIoJDEn xJe7cqOUaWforp9NN3UX5nwAWfQBOPhDR8atqqrlSXd9Ti4x5eFRLY6PFDbAJUqXF9 98iTehAI13vf9pgi/eI07cN58hwWOuF7n5T2Ka7M= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id 8E8F1F8016C; Mon, 8 Mar 2021 17:16:19 +0100 (CET) Received: by alsa1.perex.cz (Postfix, from userid 50401) id 84A46F801D8; Mon, 8 Mar 2021 17:16:18 +0100 (CET) Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [IPv6:2a00:1450:4864:20::32e]) (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 D69EFF80139 for ; Mon, 8 Mar 2021 17:16:13 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz D69EFF80139 Authentication-Results: alsa1.perex.cz; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="Nff/mQrl" Received: by mail-wm1-x32e.google.com with SMTP id w7so6390819wmb.5 for ; Mon, 08 Mar 2021 08:16:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=dUhsdpgyKbkw4pWWzlPQlJO0EnmBV3jJKURQm4/QkFA=; b=Nff/mQrlyV5ROAurVkLSqXKFuMVDszocw7rDWhPBnR1Ok/wDmBLCS7nSDiGVDCozIp 80abNeWluZ3qJunraTaWeTDrTS6QZ55A1JrT+eOXxLY/VB8r0lVPL4S2vI9JqXfUw0Qg jb+a3xx6pBIAaJX274bWbRkLGTLpBwGJCgCj/mU7Jh1LVVmhvZbA1Yfo5a594wVROqUF cbvNKf6TSIj9Cebzvjd+bnKKtgJfjwRW4lwN84X4C8ewFjkxdJsneCURVdlOu38mHCCF LGW4Eqinvni1b7sguCO8y/yy0KD8f0vs5HY7l6zV1f0csCm/Z6QNTZIXx80Spfy2uVhK r2KA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=dUhsdpgyKbkw4pWWzlPQlJO0EnmBV3jJKURQm4/QkFA=; b=IJQpFPCeendYQGrTx9sasNbY6PqI4ZwUzAswqKQyxaXzm9z790rUZUqxYvKji0YUD0 OvRzUaRkWH9o/4j5r3nYFX8i4S3JNGFFsOSMyqndOthd5YlHo9G/wWGRiYluC88J2yWt EqWHDAMTDzpKbmrQxJp8U7gATm1qNW+Ka44TEH3bQ+xMYC7ASQgbCsrPYiKC/TU9VyYl e+SiX1lnihJPI98roLD3D0Vb81e8/VaNOuE2yFv6Kt0gGfyQmi5Zl1kDDoVX/6iPdp72 B5O4dMRZRisUkQvFm5BRJ3XlYROgaZgKnWxMdOoEKZ7qchrjThH+bdIZltXEjhn2lraY RuJA== X-Gm-Message-State: AOAM531UZiaeX4w2mE2LC7UMF5jG20ExkNPJp2e9tC2P4z5n+rkXIig8 N7zTqIwaWlc+OgnDsPMuXnB8ApsZdbuijA== X-Google-Smtp-Source: ABdhPJx+IiBiziHQQ87PcUBmZFUJZZod0kR9YdAx8gqEn3DHUhj10eGtKcUpB9mxBAwo+eSgd3bZaQ== X-Received: by 2002:a1c:c282:: with SMTP id s124mr22525795wmf.99.1615220172820; Mon, 08 Mar 2021 08:16:12 -0800 (PST) Received: from [192.168.86.34] (cpc86377-aztw32-2-0-cust226.18-1.cable.virginm.net. [92.233.226.227]) by smtp.googlemail.com with ESMTPSA id n6sm20123107wmd.27.2021.03.08.08.16.12 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 08 Mar 2021 08:16:12 -0800 (PST) Subject: Re: [PATCH v3 8/9] soundwire: qcom: add auto enumeration support To: Pierre-Louis Bossart , vkoul@kernel.org References: <20210308134957.16024-1-srinivas.kandagatla@linaro.org> <20210308134957.16024-9-srinivas.kandagatla@linaro.org> From: Srinivas Kandagatla Message-ID: <6050461e-5594-6272-e0ef-2ebdc271d809@linaro.org> Date: Mon, 8 Mar 2021 16:16:11 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Cc: sanyog.r.kale@intel.com, yung-chuan.liao@linux.intel.com, linux-kernel@vger.kernel.org, alsa-devel@alsa-project.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" On 08/03/2021 15:56, Pierre-Louis Bossart wrote: > >> +static int qcom_swrm_enumerate(struct sdw_bus *bus) >> +{ >> +    struct qcom_swrm_ctrl *ctrl = to_qcom_sdw(bus); >> +    struct sdw_slave *slave, *_s; >> +    struct sdw_slave_id id; >> +    u32 val1, val2; >> +    bool found; >> +    u64 addr; >> +    int i; >> +    char *buf1 = (char *)&val1, *buf2 = (char *)&val2; >> + >> +    for (i = 1; i <= SDW_MAX_DEVICES; i++) { >> +        /*SCP_Devid5 - Devid 4*/ >> +        ctrl->reg_read(ctrl, SWRM_ENUMERATOR_SLAVE_DEV_ID_1(i), &val1); >> + >> +        /*SCP_Devid3 - DevId 2 Devid 1 Devid 0*/ >> +        ctrl->reg_read(ctrl, SWRM_ENUMERATOR_SLAVE_DEV_ID_2(i), &val2); >> + >> +        if (!val1 && !val2) >> +            break; >> + >> +        addr = buf2[1] | (buf2[0] << 8) | (buf1[3] << 16) | >> +            ((u64)buf1[2] << 24) | ((u64)buf1[1] << 32) | >> +            ((u64)buf1[0] << 40); >> + >> +        sdw_extract_slave_id(bus, addr, &id); >> +        found = false; >> +        /* Now compare with entries */ >> +        list_for_each_entry_safe(slave, _s, &bus->slaves, node) { >> +            if (sdw_compare_devid(slave, id) == 0) { >> +                u32 status = qcom_swrm_get_n_device_status(ctrl, i); >> + >> +                found = true; >> +                if (status == SDW_SLAVE_ATTACHED) { >> +                    slave->dev_num = i; >> +                    mutex_lock(&bus->bus_lock); >> +                    set_bit(i, bus->assigned); >> +                    mutex_unlock(&bus->bus_lock); >> + >> +                } > > you haven't changed that part, if the device is not in DT we should > still set bus->assigned::i My bad! I missed it again! Will fix it in next spin! --srini