mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Lucas Stach <dev@lynxeye.de>
To: barebox@lists.infradead.org
Subject: [PATCH v2 00/27] Phasing out direct usage of asm/mmu.h on ARM
Date: Thu,  5 Mar 2015 22:49:51 +0100	[thread overview]
Message-ID: <1425592221-23774-1-git-send-email-dev@lynxeye.de> (raw)

This series introduces to Barebox the streaming DMA ops and implements
them for the ARM architecture. This will make it a lot easier to
get common cache maintenance operations for all architectures and in
turn allows for wider reuse of driver across architectures.

I've tested this on a Tegra124 which is known to fall over in all sorts
of funny ways if cache maintenance is broken. No odd behavior spotted.

The series is bisect-clean and I've compile tested it on some defconfigs,
but please go wild and TEST. I'll take any complaints.

Changes since RFT:
- rebased to current master
- now compile tested on all ARM defconfigs
- fixed a few compile errors by reordering stuff in patches
- A few more words in commit logs

Changes since v1:
- compile tested on MIPS and NIOS
- sync prototypes of the dma_coherent fucntion across all arches
- introduce DMA_ADDRESS_BROKEN in drivers that need fixing for arches
  without 1:1 virt:phys mapping

Regards,
Lucas

Lucas Stach (27):
  usb: gadget: include common.h in header
  NIOS2: use dma_addr_t in dma_alloc_coherent
  MIPS: change dma_alloc/free_coherent to common prototypes
  ARM: change dma_alloc/free_coherent to match other architectures
  ARM: move virt<->phys translation to io.h
  dma: add streaming DMA ops
  ARM: move DMA alloc functions to dma.h
  ARM: implement streaming DMA ops
  AHCI: convert to streaming DMA ops
  MCI: dw-mmc: convert to streaming DMA ops
  MCI: imx: convert to streaming DMA ops
  MCI: tegra-sdmmc: convert to streaming DMA ops
  net: arc-emac: convert to streaming DMA ops
  net: cpsw: convert to streaming DMA ops
  net: at91_ether: convert to streaming DMA ops
  net: davinci_emac: convert to streaming DMA ops
  net: designware: convert to streaming DMA ops
  net: fec: convert to streaming DMA ops
  net: macb: convert to streaming DMA ops
  net: orion-gbe: convert to streaming DMA ops
  net: rtl8169: convert to streaming DMA ops
  net: xgmac: convert to streaming DMA ops
  usb: gadget: fsl_udc: convert to streaming DMA ops
  usb: host: ehci: convert to streaming DMA ops
  usb: host: ohci: convert to streaming DMA ops
  ARM: bcm2835: mbox: convert to streaming DMA ops
  ARM: MMU: unexport cache maintenance functions

 arch/arm/cpu/mmu.c                    | 55 +++++++++++++++++++++++------------
 arch/arm/include/asm/dma.h            | 35 +++++++++++++++++++++-
 arch/arm/include/asm/io.h             | 15 ++++++++++
 arch/arm/include/asm/mmu.h            | 45 ----------------------------
 arch/arm/mach-bcm2835/mbox.c          |  8 +++--
 arch/mips/include/asm/dma-mapping.h   |  6 ++--
 arch/mips/include/asm/dma.h           |  2 +-
 arch/nios2/include/asm/dma-mapping.h  | 13 +++++----
 arch/nios2/include/asm/types.h        |  2 ++
 drivers/ata/ahci.c                    | 29 ++++++++++++------
 drivers/dma/apbh_dma.c                |  5 ++--
 drivers/mci/Kconfig                   |  2 +-
 drivers/mci/dw_mmc.c                  | 28 +++++++++---------
 drivers/mci/imx-esdhc.c               | 28 +++++++++++-------
 drivers/mci/tegra-sdmmc.c             | 26 +++++++++--------
 drivers/mtd/nand/nand_mxs.c           |  7 +++--
 drivers/net/Kconfig                   |  1 +
 drivers/net/altera_tse.c              |  3 +-
 drivers/net/arc_emac.c                | 23 ++++++++++-----
 drivers/net/at91_ether.c              | 17 ++++++++---
 drivers/net/cpsw.c                    | 11 ++++---
 drivers/net/davinci_emac.c            |  9 +++---
 drivers/net/designware.c              | 26 ++++++++++-------
 drivers/net/fec_imx.c                 | 18 ++++++++----
 drivers/net/macb.c                    | 19 ++++++++----
 drivers/net/mvneta.c                  |  7 +++--
 drivers/net/orion-gbe.c               | 20 ++++++++-----
 drivers/net/rtl8139.c                 |  1 +
 drivers/net/rtl8169.c                 | 35 ++++++++++------------
 drivers/net/xgmac.c                   | 20 +++++++++----
 drivers/spi/mxs_spi.c                 |  1 -
 drivers/usb/gadget/fsl_udc.c          | 18 +++++++-----
 drivers/usb/host/ehci-hcd.c           | 15 ++++++----
 drivers/usb/host/ohci-hcd.c           | 20 ++++++++-----
 drivers/usb/host/xhci-hcd.c           |  8 ++---
 drivers/usb/host/xhci-hub.c           |  1 -
 drivers/video/atmel_hlcdfb.c          |  1 -
 drivers/video/atmel_lcdfb.c           |  1 -
 drivers/video/atmel_lcdfb_core.c      |  7 +++--
 drivers/video/imx-ipu-fb.c            |  4 ++-
 drivers/video/imx-ipu-v3/ipu-common.c |  1 -
 drivers/video/imx-ipu-v3/ipufb.c      |  5 ++--
 drivers/video/omap.c                  |  7 +++--
 drivers/video/pxa.c                   |  9 +++---
 include/dma-dir.h                     |  6 ++++
 include/dma.h                         | 13 +++++++++
 include/usb/gadget.h                  |  1 +
 47 files changed, 389 insertions(+), 245 deletions(-)
 create mode 100644 include/dma-dir.h

