Received: by 10.213.65.68 with SMTP id h4csp1624528imn; Thu, 5 Apr 2018 00:30:50 -0700 (PDT) X-Google-Smtp-Source: AIpwx4/JWBccTofpUjptGH54GovS4smbWBQK6jMIZYm3L0JMPHAxGi05/HzAuqFzs0ivhWTowxtq X-Received: by 2002:a17:902:2884:: with SMTP id f4-v6mr21614396plb.153.1522913450277; Thu, 05 Apr 2018 00:30:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522913450; cv=none; d=google.com; s=arc-20160816; b=cLADMXGyuDz21Hu5JCS0pTxoLQihKit90sKx0cY9KpMiJn52HJH4Tj7JrwzpS8eutS hmy7IYZ+Glq1Y9mafRMamrLch4XiZEWEdZdKoXURUcKDNW3klMgtDG5aaeO5M6aXKzDc GFl23XqZMHi+3x8bKR0Q5milvVcj8LXMypf4+m/khkBanzrrP1Sac/TvYWn45qSH9RbY P7oOF01SsIJTFWPpew6WDYp8yDjzcT1cUCOAQlsRjjqphsFog4szbQQSM/BJcH2XO60C GtP3hSqHv46HFR+dU+GX3ZMe+0TnF+4jtbiN6G5GkTU3GOX9vIlh4uSDqX4pT0My0KT8 hMOw== 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 :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=KEP8p4MocdRAlGlwo2Iats6VrrLviUm321LIAn0D4fI=; b=ECYLaADl02z6Xno77vxh8UKb5gOzyfS+mE8H9uzueQFbvo1e+SOwqTcDSf39prKb/E 8xwUwZX25fCsqMjLMSxfi/XGKKNPGAymLqL/kejpmQnCqdwYD3SgKtot1JU6atT1dObI K7aV/stLgvBFoFqq6WaqkQBAEEsF1YiLVW4slSNbrtd5/kdjoQNVlupJMNvRB1xsBnqx PlgVVY2rY1Zs15azdjAz7EwmkHzXtmc69KKAKt4KUgdhbf6xfbmu9jfjPIRjxCbxADwP 1xWaElZA8ttP5YP7CFl75DZFDTowt+yoNnpOjj4msO34IOh9tZBiYlwXj3GoYYGcyN/3 URvA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=PuZkPb4o; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a64-v6si5296343pla.117.2018.04.05.00.30.36; Thu, 05 Apr 2018 00:30:50 -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=fail header.i=@gmail.com header.s=20161025 header.b=PuZkPb4o; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751275AbeDEH3c (ORCPT + 99 others); Thu, 5 Apr 2018 03:29:32 -0400 Received: from mail-qk0-f174.google.com ([209.85.220.174]:34452 "EHLO mail-qk0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751097AbeDEH3b (ORCPT ); Thu, 5 Apr 2018 03:29:31 -0400 Received: by mail-qk0-f174.google.com with SMTP id g7so13118144qkm.1 for ; Thu, 05 Apr 2018 00:29:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=KEP8p4MocdRAlGlwo2Iats6VrrLviUm321LIAn0D4fI=; b=PuZkPb4orGSPDBrkL1x9WOOXyVPwaCAdXZJFBmLJjqidMwDnyPqEDXyQqU4LVcVe2N OrImQXrvcNJ08JgvIACt9SL0phjyH/h1UT7/vg8d7GEvBZtB0MGiC6ZDM/rLvrlErgsF C7DNHNqBC3jcbhJFCBiB1ynZ81iVvhw/HK8i97BATI5xkHJphgeN8jtZLKgdeYjx9TGG Lh0CxzIJuErxj03701nLOrXX9yYBbiUxrOg3ZV4jpOQNfkPvy9LC3LClpUu8mVeN0sdF nRr4mMGTAW7+6A17OCV9ABIUeXXPQdfl0jnkxClP1T8BOoF2Y2B0S3m+EQCBLvRK1gIO SzsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=KEP8p4MocdRAlGlwo2Iats6VrrLviUm321LIAn0D4fI=; b=MNtfeC1lDF2xhZH7WCl2lb3qdehMQxC7dx2IKRnBI+kurEyppEMUHBDVNaecpZ+APl wQiR1LoT7Z1xq5/vxfh4sH1HotMxTHuGKBW+yU9X0Kx3dfwwcA2BSoYvVUVpQK/6cart 2xWAxow2AMHBfJFptnQ5bp7syVFAnbiXWmkkIQf2cKIV7J5QESPw9l+op5iibQBhh6lH HXqse/AbklsVG2AocwnqRVdYTUFwdF7Tk771ZqXIimZaxwPdXZrgJD6nK9VDgHMtuAvZ yVIWfdY1esD3dlTtqyK9USmfbGcf/W7NzuHmI59YLxURVrImpYpqTGXQbOCfS6FNw05G eoJA== X-Gm-Message-State: ALQs6tD/M+FbRi+wcwqp7+LzuG/19ykx1HWCCj4l6Ofrg3sHfsxDqobw Lfm1uKbrZTvrVZ8sWEzTNvSrnQaHno2zdyen5HI= X-Received: by 10.55.239.9 with SMTP id j9mr12734130qkk.343.1522913370476; Thu, 05 Apr 2018 00:29:30 -0700 (PDT) MIME-Version: 1.0 Received: by 10.12.185.25 with HTTP; Thu, 5 Apr 2018 00:29:30 -0700 (PDT) In-Reply-To: <87zi2i2ljy.fsf@belgarion.home> References: <20180402142656.26815-1-robert.jarzmik@free.fr> <20180402142656.26815-15-robert.jarzmik@free.fr> <87lge4485x.fsf@belgarion.home> <87zi2i2ljy.fsf@belgarion.home> From: Arnd Bergmann Date: Thu, 5 Apr 2018 09:29:30 +0200 X-Google-Sender-Auth: JSw7Ac3WKo6NymtgimguWiByWYA Message-ID: Subject: Re: [PATCH 14/15] ARM: pxa: change SSP devices allocation To: Robert Jarzmik Cc: Daniel Mack , Haojian Zhuang , Vinod Koul , Jaroslav Kysela , Takashi Iwai , Liam Girdwood , Mark Brown , Linux ARM , Linux Kernel Mailing List , alsa-devel@alsa-project.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 Thu, Apr 5, 2018 at 8:51 AM, Robert Jarzmik wrote: > Arnd Bergmann writes: > >> I'm still unable to follow through that code, but I understand now that >> the device you pass to dma_request_slave_channel() is not the one >> we'd like it to be here. >> >> Where exactly does that call to dma_request_chan() happen? Is this >> the one in dmaengine_pcm_new()? Could we perhaps put a >> pointer to the SSP device into snd_dmaengine_dai_dma_data? > This is a sample stack I captured with an added WARN_ON(1), triggered by a > userland "aplay Sultans_Of_Swing.wav" :) > > [ 299.216743] [] (unwind_backtrace) from [] (show_stack+0x20/0x24) > [ 299.223986] [] (show_stack) from [] (dump_stack+0x20/0x28) > [ 299.231321] [] (dump_stack) from [] (__warn+0xf0/0x11c) > [ 299.238183] [] (__warn) from [] (warn_slowpath_null+0x4c/0x58) > [ 299.245234] [] (warn_slowpath_null) from [] (dma_request_chan+0x40/0x228) > [ 299.252550] [] (dma_request_chan) from [] (dma_request_slave_channel+0x18/0x24) > [ 299.259855] [] (dma_request_slave_channel) from [] (__pxa2xx_pcm_open+0xf4/0x110) > [ 299.266789] [] (__pxa2xx_pcm_open) from [] (soc_pcm_open+0xf8/0x9c8) > [ 299.273932] [] (soc_pcm_open) from [] (snd_pcm_open_substream+0x9c/0x134) Ok, so it seems we currently have a special case here that is only used by pxa/mmp and omap, and you can simply open-code that by calling dma_request_chan() from the pxa-specific __pxa2xx_pcm_open() with any device pointer you like, it doesn't have to be the main audio device. I don't know exactly how the probing works, but I'd assume that we have the correct device pointers in pxa2xx_ac97_dev_probe() and asoc_ssp_probe(), or maybe in pxa2xx_ac97_*_startup() and pxa_ssp_startup(). Arnd