All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>,
	Ulf Hansson <ulf.hansson@linaro.org>
Cc: <f.fainelli@gmail.com>, Catalin Marinas <catalin.marinas@arm.com>,
	<linux-kernel@vger.kernel.org>,
	<linux-rpi-kernel@lists.infradead.org>,
	Will Deacon <will@kernel.org>,
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH for-next] arm64: defconfig: Set bcm2835-dma as built-in
Date: Fri, 24 Jan 2020 14:05:25 +0200	[thread overview]
Message-ID: <86672a12-6b88-dba8-0945-b6321ccf28c3@ti.com> (raw)
In-Reply-To: <C0400CAEQS8N.3P1J37PC0KU9F@linux-9qgx>



On 24/01/2020 13.51, Nicolas Saenz Julienne wrote:
> Hi Peter,
> 
> On Fri Jan 24, 2020 at 1:31 PM, Peter Ujfalusi wrote:
>> Hi Nicolas,
>>
>> On 24/01/2020 13.17, Nicolas Saenz Julienne wrote:
>>> With the introduction of 738987a1d6f1 ("mmc: bcm2835: Use
>>> dma_request_chan() instead dma_request_slave_channel()") sdhost-bcm2835
>>> now waits for its DMA channel to be available when defined in the
>>> device-tree (it would previously default to PIO). Albeit the right
>>> behaviour, the MMC host is needed for booting. So this makes sure the
>>> DMA channel shows up in time.
>>>
>>> Fixes: 738987a1d6f1 ("mmc: bcm2835: Use dma_request_chan() instead dma_request_slave_channel()")
>>
>> it is not a bug, it is a feature ;)
> 
> Agree, I'm just afraid of your series being picked up by a stable
> release without this patch. But maybe it's not necessary?

If you need MMC rootfs then the DMA needs to be built in or have initrd
with the modules.
The driver expects to have DMA channel and it is going to wait for it to
appear unless the request fails.

Without moving the DMA as built in and removing the deferred probe
handling form the MMC driver, one can just remove the DMA support from
the mmc-bcm2835 as it is not used at all.

I wonder why this is not signaled by automated boot testing, if any
exists for bcm2835.

>> Yes, if a driver have DMA binding and it is needed during boot then the
>> DMA driver also needs to be built in.
>> I believe it is desired to use DMA instead of PIO in any case for MMC
>> and in the past bcm2835 did not used DMA if DMA was module and the MMC
>> was built in.
>>
>> Sorry for the inconvenience this change has caused to bcm2835!
> 
> Not at all :)
> 
>> Reviewed-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
> 
> Thanks,
> Nicolas
> 

- Péter

Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

WARNING: multiple messages have this Message-ID (diff)
From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>,
	Ulf Hansson <ulf.hansson@linaro.org>
Cc: f.fainelli@gmail.com, Catalin Marinas <catalin.marinas@arm.com>,
	linux-kernel@vger.kernel.org,
	linux-rpi-kernel@lists.infradead.org,
	Will Deacon <will@kernel.org>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH for-next] arm64: defconfig: Set bcm2835-dma as built-in
Date: Fri, 24 Jan 2020 14:05:25 +0200	[thread overview]
Message-ID: <86672a12-6b88-dba8-0945-b6321ccf28c3@ti.com> (raw)
In-Reply-To: <C0400CAEQS8N.3P1J37PC0KU9F@linux-9qgx>



On 24/01/2020 13.51, Nicolas Saenz Julienne wrote:
> Hi Peter,
> 
> On Fri Jan 24, 2020 at 1:31 PM, Peter Ujfalusi wrote:
>> Hi Nicolas,
>>
>> On 24/01/2020 13.17, Nicolas Saenz Julienne wrote:
>>> With the introduction of 738987a1d6f1 ("mmc: bcm2835: Use
>>> dma_request_chan() instead dma_request_slave_channel()") sdhost-bcm2835
>>> now waits for its DMA channel to be available when defined in the
>>> device-tree (it would previously default to PIO). Albeit the right
>>> behaviour, the MMC host is needed for booting. So this makes sure the
>>> DMA channel shows up in time.
>>>
>>> Fixes: 738987a1d6f1 ("mmc: bcm2835: Use dma_request_chan() instead dma_request_slave_channel()")
>>
>> it is not a bug, it is a feature ;)
> 
> Agree, I'm just afraid of your series being picked up by a stable
> release without this patch. But maybe it's not necessary?

If you need MMC rootfs then the DMA needs to be built in or have initrd
with the modules.
The driver expects to have DMA channel and it is going to wait for it to
appear unless the request fails.

Without moving the DMA as built in and removing the deferred probe
handling form the MMC driver, one can just remove the DMA support from
the mmc-bcm2835 as it is not used at all.

I wonder why this is not signaled by automated boot testing, if any
exists for bcm2835.

>> Yes, if a driver have DMA binding and it is needed during boot then the
>> DMA driver also needs to be built in.
>> I believe it is desired to use DMA instead of PIO in any case for MMC
>> and in the past bcm2835 did not used DMA if DMA was module and the MMC
>> was built in.
>>
>> Sorry for the inconvenience this change has caused to bcm2835!
> 
> Not at all :)
> 
>> Reviewed-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
> 
> Thanks,
> Nicolas
> 

- Péter

Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2020-01-24 13:14 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-24 11:17 [PATCH for-next] arm64: defconfig: Set bcm2835-dma as built-in Nicolas Saenz Julienne
2020-01-24 11:17 ` Nicolas Saenz Julienne
2020-01-24 11:31 ` Peter Ujfalusi
2020-01-24 11:31   ` Peter Ujfalusi
2020-01-24 11:51   ` Nicolas Saenz Julienne
2020-01-24 11:51     ` Nicolas Saenz Julienne
2020-01-24 12:05     ` Peter Ujfalusi [this message]
2020-01-24 12:05       ` Peter Ujfalusi
2020-01-24 14:47       ` Nicolas Saenz Julienne
2020-01-24 14:47         ` Nicolas Saenz Julienne
2020-01-24 18:07         ` Peter Ujfalusi
2020-01-24 18:07           ` Peter Ujfalusi
2020-01-29  0:50 ` Florian Fainelli
2020-01-29  0:50   ` Florian Fainelli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=86672a12-6b88-dba8-0945-b6321ccf28c3@ti.com \
    --to=peter.ujfalusi@ti.com \
    --cc=catalin.marinas@arm.com \
    --cc=f.fainelli@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rpi-kernel@lists.infradead.org \
    --cc=nsaenzjulienne@suse.de \
    --cc=ulf.hansson@linaro.org \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.