-- 
2.1.0


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

             reply	other threads:[~2015-03-05 21:51 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-05 21:49 Lucas Stach [this message]
2015-03-05 21:49 ` [PATCH v2 01/27] usb: gadget: include common.h in header Lucas Stach
2015-03-05 21:49 ` [PATCH v2 02/27] NIOS2: use dma_addr_t in dma_alloc_coherent Lucas Stach
2015-03-05 21:49 ` [PATCH v2 03/27] MIPS: change dma_alloc/free_coherent to common prototypes Lucas Stach
2015-03-05 21:49 ` [PATCH v2 04/27] ARM: change dma_alloc/free_coherent to match other architectures Lucas Stach
2015-03-05 21:49 ` [PATCH v2 04/27] ARM: move virt<->phys translation to io.h Lucas Stach
2015-03-05 21:49 ` [PATCH v2 05/27] " Lucas Stach
2015-03-05 21:49 ` [PATCH v2 05/27] dma: add streaming DMA ops Lucas Stach
2015-03-05 21:49 ` [PATCH v2 06/27] ARM: change dma_alloc/free_coherent to match other architectures Lucas Stach
2015-03-05 21:50 ` [PATCH v2 06/27] dma: add streaming DMA ops Lucas Stach
2015-03-05 21:50 ` [PATCH v2 07/27] ARM: move DMA alloc functions to dma.h Lucas Stach
2015-03-05 21:50 ` [PATCH v2 08/27] ARM: implement streaming DMA ops Lucas Stach
2015-03-05 21:50 ` [PATCH v2 09/27] AHCI: convert to " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 10/27] MCI: dw-mmc: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 11/27] MCI: imx: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 12/27] MCI: tegra-sdmmc: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 13/27] net: arc-emac: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 14/27] net: cpsw: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 15/27] net: at91_ether: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 16/27] net: davinci_emac: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 17/27] net: designware: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 18/27] net: fec: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 19/27] net: macb: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 20/27] net: orion-gbe: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 21/27] net: rtl8169: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 22/27] net: xgmac: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 23/27] usb: gadget: fsl_udc: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 24/27] usb: host: ehci: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 25/27] usb: host: ohci: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 26/27] ARM: bcm2835: mbox: " Lucas Stach
2015-03-05 21:50 ` [PATCH v2 27/27] ARM: MMU: unexport cache maintenance functions Lucas Stach

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=1425592221-23774-1-git-send-email-dev@lynxeye.de \
    --to=dev@lynxeye.de \
    --cc=barebox@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox