Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 59b8175c authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm

* 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (117 commits)
  [ARM] 4058/2: iop32x: set ->broken_parity_status on n2100 onboard r8169 ports
  [ARM] 4140/1: AACI stability add ac97 timeout and retries
  [ARM] 4139/1: AACI record support
  [ARM] 4138/1: AACI: multiple channel support for IRQ handling
  [ARM] 4211/1: Provide a defconfig for ns9xxx
  [ARM] 4210/1: base for new machine type "NetSilicon NS9360"
  [ARM] 4222/1: S3C2443: Remove reference to missing S3C2443_PM
  [ARM] 4221/1: S3C2443: DMA support
  [ARM] 4220/1: S3C24XX: DMA system initialised from sysdev
  [ARM] 4219/1: S3C2443: DMA source definitions
  [ARM] 4218/1: S3C2412: fix CONFIG_CPU_S3C2412_ONLY wrt to S3C2443
  [ARM] 4217/1: S3C24XX: remove the dma channel show at startup
  [ARM] 4090/2: avoid clash between PXA and SA1111 defines
  [ARM] 4216/1: add .gitignore entries for ARM specific files
  [ARM] 4214/2: S3C2410: Add Armzone QT2410
  [ARM] 4215/1: s3c2410 usb device:  per-platform vbus_draw
  [ARM] 4213/1: S3C2410 - Update definition of ADCTSC_XY_PST
  [ARM] 4098/1: ARM: rtc_lock only used with rtc_cmos
  [ARM] 4137/1: Add kexec support
  [ARM] 4201/1: SMP barriers pair needed for the secondary boot process
  ...

Fix up conflict due to typedef removal in sound/arm/aaci.h
parents 920841d8 3b0eb4a1
Loading
Loading
Loading
Loading
+46 −0
Original line number Diff line number Diff line
			S3C2410 DMA
			===========

Introduction
------------

   The kernel provides an interface to manage DMA transfers
   using the DMA channels in the cpu, so that the central
   duty of managing channel mappings, and programming the
   channel generators is in one place.


DMA Channel Ordering
--------------------

   Many of the range do not have connections for the DMA
   channels to all sources, which means that some devices
   have a restricted number of channels that can be used.

   To allow flexibilty for each cpu type and board, the
   dma code can be given an dma ordering structure which
   allows the order of channel search to be specified, as
   well as allowing the prohibition of certain claims.

   struct s3c24xx_dma_order has a list of channels, and
   each channel within has a slot for a list of dma
   channel numbers. The slots are searched in order, for
   the presence of a dma channel number with DMA_CH_VALID
   orred in.

   If the order has the flag DMA_CH_NEVER set, then after
   checking the channel list, the system will return no
   found channel, thus denying the request.

   A board support file can call s3c24xx_dma_order_set()
   to register an complete ordering set. The routine will
   copy the data, so the original can be discared with
   __initdata.


Authour
-------

Ben Dooks,
Copyright (c) 2007 Ben Dooks, Simtec Electronics
Licensed under the GPL v2
+17 −4
Original line number Diff line number Diff line
@@ -8,13 +8,10 @@ Introduction

  The Samsung S3C24XX range of ARM9 System-on-Chip CPUs are supported
  by the 's3c2410' architecture of ARM Linux. Currently the S3C2410,
  S3C2440 and S3C2442 devices are supported.
  S3C2412, S3C2413, S3C2440 and S3C2442 devices are supported.

  Support for the S3C2400 series is in progress.

  Support for the S3C2412 and S3C2413 CPUs is being merged.


Configuration
-------------

@@ -26,6 +23,22 @@ Configuration
  please check the machine specific documentation.


Layout
------

  The core support files are located in the platform code contained in
  arch/arm/plat-s3c24xx with headers in include/asm-arm/plat-s3c24xx.
  This directory should be kept to items shared between the platform
  code (arch/arm/plat-s3c24xx) and the arch/arm/mach-s3c24* code.

  Each cpu has a directory with the support files for it, and the
  machines that carry the device. For example S3C2410 is contained
  in arch/arm/mach-s3c2410 and S3C2440 in arch/arm/mach-s3c2440

  Register, kernel and platform data definitions are held in the
  include/asm-arm/arch-s3c2410 directory.


Machines
--------

+38 −2
Original line number Diff line number Diff line
@@ -245,6 +245,8 @@ config ARCH_IOP33X

config ARCH_IOP13XX
	bool "IOP13xx-based"
	depends on MMU
	select PLAT_IOP
	select PCI
	help
	  Support for Intel's IOP13XX (XScale) family of processors.
@@ -283,6 +285,14 @@ config ARCH_L7200
	  If you have any questions or comments about the Linux kernel port
	  to this board, send e-mail to <sjhill@cotw.com>.

