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

Commit 7f36b1e9 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge master.kernel.org:/home/rmk/linux-2.6-arm

parents 0e016b9f 73ee723e
Loading
Loading
Loading
Loading
+40 −1
Original line number Original line Diff line number Diff line
@@ -81,7 +81,8 @@ Adding New Machines


  Any large scale modifications, or new drivers should be discussed
  Any large scale modifications, or new drivers should be discussed
  on the ARM kernel mailing list (linux-arm-kernel) before being
  on the ARM kernel mailing list (linux-arm-kernel) before being
  attempted.
  attempted. See http://www.arm.linux.org.uk/mailinglists/ for the
  mailing list information.




NAND
NAND
@@ -120,6 +121,43 @@ Clock Management
  various clock units
  various clock units




Platform Data
-------------

  Whenever a device has platform specific data that is specified
  on a per-machine basis, care should be taken to ensure the
  following:

    1) that default data is not left in the device to confuse the
       driver if a machine does not set it at startup

    2) the data should (if possible) be marked as __initdata,
       to ensure that the data is thrown away if the machine is
       not the one currently in use.

       The best way of doing this is to make a function that
       kmalloc()s an area of memory, and copies the __initdata
       and then sets the relevant device's platform data. Making
       the function `__init` takes care of ensuring it is discarded
       with the rest of the initialisation code

       static __init void s3c24xx_xxx_set_platdata(struct xxx_data *pd)
       {
           struct s3c2410_xxx_mach_info *npd;

	   npd = kmalloc(sizeof(struct s3c2410_xxx_mach_info), GFP_KERNEL);
	   if (npd) {
	      memcpy(npd, pd, sizeof(struct s3c2410_xxx_mach_info));
	      s3c_device_xxx.dev.platform_data = npd;
	   } else {
              printk(KERN_ERR "no memory for xxx platform data\n");
	   }
	}

	Note, since the code is marked as __init, it should not be
	exported outside arch/arm/mach-s3c2410/, or exported to
	modules via EXPORT_SYMBOL() and related functions.

Port Contributors
Port Contributors
-----------------
-----------------


@@ -149,6 +187,7 @@ Document Changes
  06 Mar 2005 - BJD - Added Christer Weinigel
  06 Mar 2005 - BJD - Added Christer Weinigel
  08 Mar 2005 - BJD - Added LCVR to list of people, updated introduction
  08 Mar 2005 - BJD - Added LCVR to list of people, updated introduction
  08 Mar 2005 - BJD - Added section on adding machines
  08 Mar 2005 - BJD - Added section on adding machines
  09 Sep 2005 - BJD - Added section on platform data


Document Author
Document Author
---------------
---------------
+9 −0
Original line number Original line Diff line number Diff line
@@ -194,6 +194,13 @@ config ARCH_VERSATILE
	help
	help
	  This enables support for ARM Ltd Versatile board.
	  This enables support for ARM Ltd Versatile board.


config ARCH_REALVIEW
	bool "RealView"
	select ARM_AMBA
	select ICST307
	help
	  This enables support for ARM Ltd RealView boards.

config ARCH_IMX
config ARCH_IMX
	bool "IMX"
	bool "IMX"


@@ -244,6 +251,8 @@ source "arch/arm/mach-versatile/Kconfig"


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


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

# Definitions to make life easier
# Definitions to make life easier
config ARCH_ACORN
config ARCH_ACORN
	bool
	bool
+1 −0
Original line number Original line Diff line number Diff line
@@ -99,6 +99,7 @@ textaddr-$(CONFIG_ARCH_FORTUNET) := 0xc0008000
 machine-$(CONFIG_ARCH_IMX)	   := imx
 machine-$(CONFIG_ARCH_IMX)	   := imx
 machine-$(CONFIG_ARCH_H720X)	   := h720x
 machine-$(CONFIG_ARCH_H720X)	   := h720x
 machine-$(CONFIG_ARCH_AAEC2000)   := aaec2000
 machine-$(CONFIG_ARCH_AAEC2000)   := aaec2000
 machine-$(CONFIG_ARCH_REALVIEW)   := realview


ifeq ($(CONFIG_ARCH_EBSA110),y)
ifeq ($(CONFIG_ARCH_EBSA110),y)
# This is what happens if you forget the IOCS16 line.
# This is what happens if you forget the IOCS16 line.
+1 −1
Original line number Original line Diff line number Diff line
@@ -104,7 +104,7 @@ CONFIG_ARCH_IXCDP1100=y
CONFIG_ARCH_PRPMC1100=y
CONFIG_ARCH_PRPMC1100=y
CONFIG_ARCH_IXDP4XX=y
CONFIG_ARCH_IXDP4XX=y
CONFIG_CPU_IXP46X=y
CONFIG_CPU_IXP46X=y
CONFIG_MACH_GTWX5715=y
# CONFIG_MACH_GTWX5715 is not set


#
#
# IXP4xx Options
# IXP4xx Options
+18 −4
Original line number Original line Diff line number Diff line
@@ -7,13 +7,27 @@
lib-y		:= backtrace.o changebit.o csumipv6.o csumpartial.o   \
lib-y		:= backtrace.o changebit.o csumipv6.o csumpartial.o   \
		   csumpartialcopy.o csumpartialcopyuser.o clearbit.o \
		   csumpartialcopy.o csumpartialcopyuser.o clearbit.o \
		   copy_page.o delay.o findbit.o memchr.o memcpy.o    \
		   copy_page.o delay.o findbit.o memchr.o memcpy.o    \
		   memset.o memzero.o setbit.o strncpy_from_user.o    \
		   memmove.o memset.o memzero.o setbit.o              \
		   strnlen_user.o strchr.o strrchr.o testchangebit.o  \
		   strncpy_from_user.o strnlen_user.o                 \
		   testclearbit.o testsetbit.o uaccess.o getuser.o    \
		   strchr.o strrchr.o                                 \
		   putuser.o ashldi3.o ashrdi3.o lshrdi3.o muldi3.o   \
		   testchangebit.o testclearbit.o testsetbit.o        \
		   getuser.o putuser.o clear_user.o                   \
		   ashldi3.o ashrdi3.o lshrdi3.o muldi3.o             \
		   ucmpdi2.o lib1funcs.o div64.o sha1.o               \
		   ucmpdi2.o lib1funcs.o div64.o sha1.o               \
		   io-readsb.o io-writesb.o io-readsl.o io-writesl.o
		   io-readsb.o io-writesb.o io-readsl.o io-writesl.o


# the code in uaccess.S is not preemption safe and
# probably faster on ARMv3 only
ifeq ($CONFIG_PREEMPT,y)
  lib-y	+= copy_from_user.o copy_to_user.o
else
ifneq ($(CONFIG_CPU_32v3),y)
  lib-y	+= copy_from_user.o copy_to_user.o
else
  lib-y	+= uaccess.o
endif
endif

ifeq ($(CONFIG_CPU_32v3),y)
ifeq ($(CONFIG_CPU_32v3),y)
  lib-y	+= io-readsw-armv3.o io-writesw-armv3.o
  lib-y	+= io-readsw-armv3.o io-writesw-armv3.o
else
else
Loading