linux/arch/mips/include/asm/octeon
David Daney 24d4e7f642 MIPS: OCTEON: Add semaphore to serialize bootbus accesses.
Some hardware blocks attached to the OCTEON bootbus run asynchronously
to accesses from the CPUs.  These include MMC/SD host, CF(when using
DMA), and NAND controller.  A bus error, or corrupt data may occur if
a CPU is trying to access a bootbus connected device at the same time
the bus is running asynchronous operations.

To work around these problems we add this semaphore that must be
acquired before initiating bootbus activity.  Subsequent patches will
add users for this.

Signed-off-by: David Daney <david.daney@cavium.com>
[aleksey.makarov@auriga.com: combine the patches]
Signed-off-by: Aleksey Makarov <aleksey.makarov@auriga.com>
Signed-off-by: Chandrakala Chavva <cchavva@caviumnetworks.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/9459/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2015-04-01 17:21:42 +02:00
..
cvmx-address.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-agl-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-asm.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in kernel system headers 2012-10-02 18:01:25 +01:00
cvmx-asxx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-bootinfo.h MIPS: Octeon: Handle bootloader structures in little-endian mode. 2015-04-01 17:21:23 +02:00
cvmx-bootmem.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-ciu2-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-ciu-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-cmd-queue.h MIPS: asm: Rename GCC_OFF12_ASM to GCC_OFF_SMALL_ASM 2015-02-17 15:37:21 +00:00
cvmx-config.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-dbg-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-dpi-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-fau.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-fpa-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-fpa.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-gmxx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-gpio-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-helper-board.h MIPS: OCTEON: Supply OCTEON+ USB nodes in internal device trees. 2014-01-23 13:02:35 +01:00
cvmx-helper-errata.h MIPS: Add Cavium OCTEON PCI support. 2009-06-17 11:06:25 +01:00
cvmx-helper-jtag.h MIPS: Add Cavium OCTEON PCI support. 2009-06-17 11:06:25 +01:00
cvmx-helper-loop.h MIPS: Octeon: Rearrange CVMX files in preperation for device tree 2011-12-07 22:03:29 +00:00
cvmx-helper-npi.h MIPS: Octeon: Rearrange CVMX files in preperation for device tree 2011-12-07 22:03:29 +00:00
cvmx-helper-rgmii.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-helper-sgmii.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-helper-spi.h MIPS: Octeon: Rearrange CVMX files in preperation for device tree 2011-12-07 22:03:29 +00:00
cvmx-helper-util.h Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2013-03-02 07:44:16 -08:00
cvmx-helper-xaui.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-helper.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-iob-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-ipd-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-ipd.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-l2c-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-l2c.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-l2d-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-l2t-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-led-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-lmcx-defs.h MIPS: OCTEON: Add definitions for OCTEON memory contoller registers. 2012-12-13 18:15:25 +01:00
cvmx-mdio.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-mio-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-mixx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-mpi-defs.h MIPS: OCTEON: Add register definitions for SPI host hardware. 2012-08-22 23:46:38 +02:00
cvmx-npei-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-npi-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-packet.h
cvmx-pci-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-pciercx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-pcsx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-pcsxx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-pemx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-pescx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-pexp-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-pip-defs.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-pip.h treewide: Fix common typo in "identify" 2013-10-14 15:31:06 +02:00
cvmx-pko-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-pko.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-pow-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-pow.h mips: Convert pr_warning to pr_warn 2014-11-24 07:44:51 +01:00
cvmx-rnm-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-rst-defs.h MIPS: OCTEON: More OCTEONIII support 2015-02-20 15:32:46 +01:00
cvmx-scratch.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-sli-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-smix-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-spi.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-spinlock.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-spxx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-sriox-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-srxx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-stxx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-sysinfo.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx-uctlx-defs.h MIPS: OCTEON: Update register definitions. 2012-08-31 10:46:53 -07:00
cvmx-wqe.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
cvmx.h MIPS: Octeon: Mark octeon_model_get_string() with __init 2014-11-24 07:45:32 +01:00
octeon-feature.h MIPS: OCTEON: reintroduce crypto features check 2014-12-24 08:14:22 +11:00
octeon-model.h MIPS: OCTEON: Update octeon-model.h code for new SoCs. 2015-02-20 15:31:43 +01:00
octeon.h MIPS: OCTEON: Add semaphore to serialize bootbus accesses. 2015-04-01 17:21:42 +02:00
pci-octeon.h MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00