lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 26 May 2015 16:25:55 +0300
From:	Peter Ujfalusi <peter.ujfalusi@...com>
To:	<vinod.koul@...el.com>, <tony@...mide.com>
CC:	<devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
	<dan.j.williams@...el.com>, <dmaengine@...r.kernel.org>,
	<linux-serial@...r.kernel.org>, <linux-omap@...r.kernel.org>,
	<linux-mmc@...r.kernel.org>, <linux-crypto@...r.kernel.org>,
	<linux-spi@...r.kernel.org>, <linux-media@...r.kernel.org>,
	<alsa-devel@...a-project.org>
Subject: [PATCH 00/13] dmaengine + omap drivers: support fro deferred probing

Hi,

Vinod: as I promised: https://lkml.org/lkml/2015/5/8/80

With this series it is possible to put omap-dma or edma to even late_initcall
and the drivers will figure out the load order fine(ish).
We need to add dma_request_slave_channel_compat_reason() which is the equivalent
of dma_request_slave_channel_compat() but returning with error codes in case of
failure instead of NULL pointer.
The rest of the series just converts the OMAP/daVinci drivers to use this new
function to get the channel(s) and to handle the deferred probing.

I did not moved the omap-dma, edma or ti-dma-crossbar from arch_initcall. If I
do so UART will only comes up after the DMA driver is loaded since we are using,
or going to use 8250 with DAM support. This delays the kernel messages. Other
issue is the MMC/SD cards. On  board with eMMC and SD card slot the mmcblk0/1
might get swapped due to different probe order for the MMC/SD drivers. For
example in omap5-uevm:
1. omap-dma in arch_initcall the SD card is mmcblk1 (4809c000.mmc) and eMMC is
mmcblk0 (480b4000.mmc)
2. omap-dma in late_initcall the SD card is mmcblk0 (4809c000.mmc) and eMMC is
mmcblk1 (480b4000.mmc)

Because in case 1 the 4809c000.mmc got deferred by missing regulator so
480b4000.mmc got registered first. In case 2 both deferring because of DMA and
at the end 4809c000.mmc get registered first. So far I have not found a way to
bind mmcblk0/1 to a specific node...

Regards,
Peter
---
Peter Ujfalusi (13):
  dmaengine: of_dma: Correct return code for
    of_dma_request_slave_channel in case !CONFIG_OF
  dmaengine: Introduce dma_request_slave_channel_compat_reason()
  serial: 8250_dma: Support for deferred probing when requesting DMA
    channels
  mmc: omap_hsmmc: No need to check DMA channel validity at module
    remove
  mmc: omap_hsmmc: Support for deferred probing when requesting DMA
    channels
  mmc: omap: Support for deferred probing when requesting DMA channels
  mmc: davinci_mmc: Support for deferred probing when requesting DMA
    channels
  crypto: omap-aes - Support for deferred probing when requesting DMA
    channels
  crypto: omap-des - Support for deferred probing when requesting DMA
    channels
  crypto: omap-sham - Support for deferred probing when requesting DMA
    channel
  spi: omap2-mcspi: Support for deferred probing when requesting DMA
    channels
  [media] omap3isp: Support for deferred probing when requesting DMA
    channel
  ASoC: omap-pcm: Switch to use
    dma_request_slave_channel_compat_reason()

 drivers/crypto/omap-aes.c                 | 38 ++++++++++++++++---------------
 drivers/crypto/omap-des.c                 | 38 ++++++++++++++++---------------
 drivers/crypto/omap-sham.c                | 15 ++++++++----
 drivers/media/platform/omap3isp/isphist.c | 12 +++++++---
 drivers/mmc/host/davinci_mmc.c            | 26 ++++++++++++---------
 drivers/mmc/host/omap.c                   | 20 ++++++++++++----
 drivers/mmc/host/omap_hsmmc.c             | 28 ++++++++++-------------
 drivers/spi/spi-omap2-mcspi.c             | 36 +++++++++++++++++------------
 drivers/tty/serial/8250/8250_dma.c        | 18 +++++++--------
 include/linux/dmaengine.h                 | 22 ++++++++++++++++++
 include/linux/of_dma.h                    |  2 +-
 sound/soc/omap/omap-pcm.c                 | 16 ++++++++-----
 12 files changed, 164 insertions(+), 107 deletions(-)

-- 
2.3.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