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

Commit 8460b3e5 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

Merge commit 'v2.6.38' into x86/mm



Conflicts:
	arch/x86/mm/numa_64.c

Merge reason: Resolve the conflict, update the branch to .38.

Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parents 56396e68 521cb40b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ modules.builtin
*.gz
*.bz2
*.lzma
*.xz
*.lzo
*.patch
*.gcno
+3 −3
Original line number Diff line number Diff line
@@ -73,8 +73,8 @@
      services.
    </para>
    <para>
      The core of every DRM driver is struct drm_device.  Drivers
      will typically statically initialize a drm_device structure,
      The core of every DRM driver is struct drm_driver.  Drivers
      will typically statically initialize a drm_driver structure,
      then pass it to drm_init() at load time.
    </para>

@@ -84,7 +84,7 @@
    <title>Driver initialization</title>
    <para>
      Before calling the DRM initialization routines, the driver must
      first create and fill out a struct drm_device structure.
      first create and fill out a struct drm_driver structure.
    </para>
    <programlisting>
      static struct drm_driver driver = {
+5 −0
Original line number Diff line number Diff line
@@ -82,6 +82,11 @@
     </sect1>
  </chapter>

  <chapter id="fs_events">
     <title>Events based on file descriptors</title>
!Efs/eventfd.c
  </chapter>

  <chapter id="sysfs">
     <title>The Filesystem for Exporting Kernel Objects</title>
!Efs/sysfs/file.c
+4 −29
Original line number Diff line number Diff line
@@ -65,19 +65,13 @@ looks at the connected hardware is beyond the scope of this document.
The boot loader must ultimately be able to provide a MACH_TYPE_xxx
value to the kernel. (see linux/arch/arm/tools/mach-types).

4. Setup boot data
------------------

4. Setup the kernel tagged list
-------------------------------

Existing boot loaders:		OPTIONAL, HIGHLY RECOMMENDED
New boot loaders:		MANDATORY

The boot loader must provide either a tagged list or a dtb image for
passing configuration data to the kernel.  The physical address of the
boot data is passed to the kernel in register r2.

4a. Setup the kernel tagged list
--------------------------------

The boot loader must create and initialise the kernel tagged list.
A valid tagged list starts with ATAG_CORE and ends with ATAG_NONE.
The ATAG_CORE tag may or may not be empty.  An empty ATAG_CORE tag
@@ -107,24 +101,6 @@ The tagged list must be placed in a region of memory where neither
the kernel decompressor nor initrd 'bootp' program will overwrite
it.  The recommended placement is in the first 16KiB of RAM.

4b. Setup the device tree
-------------------------

The boot loader must load a device tree image (dtb) into system ram
at a 64bit aligned address and initialize it with the boot data.  The
dtb format is documented in Documentation/devicetree/booting-without-of.txt.
The kernel will look for the dtb magic value of 0xd00dfeed at the dtb
physical address to determine if a dtb has been passed instead of a
tagged list.

The boot loader must pass at a minimum the size and location of the
system memory, and the root filesystem location.  The dtb must be
placed in a region of memory where the kernel decompressor will not
overwrite it.  The recommended placement is in the first 16KiB of RAM
with the caveat that it may not be located at physical address 0 since
the kernel interprets a value of 0 in r2 to mean neither a tagged list
nor a dtb were passed.

5. Calling the kernel image
---------------------------

@@ -149,8 +125,7 @@ In either case, the following conditions must be met:
- CPU register settings
  r0 = 0,
  r1 = machine type number discovered in (3) above.
  r2 = physical address of tagged list in system RAM, or
       physical address of device tree block (dtb) in system RAM
  r2 = physical address of tagged list in system RAM.

- CPU mode
  All forms of interrupts must be disabled (IRQs and FIQs)
+0 −40
Original line number Diff line number Diff line
@@ -13,7 +13,6 @@ Table of Contents

  I - Introduction
    1) Entry point for arch/powerpc
    2) Entry point for arch/arm

  II - The DT block format
    1) Header
@@ -226,45 +225,6 @@ it with special cases.
  cannot support both configurations with Book E and configurations
  with classic Powerpc architectures.

2) Entry point for arch/arm
---------------------------

   There is one single entry point to the kernel, at the start
   of the kernel image. That entry point supports two calling
   conventions.  A summary of the interface is described here.  A full
   description of the boot requirements is documented in
   Documentation/arm/Booting

        a) ATAGS interface.  Minimal information is passed from firmware
        to the kernel with a tagged list of predefined parameters.

                r0 : 0

                r1 : Machine type number

                r2 : Physical address of tagged list in system RAM

        b) Entry with a flattened device-tree block.  Firmware loads the
        physical address of the flattened device tree block (dtb) into r2,
        r1 is not used, but it is considered good practise to use a valid
        machine number as described in Documentation/arm/Booting.

                r0 : 0

                r1 : Valid machine type number.  When using a device tree,
                a single machine type number will often be assigned to
                represent a class or family of SoCs.

                r2 : physical pointer to the device-tree block
                (defined in chapter II) in RAM.  Device tree can be located
                anywhere in system RAM, but it should be aligned on a 32 bit
                boundary.

   The kernel will differentiate between ATAGS and device tree booting by
   reading the memory pointed to by r1 and looking for either the flattened
   device tree block magic value (0xd00dfeed) or the ATAG_CORE value at
   offset 0x4 from r2 (0x54410001).


II - The DT block format
========================
Loading