config ARCH_NS9XXX
	bool "NetSilicon NS9xxx"
	help
	  Say Y here if you intend to run this kernel on a NetSilicon NS9xxx
	  System.

	  <http://www.digi.com/products/microprocessors/index.jsp>

config ARCH_PNX4008
	bool "Philips Nexperia PNX4008 Mobile"
	help
@@ -292,6 +302,7 @@ config ARCH_PXA
	bool "PXA2xx-based"
	depends on MMU
	select ARCH_MTD_XIP
	select GENERIC_TIME
	help
	  Support for Intel's PXA2XX processor line.

@@ -316,7 +327,7 @@ config ARCH_SA1100
	  Support for StrongARM 11x0 based boards.

config ARCH_S3C2410
	bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442"
	bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443"
	help
	  Samsung S3C2410X CPU based systems, such as the Simtec Electronics
	  BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
@@ -376,7 +387,16 @@ source "arch/arm/mach-omap1/Kconfig"

source "arch/arm/mach-omap2/Kconfig"

source "arch/arm/plat-s3c24xx/Kconfig"

if ARCH_S3C2410
source "arch/arm/mach-s3c2400/Kconfig"
source "arch/arm/mach-s3c2410/Kconfig"
source "arch/arm/mach-s3c2412/Kconfig"
source "arch/arm/mach-s3c2440/Kconfig"
source "arch/arm/mach-s3c2442/Kconfig"
source "arch/arm/mach-s3c2443/Kconfig"
endif

source "arch/arm/mach-lh7a40x/Kconfig"

@@ -390,10 +410,12 @@ source "arch/arm/mach-aaec2000/Kconfig"

source "arch/arm/mach-realview/Kconfig"

source "arch/arm/mach-at91rm9200/Kconfig"
source "arch/arm/mach-at91/Kconfig"

source "arch/arm/mach-netx/Kconfig"

source "arch/arm/mach-ns9xxx/Kconfig"

# Definitions to make life easier
config ARCH_ACORN
	bool
@@ -751,6 +773,20 @@ config XIP_PHYS_ADDR
	  be linked for and stored to.  This address is dependent on your
	  own flash usage.

config KEXEC
	bool "Kexec system call (EXPERIMENTAL)"
	depends on EXPERIMENTAL
	help
	  kexec is a system call that implements the ability to shutdown your
	  current kernel, and to start another kernel.  It is like a reboot
	  but it is indepedent of the system firmware.   And like a reboot
	  you can start any kernel with it, not just Linux.

	  It is an ongoing process to be certain the hardware in a machine
	  is properly shutdown, so do not be surprised if this code does not
	  initially work for you.  It may help to enable device hotplugging
	  support.

endmenu

if (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_IMX )
+13 −5
Original line number Diff line number Diff line
@@ -128,6 +128,8 @@ endif
 machine-$(CONFIG_ARCH_EP93XX)	   := ep93xx
 machine-$(CONFIG_ARCH_PNX4008)	   := pnx4008
 machine-$(CONFIG_ARCH_NETX)	   := netx
 machine-$(CONFIG_ARCH_NS9XXX)	   := ns9xxx
 textofs-$(CONFIG_ARCH_NS9XXX)	   := 0x00108000

ifeq ($(CONFIG_ARCH_EBSA110),y)
# This is what happens if you forget the IOCS16 line.
@@ -161,6 +163,11 @@ endif
# If we have a machine-specific directory, then include it in the build.
core-y				+= arch/arm/kernel/ arch/arm/mm/ arch/arm/common/
core-y				+= $(MACHINE)
core-$(CONFIG_ARCH_S3C2410)	+= arch/arm/mach-s3c2400/
core-$(CONFIG_ARCH_S3C2410)	+= arch/arm/mach-s3c2412/
core-$(CONFIG_ARCH_S3C2410)	+= arch/arm/mach-s3c2440/
core-$(CONFIG_ARCH_S3C2410)	+= arch/arm/mach-s3c2442/
core-$(CONFIG_ARCH_S3C2410)	+= arch/arm/mach-s3c2443/
core-$(CONFIG_FPE_NWFPE)	+= arch/arm/nwfpe/
core-$(CONFIG_FPE_FASTFPE)	+= $(FASTFPE_OBJ)
core-$(CONFIG_VFP)		+= arch/arm/vfp/
@@ -168,6 +175,7 @@ core-$(CONFIG_VFP) += arch/arm/vfp/
# If we have a common platform directory, then include it in the build.
core-$(CONFIG_PLAT_IOP)		+= arch/arm/plat-iop/
core-$(CONFIG_ARCH_OMAP)	+= arch/arm/plat-omap/
core-$(CONFIG_PLAT_S3C24XX)		+= arch/arm/plat-s3c24xx/

drivers-$(CONFIG_OPROFILE)      += arch/arm/oprofile/
drivers-$(CONFIG_ARCH_CLPS7500)	+= drivers/acorn/char/
+2 −0
Original line number Diff line number Diff line
Image
zImage
Loading