Linaro Linux 12.03

Milestone information

Project:
Linaro Linux
Series:
devtrack
Version:
12.03
Released:
 
Registrant:
David Zinman
Release registered:
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
1 Anton Vorontsov, 5 John Stultz, 1 Linus Walleij, 1 Rajendra Nayak, 1 Shawn Guo
Blueprints:
1 Unknown, 1 Slow progress, 1 Good progress, 1 Needs Code Review, 1 Deployment, 4 Implemented
Bugs:
No bugs are targeted to this milestone.

Download files for this release

After you've downloaded a file, you can verify its authenticity using its MD5 sum or signature. (How do I verify a download?)

File Description Downloads
download icon linux-linaro-3.3-2012.03-2.tar.bz2 (md5) linux-linaro-3.3-2012.03 878
last downloaded 4 days ago
Total downloads: 878

Release notes 

The Linaro Kernel Working Group (KWG) and the Linaro Platform
Group are excited to announce the availability our March 2012
development snapshot:

linux-linaro-3.3-2012.03-2

As the word "snapshot" implies, these are meant as development kernels
and have not been fully validated. You should expect issues and to help
us deliver a better kernel in the future, please file bugs in Launchpad at
https://bugs.launchpad.net/linux-linaro.

The source tarball is available at:
    https://launchpad.net/linux-linaro/devtrack/12.03/+download/linux-linaro-3.3-2012.03-2.tar.bz2

The kernel sources can also be accessed using git at:
 git://git.linaro.org/kernel/linux-linaro-tracking.git
 tag: linux-linaro-3.3-2012.03-2

This kernel includes the following changes from the 2012.02 kernel:

- Update to 3.3

- Various patches from Linaro
 * Versatile Express patches from ARM LT
 * Gator module for ARM's Streamline Performance Ananlyzer from ARM LT
 * updated irq_domain patch set from Grant L.
 * cpuidle core consolidation, cpuidle support for i.MX5/6 and ST-E u8500 from PM WG
 * updated patch set support for common save and restore code to the
Samsung exynos platform from PM WG
 * updated thermal_cpu_cooling patch set from the power management WG
 * UFS patches from kernel WG
 * eMMC4.5 patches from kernel WG
 * initial dma-buf patch set and some related components for UMM

- AOSP 3.3 android patch set

A full change log against the 3.3 release is available at:
    https://launchpad.net/linux-linaro/devtrack/12.03

High Priority Known Issues:

- ANDROID_RAM_CONSOLE must be disabled for the android kernel to boot.

Changelog 

View the full changelog

commit 0b7071f0561583d1fc4af4f282b99e5cccb1e571
Author: Tushar Behera <email address hidden>
Date: Mon Mar 26 17:00:24 2012 +0530

    alarmtimer: Fix conflicting definitions of alarmtimer_get_rtcdev

    Both the implementation in kernel/time/alarmtime.c have same definition.

    This fixes following compile-time error.

    kernel/time/alarmtimer.c:113:46: error: macro "alarmtimer_get_rtcdev" passed 1 arguments, but takes just 0
    kernel/time/alarmtimer.c:114:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
    make[2]: *** [kernel/time/alarmtimer.o] Error 1

    Signed-off-by: Tushar Behera <email address hidden>
    Signed-off-by: Andrey Konovalov <email address hidden>

commit b3d755383884f9c9d1589baa513afb6507741d0e
Author: Tushar Behera <email address hidden>
Date: Mon Mar 26 16:54:15 2012 +0530

    security: Add proper checks for Android specific capability checks

    Commit b641072 ("security: Add AID_NET_RAW and AID_NET_ADMIN capability
    check in cap_capable().") introduces additional checks for AID_NET_xxx
    macros. Since the header file including those macros are conditionally
    included, the checks should also be conditionally executed.

    Signed-off-by: Tushar Behera <email address hidden>
    Signed-off-by: Andrey Konovalov <email address hidden>

commit fc46f3107d8b3470ea39822764ed453c7ad599ea
Author: Andrey Konovalov <email address hidden>
Date: Fri Mar 23 21:48:02 2012 +0400

    Include if_pppolac.h and if_pppopns.h into header-y target

    This is required to pass the headers_check

    Signed-off-by: Andrey Konovalov <email address hidden>

commit 12e12c6292fe89392e352ccb25cfa44610e46348
Author: Sumit Semwal <email address hidden>
Date: Fri Mar 23 20:31:39 2012 +0530

    dma-buf: Correct dummy function declarations.

    Dummy functions for the newly added cpu access ops are needed for compilation
    when dma-buf framework is not compiled-in.

    Also, the introduction of flags in dma_buf_fd needs to be added to dummy
    functions as well.

    Signed-off-by: Sumit Semwal <email address hidden>

commit e5ddd60534f8ab2c17514b5b3af7d8f88f4b6408
Merge: 9c0d192 4bbdc68
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 22:15:11 2012 +0400

    Merge branch 'tracking-armlt-android-config' into integration-linux-linaro

commit 4bbdc68a3ba52b205a4733ec69ac806d0df1edd1
Author: Jon Medhurst <email address hidden>
Date: Thu Mar 1 17:13:55 2012 +0000

    Android: vexpress defconfig

    Signed-off-by: Jon Medhurst <email address hidden>

commit 9c0d19268593ac05e97e70ab53dbc86081ef22cd
Merge: 4893b82 88bef40
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 22:14:47 2012 +0400

    Merge branch 'tracking-linaro-android-3.3' into integration-linux-linaro

commit 88bef40b1205317592bb0c6c60ebf084422485c3
Author: Nick Kralevich <email address hidden>
Date: Wed Feb 22 15:48:11 2012 -0800

    android: ram_console: honor dmesg_restrict

    The Linux kernel has a setting called dmesg_restrict. When true,
    only processes with CAP_SYSLOG can view the kernel dmesg logs. This
    helps prevent leaking of kernel information into user space.

    On Android, it's possible to bypass these restrictions by viewing
    /proc/last_kmsg.

    This change makes /proc/last_kmsg require the same permissions as
    dmesg.

    Bug: 5555691
    Signed-off-by: Nick Kralevich <email address hidden>
    Change-Id: I50ecb74012ef2ac0a3cff7325192634341fddae9

commit 91154555190c1d25d02db5240a4cb89d2603c6da
Merge: cd7bc93 192cfd5
Author: Colin Cross <email address hidden>
Date: Mon Mar 5 14:17:12 2012 -0800

    Merge commit 'v3.3-rc6' into android-3.3

commit cd7bc93466877cb1396cbddb4e608252db2a9a3f
Author: Colin Cross <email address hidden>
Date: Mon Mar 5 13:04:53 2012 -0800

    android: staging: ram_console: fix crash in ram_console_late_init

    If the persistent ram buffer is not available, ram_console_late_init
    would crash when dereferencing ram_console_zone. Return early if
    ram console was not initialized.

    Change-Id: Idff0f690406cdb2fe977bab64a39dc8b40dd4566
    Signed-off-by: Colin Cross <email address hidden>

commit 1ebd20c6af8dd5e4d480a2616ac31afb89d52e52
Author: Colin Cross <email address hidden>
Date: Mon Mar 5 13:29:45 2012 -0800

    usb: gadget: adb: allow freezing in adb_read

    wait_event_interruptible in adb_read might return -ERESTARTSYS if
    userspace is frozen during adb_read or another signal is delivered
    to adb. If so, don't set dev->error to avoid resetting the adb
    connection.

    Change-Id: I5a7baa013a9a3a3b5305de7e6a0d18546a560018
    Signed-off-by: Colin Cross <email address hidden>

commit a5d2e61148fba0f09499c4b65902adebc391350b
Merge: fbd94b8 6b21d18
Author: Colin Cross <email address hidden>
Date: Fri Mar 2 12:34:55 2012 -0800

    Merge commit 'v3.3-rc5' into android-3.3

commit fbd94b86e411e6ea0b4fa56682120b32af5c16c2
Merge: 293f64a b01543d
Author: Colin Cross <email address hidden>
Date: Tue Feb 21 12:45:05 2012 -0800

    Merge commit 'v3.3-rc4' into android-3.3

    Conflicts:
     drivers/mmc/core/sdio.c
     drivers/staging/android/Kconfig
     drivers/staging/android/lowmemorykiller.c

    Change-Id: I39ef9b27bb9febaee811b200ccac0ed5d51147f3

commit 293f64abe6006f6ff1cc6f672e27729ff7b74ead
Author: Colin Cross <email address hidden>
Date: Fri Aug 26 17:49:35 2011 -0700

    android: persistent_trace: ftrace into persistent_ram

    persistent_trace uses the ftrace infrastructure, but traces
    into a persistent_ram buffer instead of the regular ftrace
    ringbuffer. After a reset or panic, the trace can be
    decoded with cat /sys/kernel/debug/persistent_trace.

    Change-Id: Ia6025ccc323599c7844e0783af0386d32ed7419e
    Signed-off-by: Colin Cross <email address hidden>

commit 822a717286c1120b0d89163b809d7848966ada12
Author: Colin Cross <email address hidden>
Date: Mon Aug 29 11:52:57 2011 -0700

    android: persistent_ram: add notrace to persistent_ram_write

    Add the notrace attribute to persistent_ram_write and the
    non-ecc functions that it calls to allow persistent_ram to
    be used for ftracing (only when ecc is disabled).

    Change-Id: I9c96039d9a6281fc6a62ddb1c7128c26627cc258
    Signed-off-by: Colin Cross <email address hidden>

commit 8a512a1782f77e55846ac3e94e8b645754a1eb7d
Author: Colin Cross <email address hidden>
Date: Fri Aug 26 14:49:41 2011 -0700

    android: persistent_ram: make persistent_ram_write atomic

    Allow persistent_ram_write to be called on multiple cpus at
    the same time, as long as ecc is not in use. Uses atomics
    for the buffer->start and buffer->size counters.

    Change-Id: I49b70ec3bc7a651e6ed8e54b6f8f530babde680a
    Signed-off-by: Colin Cross <email address hidden>

commit b30c3717b6c906434d2a925283674f8f1e5f46e1
Author: Colin Cross <email address hidden>
Date: Tue Feb 14 16:45:20 2012 -0800

    android: ram_console: convert to new persistent_ram init

    Convert ram_console to the new persistent_ram_init parameters that
    only take a struct device * and ecc settings.

    Change-Id: I12b018381a2ed5965a8a4b0da40c3e640f92b6cf
    Signed-off-by: Colin Cross <email address hidden>

commit 5934af0e38ac27a52c602ee9119c24e09c7b6d3a
Author: Colin Cross <email address hidden>
Date: Tue Feb 14 16:41:47 2012 -0800

    android: persistent_ram: handle reserving and mapping memory

    Replace the ioremapped memory passed in from the drivers with
    a memblock_reserve and vmap. Adds a new function,
    persistent_ram_early_init, designed to be called from the machine
    init_early callback, that calls memblock_remove and saves the
    provided persistent ram area layout.

    Drivers only pass in their struct device * and ecc settings.
    Locating and mapping the memory is now handled entirely within
    persistent_ram.

    Change-Id: Ibc87ec27b70ed1c928eaa487503469e199973058
    Signed-off-by: Colin Cross <email address hidden>

commit 26fbd61454e01c65d2b090df1d204dde228d74e0
Author: Colin Cross <email address hidden>
Date: Sat Aug 20 19:04:13 2011 -0700

    android: persistent_ram: refactor ecc support

    Remove CONFIG_ANDROID_RAM_CONSOLE_ERROR_CORRECTION and related
     #ifdefs. Also allow persistent ram zones without ecc enabled.
    For some use cases, like the data portion of the upcoming
    persistent_vars patches, or a persistent ftrace ringbuffer,
    ecc on every update is too expensive.

    Signed-off-by: Colin Cross <email address hidden>
    Change-Id: Ia710344b6c54fe252e0a87353955e063b3c054ab

commit 9d0470c1b1ec46eccb8ccb3896c2bfe9a2ecdb44
Author: Colin Cross <email address hidden>
Date: Fri Aug 19 16:37:18 2011 -0700

    android: ram_console: split out persistent ram

    Split ram_console into two halves.

    persistent_ram is a set of apis that handle a block of memory
    that does not get erased across a reboot. It provides functions
    to fill it as a single buffer or a ring buffer, and to extract
    the old data after a reboot. It handles ecc on the data to
    correct bit errors introduced during reboot.

    ram_console is now a small wrapper around persistent_ram that
    feeds console data into the ringbuffer, and exports the old
    data to /proc/last_kmsg after a reboot.

    Signed-off-by: Colin Cross <email address hidden>
    Change-Id: I8c7495e3a6a3dd7cdf3cb067e1afceb3b6aaef3c

commit af8e872f1eb05a8bfcf2e49e156e1332cc621819
Author: Colin Cross <email address hidden>
Date: Tue Feb 7 17:16:18 2012 -0800

    android: ram_console: drop verbose ram_console support

    Equivalent functionality can be obtained with loglevel=15

    Change-Id: I977d70f3b72fd48cfbb9f791de37e74ac711ce21
    Signed-off-by: Colin Cross <email address hidden>

commit 95ec301716e0da38e65a5f4aa5d018d07f23247d
Author: Colin Cross <email address hidden>
Date: Tue Feb 7 16:57:52 2012 -0800

    android: ram_console: drop early buffer support

    Early ramconsole is not very useful, an early crash will prevent
    getting the logged data out on the next boot, and CONFIG_DEBUG_LL=y
    will get the same information. Drop it to simplify a future
    refactoring.

    Change-Id: Ifc306db9a8cceec4ca980cf24783c3fe764eb1fb
    Signed-off-by: Colin Cross <email address hidden>

commit 9a53eaca13677626a477f677cd3d04c4d552ad9d
Author: Colin Cross <email address hidden>
Date: Tue Feb 7 14:45:17 2012 -0800

    android: ram_console: move footer strings

    Don't store the bootinfo string and the ecc status string with
    the recovered old log data. This will simplify refactoring the
    persistent ram code out of the ram console code later.

    Change-Id: I883bb6eec5bad5c1b1247da807e982e744fe40ba
    Signed-off-by: Colin Cross <email address hidden>

commit 1aadd4eb5d16abeaf2524659296f642d5bd1f138
Author: Colin Cross <email address hidden>
Date: Wed Feb 1 20:29:49 2012 -0800

    Revert "HACK: android-alarm: wakelock workaround"

    This reverts commit 1f1a4544e5196a8e30cec7a21724e190bb51a2df.

    Conflicts:

     drivers/staging/android/alarm-dev.c
     drivers/staging/android/alarm.c

    Change-Id: I5717b7736b10de3a288613c8a7e4e5281c78fcaf

commit c9baaf8edf30ba0cc017f26202cd6781851dc570
Author: Colin Cross <email address hidden>
Date: Wed Feb 1 20:27:21 2012 -0800

    staging: android: alarm-dev: remove sysdev.h include

    Change-Id: Iebb8dd9beb60a8761a8b3b7861553624bd4f9779
    Signed-off-by: Colin Cross <email address hidden>

commit ab4c5e585b56183b0c1330624e3a9bd565c218e0
Author: John Stultz <email address hidden>
Date: Fri Jan 27 00:16:31 2012 -0800

    android-alarm: Remove unused android alarm in-kernel interfaces

    Now that alarm-dev.c uses the upstreamed alarmtimer interfaces,
    we can remove the otherwise unused in-kernel android alarm api.

    Signed-off-by: John Stultz <email address hidden>

commit 5cf73bb208983a8f383e6d332303d907ce07ecee
Author: John Stultz <email address hidden>
Date: Fri Jan 27 00:15:24 2012 -0800

    android-alarm: Rework alarm-dev.c to use upstreamed alarmtimers

    This reworks the alarm-dev.c to use the upstreamed alarmtimers
    interface.

    Signed-off-by: John Stultz <email address hidden>

commit 47be93e1fb9fed8f92cbb544bab55f5749ef93ed
Author: John Stultz <email address hidden>
Date: Fri Dec 9 18:44:02 2011 -0800

    alarmtimer: Provide accessor to alarmtimer rtc device

    The Android alarm interface provides a settime call that sets both
    the alarmtimer RTC device and CLOCK_REALTIME to the same value.

    Since there may be multiple rtc devices, provide a hook to access the
    one the alarmtimer infrastructure is using.

    Signed-off-by: John Stultz <email address hidden>

commit 9bb0edbc57c06202eec6c2162ae419a6d413ee61
Author: John Stultz <email address hidden>
Date: Tue Jun 21 17:01:27 2011 -0700

    android-alarm: Convert ALARM_ELAPSED_REALTIME to use CLOCK_BOOTTIME

    The ALARM_ELAPSED_REALTIME clock domain in Android pointed
    to the need for something similar in linux system-wide
    (instead of limited to just the alarm interface).

    Thus CLOCK_BOOTTIME was introduced into the upstream kernel
    in 2.6.39.

    This patch attempts to convert the android alarm timer to utilize
    the kernel's CLOCK_BOOTTIME clockid for ALARM_ELAPSED_REALTIME,
    instead of managing it itself.

    Change-Id: I4867ed2823ebb29d27c53f236c6a3dbb47f3ac78
    Signed-off-by: John Stultz <email address hidden>

commit 1cc7ab39279fb73f139caeac209b87bc50449f43
Author: John Stultz <email address hidden>
Date: Mon Jan 30 18:25:52 2012 -0800

    android-alarm: Support old drivers via preprocessor aliasing

    Older out of tree drivers that were desgined to the Android Alarm
    in-kernel API may not build due to the namespace collision fixed in
    an earlier patch. Per Arve's suggestion, this patch provides
    preprocessor macros that allow older drivers to build.

    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    Signed-off-by: John Stultz <email address hidden>

commit 44af2ea0876914b58cd660445ca7ac87bcdc0a5b
Author: John Stultz <email address hidden>
Date: Fri Jan 27 00:41:48 2012 -0800

    android-alarm: Fixup minor pr_alarm warnings

    This patch fixes the following warnings:

    drivers/staging/android/alarm.c: In function ‘alarm_timer_triggered’:
    drivers/staging/android/alarm.c:344: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘long int’
    drivers/staging/android/alarm.c:367: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘long int’

    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    Signed-off-by: John Stultz <email address hidden>

commit 98c9209602d4d6fb0c8584a23f1d00a31ef09e17
Author: JP Abgrall <email address hidden>
Date: Fri Dec 2 14:02:29 2011 +0800

    android-alarm: Fix bad index when canceling alarms[]

    It was using ANDROID_ALARM_ELAPSED_REALTIME_WAKEUP_MASK as an
    index.

    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    CC: JP Abgrall <email address hidden>
    Change-Id: I919860cc71254453e382616bce9fd5455802cb3d
    Signed-off-by: JP Abgrall <email address hidden>
    [jstultz: Tweaked commit subject]
    Signed-off-by: John Stultz <email address hidden>

commit 62b1ec65bf2102141de83ae01d77f509ad9e2146
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Dec 2 14:02:27 2011 +0800

    android-alarm: Update hrtimer if alarm at the head of the queue is reprogrammed

    If an alarm was restarted with a value that moved it away from the head
    of a queue, the hrtimer would not be updated. This would cause unnecessary
    wakeups.

    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    Change-Id: If379f8dd92b0bdb3173bd8d057adfe0dc1d15259
    Signed-off-by: Arve Hjønnevåg <email address hidden>
    Signed-off-by: John Stultz <email address hidden>

commit b3aebc7313d340b431d40de3b27a54f325c6cc7f
Author: Praneeth Kumar Bajjuri <email address hidden>
Date: Fri Dec 2 14:02:23 2011 +0800

    android-alarm: Disable Android alarm driver by default

    Do not enable Android alarm driver by default

    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    CC: Praneeth Bajjuri <email address hidden>
    Change-Id: Iff8f7a65c4eceecfd084074937c72824697b5e7f
    Signed-off-by: Praneeth Bajjuri <email address hidden>
    [jstultz: tweaked commit subject & msg]
    Signed-off-by: John Stultz <email address hidden>

commit afa7529ab0348c2b4677c37b02cd275116f66b19
Author: John Stultz <email address hidden>
Date: Fri Dec 9 18:38:41 2011 -0800

    HACK: android-alarm: wakelock workaround

    Allow Android alarmtimer device to build while wakelocks are still
    out of tree.

    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    Signed-off-by: John Stultz <email address hidden>

commit f7bc8ba108f4dbc8445b409cc537cae7653af3fe
Author: John Stultz <email address hidden>
Date: Thu Jan 26 23:39:16 2012 -0800

    android-alarm: Fix namespace collision with upstreamed alarmtimers

    The upstreamed alarmtimers are similar but not quite 100% API
    compatibile with the android in-kernel alarm api. To aid the
    transition, prefix the the android in-kernel api with android_

    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    Signed-off-by: John Stultz <email address hidden>

commit 20bb505c2942a90bea46a8ab24e13ca4bca2eafd
Author: John Stultz <email address hidden>
Date: Tue Dec 20 17:48:38 2011 -0800

    android-alarm: Fix time.h include to avoid compile issue

    The file asm/mach/time.h doesn't exist on all arches,
    so include <linux/time.h>

    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    Signed-off-by: John Stultz <email address hidden>

commit 1de07df286400a7bf86d4d4a325d3fee8b0da410
Author: Andy Green <email address hidden>
Date: Fri Dec 2 14:03:17 2011 +0800

    android-alarm: Add needed module.h includes

    Add module.h includes required to build

    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    CC: Andy Green <email address hidden>
    Signed-off-by: Andy Green <email address hidden>
    [jstultz: Tweaked commit subject, folded two patches
    into one]
    Signed-off-by: John Stultz <email address hidden>

commit b634b4c7bcde2897452e25fe6021f78e3f220dc2
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Dec 2 14:02:26 2011 +0800

    android-alarm: Don't use save_time_delta.

    Remove references to non-existant save_time_delta.

    Change-Id: Iaefeca497de02fe36b7f5d79075912f6e349ec53
    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    Signed-off-by: Arve Hjønnevåg <email address hidden>
    [Added commit message -jstultz]
    Signed-off-by: John Stultz <email address hidden>

commit cf7187dd9232df28362a357e6b96293b0933bb29
Author: Arve Hjønnevåg <email address hidden>
Date: Tue Oct 14 17:38:04 2008 -0700

    android-alarm: Add android alarm driver & in-kernel alarm interface

    Drivers can now create alarms that will use an hrtimer while the
    system is running and the rtc to wake up from suspend.

    CC: Arve Hjønnevåg <email address hidden>
    CC: Greg KH <email address hidden>
    CC: Android Kernel Team <email address hidden>
    Signed-off-by: Arve Hjønnevåg <email address hidden>
    [Fold and move alarm driver and interface to staging
     & fix whitespace issue -jstultz]
    Signed-off-by: John Stultz <email address hidden>

commit 9fb2094ccfb16e7eba2c855213bf38ac32b1a224
Author: Benoit Goby <email address hidden>
Date: Mon Dec 19 14:39:37 2011 -0800

    usb: gadget: accessory: Add Android Accessory function

    USB accessory mode allows users to connect USB host hardware
    specifically designed for Android-powered devices. The accessories
    must adhere to the Android accessory protocol outlined in the
    http://accessories.android.com documentation. This allows
    Android devices that cannot act as a USB host to still interact with
    USB hardware. When an Android device is in USB accessory mode, the
    attached Android USB accessory acts as the host, provides power
    to the USB bus, and enumerates connected devices.

    Signed-off-by: Mike Lockwood <email address hidden>

commit 7acbc30084dfb1a42c1ba16787974d5132793885
Author: Benoit Goby <email address hidden>
Date: Mon Dec 19 14:38:41 2011 -0800

    usb: gadget: adb: Add ADB function

    Android Debug Bridge (adb) is a command line tool that lets
    users communicate with a Android-powered device. It is used
    mainly to debug applications and tranfer files. f_adb implements
    the transport layer between the ADB Server (on the host) and the
    ADBD daemon (on the device).

    Signed-off-by: Mike Lockwood <email address hidden>

commit 368fc61d8c0a57078e6cf24ced2efbad64df7ebd
Author: Benoit Goby <email address hidden>
Date: Mon Dec 19 14:37:50 2011 -0800

    usb: gadget: mtp: Add MTP/PTP function

    USB gadget function driver used by the Android framework to
    implement the MTP and PTP protocols. It creates a character device
    that provides an interface for fast transfer of files and
    supports transferring files greater than 4GB.

    Signed-off-by: Mike Lockwood <email address hidden>

commit 6512cf21c5cab75854b180e1d32016a98ae2ab85
Author: Benoit Goby <email address hidden>
Date: Mon Dec 12 13:01:23 2011 -0800

    usb: gadget: Add Android Composite Gadget driver

    The Android Gadget driver is a composite driver that allows
    userspace to change at runtime the list of functions enabled in
    its configuration and to configure these functions. It supports
    multiple functions: acm, adb, rndis, mtp/ptp, mass storage and
    accessory.

    It is usually controlled by a daemon that changes the configuration
    based on user settings. For example, rndis is enabled when the user
    enables sharing the phone data connection and adb (Android Debug
    Bridge) is only enabled when the user wants to debug applications
    for security reasons.

    As an example on how to use it, the following shell commands will
    make the gadget disconnect from the host and make it be re-enumerated
    as a composite with 1 rndis and 2 acm interfaces, and a different
    product id:

    echo 0 > /sys/class/android_usb/android0/enable
    echo rndis,acm > /sys/class/android_usb/android0/functions
    echo 2 > /sys/class/android_usb/android0/f_acm/instances
    echo 2d01 > /sys/class/android_usb/android0/idProduct
    echo 1 > /sys/class/android_usb/android0/enable

    The driver requires a gadget controller that supports software
    control of the D+ pullup and the controller driver must support
    disabling the pullup during composite_bind.

    Signed-off-by: Mike Lockwood <email address hidden>
    Signed-off-by: Benoit Goby <email address hidden>

commit db59316f98f0d0f7705149758f780145ad383be2
Author: Benoit Goby <email address hidden>
Date: Fri Dec 16 20:00:01 2011 -0800

    usb: gadget: f_rndis: Set rndis vendor parameters

    Add a variant of rndis_bind_config to let gadget drivers change
    rndis vendorID and manufacturer parameters.

    Signed-off-by: Benoit Goby <email address hidden>

commit 0d0b055819b060ed7f78be5ffa73dc8326b3ec39
Author: Benoit Goby <email address hidden>
Date: Fri Dec 16 20:00:38 2011 -0800

    usb: gadget: rndis: Fix re-binding f_rndis

    f_rndis checks if rndis_string_defs[0].id is null to setup rndis
    and allocate string ids when it is bound to the first configuration:

     /* maybe allocate device-global string IDs */
     if (rndis_string_defs[0].id == 0) {

      /* ... and setup RNDIS itself */
      status = rndis_init();
      if (status < 0)
       return status;

    rndis_string_defs[0].id must be reset to 0 on unbind for rndis to be
    correctly initialized on the next composite_bind.

    Signed-off-by: Benoit Goby <email address hidden>

commit e7521613d1ae86cc4402ea5a97f481d7f369a9cb
Author: Mike Lockwood <email address hidden>
Date: Fri Aug 12 14:35:42 2011 -0700

    usb: gadget: Add variant of gether_setup to customize the device name

    This is needed to avoid name collisions on SoCs that have both usb
    gadget and usb host, where usb0 may be the rndis interface or a usb
    ethernet adapter.

    Signed-off-by: Mike Lockwood <email address hidden>
    Signed-off-by: Benoit Goby <email address hidden>

commit 2be1bbd30d421b0e32c8b7937ec6667f989eae0c
Author: Benoit Goby <email address hidden>
Date: Wed Dec 14 18:04:07 2011 -0800

    usb: gadget: u_serial: Allow calling gserial_setup after init

    Remove geserial_setup from the init section. The android gadget
    driver calls it after probe, after userspace has configured the
    gadget driver.

    Signed-off-by: Benoit Goby <email address hidden>

commit 88ae7e96fe46f80cbcbf8d6867235947e85f4e32
Author: Benoit Goby <email address hidden>
Date: Tue Dec 13 16:01:41 2011 -0800

    usb: gadget: composite: Initialize config->interface

    Reset config->interface in usb_add_config, as it may contain pointers to
    functions from a previous session if config is removed and re-added.

    Signed-off-by: Benoit Goby <email address hidden>

commit c1a9c6a9723ec9e5f9da945e09da6fe7bbd314c2
Author: Benoit Goby <email address hidden>
Date: Tue Dec 13 16:16:31 2011 -0800

    usb: gadget: composite: Add usb_remove_config

    Add usb_remove_config to unbind a configuration and remove it from
    the configs list. This allows implementing composite gadget drivers that
    can disconnect themself from the bus and that will later be re-enumerated
    with a different configuration.

    Gadget drivers must call usb_gadget_disconnect before calling this
    function to disable the pullup, disconnect the device from the host,
    and prevent the host from enumerating the device while we are changing
    the gadget configuration.

    Signed-off-by: Benoit Goby <email address hidden>

commit 9872d6b4634173783c199355f62369ed3068c470
Author: Colin Cross <email address hidden>
Date: Wed Feb 1 14:23:15 2012 -0800

    usb: otg: otg-wakelock: fix build for 3.3

    Add missing module.h include

    Change-Id: Ib0538ca569c9e0713ceefcd1f91c6bc089d2f2ba
    Signed-off-by: Colin Cross <email address hidden>

commit b3b5e3974ff26806a7810cfea00c341394b3df3e
Author: Todd Poynor <email address hidden>
Date: Mon Sep 26 20:35:30 2011 -0700

    usb: otg: Temporarily grab wakelock on charger and disconnect events

    Change-Id: If995d4af4adcb08e8369009483f2956ad9627267
    Signed-off-by: Todd Poynor <email address hidden>

commit 56697856e8a6a0dac3769879036e15981b1b8b77
Author: Jaikumar Ganesh <email address hidden>
Date: Wed Sep 21 17:18:56 2011 -0700

    HID: Add null check for hidinput.

    Add null check for hidinput before calling input_register.

    Change-Id: Ib3fc0507e4091192360f3395d13d489db9b5a4d2
    Signed-off-by: Jaikumar Ganesh <email address hidden>

commit d6039d941c408a5db7ba78a178ed7b771503108f
Author: Jaikumar Ganesh <email address hidden>
Date: Tue Sep 20 16:47:43 2011 -0700

    HID: magicmouse: Add input_register callback.

    The magicmouse driver needs to setup the input mapping
    after reports are parsed but before device is registered.

    Change-Id: Ic3a0ff4fc056f5d374bb7ea1bd831a175c690b0b
    Signed-off-by: Jaikumar Ganesh <email address hidden>

commit f4f47cda9f9543626d5f495f3306e3ba51211b5b
Author: Jaikumar Ganesh <email address hidden>
Date: Tue Sep 20 16:40:43 2011 -0700

    HID: Add input_register callback.

    Add input_register callback which gets called after
    hid_configure_usage is called for all the reports
    and before the input device is registered. This allows
    individual drivers to do extra work like input mapping just
    before device registration.

    Based on discussions with David Herrmann <email address hidden>

    Change-Id: Idab6fb4f7b1e5e569bd0410967288717e9d34c98
    Signed-off-by: Jaikumar Ganesh <email address hidden>

commit b5989152ac6a54f792eee3fc43a5bdbe940da189
Author: Todd Poynor <email address hidden>
Date: Thu Aug 25 19:29:45 2011 -0700

    PM: Backoff suspend if repeated attempts fail

    Change-Id: I32289676d95a307ea3aa5e78f6c126ca979c0fec
    Signed-off-by: Todd Poynor <email address hidden>

commit 1755ed4b3cbe6d427c83a4f59587651297876bf6
Author: Todd Poynor <email address hidden>
Date: Wed Aug 24 15:01:30 2011 -0700

    fuse: Freeze client on suspend when request sent to userspace

    Suspend attempts can abort when the FUSE daemon is already frozen
    and a client is waiting uninterruptibly for a response, causing
    freezing of tasks to fail.

    Use the freeze-friendly wait API, but disregard other signals.

    Change-Id: Icefb7e4bbc718ccb76bf3c04daaa5eeea7e0e63c
    Signed-off-by: Todd Poynor <email address hidden>

commit 385a38dc03d246d6e354897ca17a066496dd7571
Author: Jeff Brown <email address hidden>
Date: Sun Jul 24 14:31:14 2011 -0700

    hid-multitouch: Filter collections by application usage.

    This change fixes two problems.

    First, it ensures that the hid-multitouch driver does not incorrectly
    map GenericDesktop usages that are intended for other applications,
    such as a Mouse.

    Second, it sets the appropriate input properties so that user-space
    can distinguish TouchScreen devices (INPUT_PROP_DIRECT) from
    TouchPad devices (INPUT_PROP_POINTER) and configure them accordingly.

    Change-Id: I8c2d947929186ffe7cf04b37c76e29b9abecf8cb
    Signed-off-by: <email address hidden>

commit 119823ad4d66dbb150d8adfef1d949c69f71f46e
Author: Chia-chi Yeh <email address hidden>
Date: Fri Jul 15 15:32:57 2011 -0700

    net: Only NET_ADMIN is allowed to fully control TUN interfaces.

    Signed-off-by: Chia-chi Yeh <email address hidden>

commit 36c417868678f9c304e9c7bc0465cb16010c8074
Author: Ashish Sharma <email address hidden>
Date: Fri Oct 7 17:54:16 2011 -0700

    bridge: Have tx_bytes count headers like rx_bytes.

    Since rx_bytes accounting does not include Ethernet Headers in
    br_input.c, excluding ETH_HLEN on the transmit path for consistent
    measurement of packet length on both the Tx and Rx chains.

    The clean way would be for Rx to include the eth header, but the
    skb len has already been adjusted by the time the br code sees the skb.
    This is only a temporary workaround until we can completely ignore or
    cleanly fix the skb->len handling.

    Change-Id: I910de95a4686b2119da7f1f326e2154ef31f9972
    Signed-off-by: Ashish Sharma <email address hidden>

commit a2f3d15bfeaa7d76c1d7aed75608370cd448911f
Author: JP Abgrall <email address hidden>
Date: Thu Sep 29 15:36:49 2011 -0700

    netfilter: ipv6: fix crash caused by ipv6_find_hdr()

    When calling:
        ipv6_find_hdr(skb, &thoff, -1, NULL)
    on a fragmented packet, thoff would be left with a random
    value causing callers to read random memory offsets with:
        skb_header_pointer(skb, thoff, ...)

    Now we force ipv6_find_hdr() to return a failure in this case.
    Calling:
      ipv6_find_hdr(skb, &thoff, -1, &fragoff)
    will set fragoff as expected, and not return a failure.

    Change-Id: Ib474e8a4267dd2b300feca325811330329684a88
    Signed-off-by: JP Abgrall <email address hidden>

commit e2259443b613ae42e47dff2a06d60d6a06949c31
Author: JP Abgrall <email address hidden>
Date: Tue Jul 12 12:02:59 2011 -0700

    netfilter: fixup the quota2, and enable.

    The xt_quota2 came from
      http://sourceforge.net/projects/xtables-addons/develop

    It needed tweaking for it to compile within the kernel tree.
    Fixed kmalloc() and create_proc_entry() invocations within
     a non-interruptible context.
    Removed useless copying of current quota back to the iptable's
    struct matchinfo:
      - those are per CPU: they will change randomly based on which
        cpu gets to update the value.
      - they prevent matching a rule: e.g.
          -A chain -m quota2 --name q1 --quota 123
         can't be followed by
          -D chain -m quota2 --name q1 --quota 123
        as the 123 will be compared to the struct matchinfo's quota member.
    Use the NETLINK NETLINK_NFLOG family to log a single message
    when the quota limit is reached.
    It uses the same packet type as ipt_ULOG, but
     - never copies skb data,
     - uses 112 as the event number (ULOG's +1)
    It doesn't log if the module param "event_num" is 0.

    Change-Id: I021d3b743db3b22158cc49acb5c94d905b501492
    Signed-off-by: JP Abgrall <email address hidden>

commit d6b8ed727301280ae0a142a7f23bfac988cdafa9
Author: JP Abgrall <email address hidden>
Date: Tue Jun 21 11:14:49 2011 -0700

    netfilter: adding the original quota2 from xtables-addons

    The original xt_quota in the kernel is plain broken:
      - counts quota at a per CPU level
        (was written back when ubiquitous SMP was just a dream)
      - provides no way to count across IPV4/IPV6.

    This patch is the original unaltered code from:
      http://sourceforge.net/projects/xtables-addons

      at commit e84391ce665cef046967f796dd91026851d6bbf3

    Change-Id: I19d49858840effee9ecf6cff03c23b45a97efdeb
    Signed-off-by: JP Abgrall <email address hidden>

commit 0d7182be8b2802aa4c705be4b2f58d4cdd085984
Author: Todd Poynor <email address hidden>
Date: Fri Jul 1 17:19:56 2011 -0700

    USB: OTG: Take wakelock when VBUS present

    Enabled by default, can disable with:
       echo N > /sys/module/otg_wakelock/parameters/enabled

    Change-Id: I34974624c52ae23490852b44c270d2f326cf6116
    Signed-off-by: Todd Poynor <email address hidden>

commit d25e821ee0c89613dc0ec4124485fcbad43fe16c
Author: Rebecca Schultz Zavin <email address hidden>
Date: Wed Jun 29 19:44:29 2011 -0700

    gpu: ion: Add ION Memory Manager

    Signed-off-by: Rebecca Schultz Zavin <email address hidden>

commit bc6d40caf40b25e953ca05ceb68b71bed6cf1c19
Author: JP Abgrall <email address hidden>
Date: Thu Jun 16 14:37:03 2011 -0700

    netfilter: have ip*t REJECT set the sock err when an icmp is to be sent

    Allow the REJECT --reject-with icmp*blabla to also set the matching error
    locally on the socket affected by the reject.
    This allows the process to see an error almost as if it received it
    via ICMP.
    It avoids the local process who's ingress packet is rejected to have to
    wait for a pseudo-eternity until some timeout kicks in.

    Ideally, this should be enabled with a new iptables flag similar to
       --reject-with-sock-err
    For now it is enabled with CONFIG_IP*_NF_TARGET_REJECT_SKERR option.

    Change-Id: I649a4fd5940029ec0b3233e5abb205da6984891e
    Signed-off-by: JP Abgrall <email address hidden>

commit 8585cf5bba9514ff9ac3fb1db23c7fd36e618077
Author: JP Abgrall <email address hidden>
Date: Mon Jun 20 12:41:46 2011 -0700

    netfilter: add xt_qtaguid matching module

    This module allows tracking stats at the socket level for given UIDs.
    It replaces xt_owner.
    If the --uid-owner is not specified, it will just count stats based on
    who the skb belongs to. This will even happen on incoming skbs as it
    looks into the skb via xt_socket magic to see who owns it.
    If an skb is lost, it will be assigned to uid=0.

    To control what sockets of what UIDs are tagged by what, one uses:
      echo t $sock_fd $accounting_tag $the_billed_uid \
         > /proc/net/xt_qtaguid/ctrl
     So whenever an skb belongs to a sock_fd, it will be accounted against
       $the_billed_uid
      and matching stats will show up under the uid with the given
       $accounting_tag.

    Because the number of allocations for the stats structs is not that big:
      ~500 apps * 32 per app
    we'll just do it atomic. This avoids walking lists many times, and
    the fancy worker thread handling. Slabs will grow when needed later.

    It use netdevice and inetaddr notifications instead of hooks in the core dev
    code to track when a device comes and goes. This removes the need for
    exposed iface_stat.h.

    Put procfs dirs in /proc/net/xt_qtaguid/
      ctrl
      stats
      iface_stat/<iface>/...
    The uid stats are obtainable in ./stats.

    Change-Id: I01af4fd91c8de651668d3decb76d9bdc1e343919
    Signed-off-by: JP Abgrall <email address hidden>

commit a4d6a1e97442c9249201c924e9799d07ce4bac18
Author: JP Abgrall <email address hidden>
Date: Wed Jun 15 16:52:40 2011 -0700

    nf: xt_socket: export the fancy sock finder code

    The socket matching function has some nifty logic to get the struct sock
    from the skb or from the connection tracker.
    We export this so other xt_* can use it, similarly to ho how
    xt_socket uses nf_tproxy_get_sock.

    Change-Id: I11c58f59087e7f7ae09e4abd4b937cd3370fa2fd
    Signed-off-by: JP Abgrall <email address hidden>

commit 83dc69347210467aa6bafc5825c91d2864876527
Author: Dmitry Shmidt <email address hidden>
Date: Fri Oct 28 10:35:37 2011 -0700

    net: wireless: Skip connect warning for CONFIG_CFG80211_ALLOW_RECONNECT

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit 83cf0216e98084e4587572d9bf1f5f85337dab07
Author: Dmitry Shmidt <email address hidden>
Date: Tue Oct 18 12:30:02 2011 -0700

    net: wireless: Fix CFG80211_ALLOW_RECONNECT option for disconnect

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit 19146a36dd14d94d9f1277b2d767c88af6665be0
Author: Dmitry Shmidt <email address hidden>
Date: Thu Sep 15 09:22:35 2011 -0700

    net: wireless: Add CFG80211_ALLOW_RECONNECT option

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit 7e1377fbf54d80bbd922881a5f16556dbd3481e8
Author: jun.ho.lee <email address hidden>
Date: Fri Sep 9 18:50:02 2011 +0900

    net: wireless: change the expire time about each entry of scan results

    Change-Id: I6e8d838d91bebc28f4cd09dcb8b9f1de775be13d
    Signed-off-by: jun.ho.lee <email address hidden>
    Signed-off-by: Dmitry Shmidt <email address hidden>

commit e0ff4f32f3f29c6cd89be9249f4de260e9779bd1
Author: Dmitry Shmidt <email address hidden>
Date: Wed Jun 8 15:16:52 2011 -0700

    net: wireless: Add CONFIG_WIFI_CONTROL_FUNC option

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit 7eaf839c7a921a5c20ff0dd2c8c03d1b4eeb37db
Author: Colin Cross <email address hidden>
Date: Wed Feb 1 14:10:59 2012 -0800

    wireless: bcmdhd: fix build for 3.3

    ndo_set_multicast_list was replaced with ndo_set_rx_mode.

    Add no_cck and dont_wait_for_ack parameters to mgmt_tx.

    Change-Id: I56e0a924ee4417c6616336f9a8133425030b4d62
    Signed-off-by: Colin Cross <email address hidden>

commit a2d116668045dd40f3fed04e7430b01becd1bf8d
Author: Dmitry Shmidt <email address hidden>
Date: Tue May 24 11:14:33 2011 -0700

    net: wireless: bcmdhd: Initial version based on 5.90.195.23

    Change-Id: I91012d9adf1d9506cc0f832a683bd88684111b71
    Signed-off-by: Dmitry Shmidt <email address hidden>

commit 060e2e47059fb66a3ef99053be16e636478adcfc
Author: Dmitry Shmidt <email address hidden>
Date: Mon Feb 14 16:58:48 2011 -0800

    net: wireless: Add get_country_code functionality to platform

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit e6e726512aec3fa373c6883e6b7f491fffc33402
Author: Dmitry Shmidt <email address hidden>
Date: Thu Jun 3 10:55:33 2010 -0700

    network: wireless: Add get_mac_addr functionality to platform

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit 0aa3e8c9bc977759b321eaffa1d1956341f0a8bf
Author: Arve Hjønnevåg <email address hidden>
Date: Wed Feb 23 16:51:58 2011 -0800

    ARM: etm: Power down etm(s) when tracing is not enabled

    Without this change a saw an 18% increase in idle power consumption
    on one deivce when trace support is compiled into the kernel. Now
    I see the same increase only when tracing.

    Change-Id: I21bb5ecf1b7d29ce3790ceeb5323409cc22d5a3b
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 519432d188a7efccf8a68f6fe276190a88b8cf5d
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Feb 4 22:38:14 2011 -0800

    ARM: etm: Support multiple ETMs/PTMs.

    If more than one ETM or PTM are present, configure all of them
    and enable the formatter in the ETB. This allows tracing on dual
    core systems (e.g. omap4).

    Change-Id: I028657d5cf2bee1b23f193d4387b607953b35888
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 102804cc017edff355309758ed346fc9098f74bd
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Feb 4 22:38:14 2011 -0800

    ARM: etm: Return the entire trace buffer if it is empty after reset

    On some SOCs the read and write pointer are reset when the chip
    resets, but the trace buffer content is preserved. If the status
    bits indicates that the buffer is empty and we have never started
    tracing, assume the buffer is full instead. This can be useful
    if the system rebooted from a watchdog reset.

    Change-Id: Iaf21c2c329c6059004ee1d38e3dfff66d7d28029
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 15de182469b60c343f3eb4a46ba34f2d24fd03d6
Author: Arve Hjønnevåg <email address hidden>
Date: Mon Feb 14 21:09:51 2011 -0800

    ARM: etm: Add some missing locks and error checks

    It is not safe to call etm_lock or etb_lock without holding the
    mutex since another thread may also have unlocked the registers.

    Also add some missing checks for valid etb_regs in the etm sysfs
    entries.

    Change-Id: I939f76a6ea7546a8fc0d4ddafa2fd2b6f38103bb
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 41aaa01be4835a7425ecd016219e6bee74c4090c
Author: Arve Hjønnevåg <email address hidden>
Date: Mon Jan 31 18:33:55 2011 -0800

    ARM: etm: Configure data tracing

    The old code enabled data tracing, but did not configure the
    range. We now configure it to trace all data addresses by default,
    and add a trace_data_range attribute to change the range or disable
    data tracing.

    Change-Id: I9d04e3e1ea0d0b4d4d5bcb93b1b042938ad738b2
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 6602784b0d9d1f57953cefd54f38f2fa829149f0
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Jan 28 23:44:43 2011 -0800

    ARM: etm: Allow range selection

    Trace kernel text segment by default as before, allow tracing of other
    ranges by writing a range to /sys/devices/etm/trace_range, or to trace
    everything by writing 0 0.

    Change-Id: Ibb734ca820fedf79560b20536247f1e1700cdc71
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit fe838c87a6e3ef7bfd0c86651dce40681300c28d
Author: Arve Hjønnevåg <email address hidden>
Date: Mon Jan 31 21:34:47 2011 -0800

    ARM: etm: Don't try to clear the buffer full status after reading the buffer

    If the write address was at the end of the buffer, toggling the trace
    capture bit would set the RAM-full status instead of clearing it, and
    if any of the stop bits in the formatter is set toggling the trace
    capture bit may not do anything.

    Instead use the read position to find out if the data has already
    been returned.

    This also fixes the read function so it works when the trace buffer is
    larger than the buffer passed in from user space. The old version
    would reset the trace buffer pointers after every read, so the second
    call to read would always return 0.

    Change-Id: I75256abe2556adfd66fd5963e46f9e84ae4645e1
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 91516a10b4882050c98668cfbf1f28dcb8b2d1a0
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Jan 28 23:33:11 2011 -0800

    ARM: etm: Don't limit tracing to only non-secure code.

    On some systems kernel code is considered secure, and this code
    already limits tracing to the kernel text segment which results
    in no trace data.

    Change-Id: I098a0753e874859446d098e1ee209f67fc13cd5d
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit e4374a790af1934bd84274d315f6653bea33adcc
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Jan 28 23:12:32 2011 -0800

    ARM: etm: Don't require clock control

    If clk_get fail, assume the etb does not need a separate clock.

    Change-Id: Ia0bf3f5391e94a60ea45876aa7afc8a88a7ec3bf
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit b0a4a0d3d51ed0289d432bab8f014c276b0ab46b
Author: Chia-chi Yeh <email address hidden>
Date: Fri Apr 15 15:22:09 2011 -0700

    net: Reorder incoming packets in PPPoLAC and PPPoPNS.

    PPP handles packet loss but does not work with out of order packets.
    This change performs reordering of incoming data packets within a
    sliding window of one second. Since sequence number is optional,
    receiving a packet without it will drop all queued packets.

    Currently the logic is triggered by incoming packets, so queued
    packets have to wait till another packet is arrived. It is done for
    simplicity since no additional locks or threads are required. For
    reliable protocols, a retransmission will kick it. For unreliable
    protocols, queued packets just seem like packet loss. Time-critical
    protocols might be broken, but they never work with queueing anyway.

    Signed-off-by: Chia-chi Yeh <email address hidden>

commit f66447a866d904209a8eca64e68ff84e9d618734
Author: Colin Cross <email address hidden>
Date: Fri Jan 28 19:32:31 2011 -0800

    cpufreq: Prevent memory leak in cpufreq_stats on hotplug

    Ensures that cpufreq_stats_free_table is called before
    __cpufreq_remove_dev on cpu hotplug (which also occurs during
    suspend on SMP systems) to make sure that sysfs_remove_group
    can get called before the cpufreq kobj is freed. Otherwise,
    the sysfs file structures are leaked.

    Change-Id: I87e55277272f5cfad47e9e7c92630e990bb90069
    Signed-off-by: Colin Cross <email address hidden>

commit f1724765f84dffeaa3bbb09115f55efa79382f17
Author: Arve Hjønnevåg <email address hidden>
Date: Tue Nov 23 18:20:28 2010 -0800

    staging: android: lowmemorykiller: Don't wait more than one second for a process to die

    If a process forked and the child process was killed by the
    lowmemorykiller, the lowmemory killer would be disabled until
    the parent process reaped the child or it died itself.

    Change-Id: I709b1a4e1b1a1970e51d26a39fcbee57977bbc7f
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 84a7bd81bc301b7a25151dac04a7c39048df33be
Author: Rabin Vincent <email address hidden>
Date: Thu Sep 9 10:48:21 2010 +0530

    lowmemorykiller: don't unregister notifier from atomic context

    The lowmemorykiller registers an atomic notifier for notfication of when
    the task is freed. From this atomic notifier callback, it removes the
    atomic notifier via task_free_unregister(). This is incorrect because
    atomic_notifier_chain_unregister() calls syncronize_rcu(), which can
    sleep, which shouldn't be done from an atomic notifier.

    Fix this by registering the notifier during init, and only unregister it
    if the lowmemorykiller is unloaded.

    Change-Id: I1577b04e617bc2b2e39dcb490fcfc9ce660eb7ec
    Signed-off-by: Rabin Vincent <email address hidden>
    Signed-off-by: Christian Bejram <email address hidden>

commit f06c513a97d15d3ce8a0c054eef76500a5d94b4c
Author: Mike Chan <email address hidden>
Date: Tue Jun 22 11:26:45 2010 -0700

    cpufreq: interactive: New 'interactive' governor

    This governor is designed for latency-sensitive workloads, such as
    interactive user interfaces. The interactive governor aims to be
    significantly more responsive to ramp CPU quickly up when CPU-intensive
    activity begins.

    Existing governors sample CPU load at a particular rate, typically
    every X ms. This can lead to under-powering UI threads for the period of
    time during which the user begins interacting with a previously-idle system
    until the next sample period happens.

    The 'interactive' governor uses a different approach. Instead of sampling
    the CPU at a specified rate, the governor will check whether to scale the
    CPU frequency up soon after coming out of idle. When the CPU comes out of
    idle, a timer is configured to fire within 1-2 ticks. If the CPU is very
    busy from exiting idle to when the timer fires then we assume the CPU is
    underpowered and ramp to MAX speed.

    If the CPU was not sufficiently busy to immediately ramp to MAX speed, then
    the governor evaluates the CPU load since the last speed adjustment,
    choosing the highest value between that longer-term load or the short-term
    load since idle exit to determine the CPU speed to ramp to.

    A realtime thread is used for scaling up, giving the remaining tasks the
    CPU performance benefit, unlike existing governors which are more likely to
    schedule rampup work to occur after your performance starved tasks have
    completed.

    The tuneables for this governor are:
    /sys/devices/system/cpu/cpufreq/interactive/min_sample_time:
     The minimum amount of time to spend at the current frequency before
     ramping down. This is to ensure that the governor has seen enough
     historic CPU load data to determine the appropriate workload.
     Default is 80000 uS.
    /sys/devices/system/cpu/cpufreq/interactive/go_maxspeed_load
     The CPU load at which to ramp to max speed. Default is 85.

    Change-Id: Ib2b362607c62f7c56d35f44a9ef3280f98c17585
    Signed-off-by: Mike Chan <email address hidden>
    Signed-off-by: Todd Poynor <email address hidden>
    Bug: 3152864

commit f175747e3062448ce1220f0120b61fd0fcd8a3e4
Author: Todd Poynor <email address hidden>
Date: Fri Jun 24 19:33:01 2011 -0700

    ARM: Move leds idle start/stop calls to idle notifiers

    Change-Id: I5d8e4e85b17bbab7992ecb477f0bdb5e4138b166
    Acked-by: Nicolas Pitre <email address hidden>
    Signed-off-by: Todd Poynor <email address hidden>

commit 2ff98538277159d47873dac5823af6dcd09cf9ee
Author: Todd Poynor <email address hidden>
Date: Wed Jun 15 17:44:50 2011 -0700

    ARM: Call idle notifiers

    Change-Id: Id833e61c13baa1783705ac9e9046d1f0cc90c95e
    Acked-by: Nicolas Pitre <email address hidden>
    Signed-off-by: Todd Poynor <email address hidden>

commit 2d3c750ee707c9b47d7dc6627cc08f56626dc6c0
Author: Todd Poynor <email address hidden>
Date: Wed Jun 15 17:21:57 2011 -0700

    Move x86_64 idle notifiers to generic

    Move the x86_64 idle notifiers originally by Andi Kleen and Venkatesh
    Pallipadi to generic.

    Change-Id: Idf29cda15be151f494ff245933c12462643388d5
    Acked-by: Nicolas Pitre <email address hidden>
    Signed-off-by: Todd Poynor <email address hidden>

commit 8244456a30e056d95f885f8738470c5504390e2c
Author: Brian Swetland <email address hidden>
Date: Thu Oct 21 14:19:31 2010 -0700

    staging: remove Greg's TODO, now obsolete.

    Signed-off-by: Brian Swetland <email address hidden>

commit 1b548cd626018bdf525c2693b3003c73e85fe578
Author: Iliyan Malchev <email address hidden>
Date: Sat Jun 5 17:36:24 2010 -0700

    ARM: Add generic fiq serial debugger

    Change-Id: Ibb536c88f0dbaf4766d0599296907e35e42cbfd6
    Signed-off-by: Iliyan Malchev <email address hidden>
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 0b7cd86476f30e16d5f012fe8bae0e505ad76880
Author: Arve Hjønnevåg <email address hidden>
Date: Mon Sep 27 17:50:00 2010 -0700

    ARM: Add fiq_glue

    Change-Id: I27d2554e07d9de204e0a06696d38db51608d9f6b
    Signed-off-by: Arve Hjønnevåg <email address hidden>
    Signed-off-by: Colin Cross <email address hidden>

commit 180b4c853abfba102048379098e2234dcf291a51
Author: Arve Hjønnevåg <email address hidden>
Date: Thu Jun 3 16:33:07 2010 -0700

    Allow CONFIG_STACKTRACE to be enabled by itself.

    This allows us to get a kernel stacktrace for a thread though /proc.
    Also enable it by default.

    Change-Id: If8c21cd02feaf9863f4841ace524fa30c7328d49
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit b2c9130f7eaa7c0806abcad5757d36f6644198d0
Author: Dmitry Shmidt <email address hidden>
Date: Mon Aug 30 10:29:37 2010 -0700

    net: Fix CONFIG_RPS option to be turned off

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit 985c9208982a0b9a7b7298025d9fa1b119732b3d
Author: Colin Cross <email address hidden>
Date: Tue Apr 20 19:54:09 2010 -0700

    misc: add akm8975 compass driver

    Originally written by HTC. Contributions by Motorola and AKM.
      misc: Import akm8975 from Motorola

    Major style and code cleanups by Praveen Bharathi <email address hidden>
      misc: akm8975: clean up code violations in akm8975.c
      misc: akm8975: Clean up coding style, add suspend and resume

    Change-Id: I4196913f15aec2dfbed47506d3dc085aada8e92d
    Signed-off-by: Dima Zavin <email address hidden>

commit 1656b680930561b9b0fdefb2e212461c444a2e00
Author: Mike Chan <email address hidden>
Date: Fri May 28 14:32:19 2010 -0700

    net: activity_stats: Add statistics for network transmission activity

    When enabled, tracks the frequency of network transmissions
    (inbound and outbound) and buckets them accordingly.
    Buckets are determined by time between network activity.

    Each bucket represents the number of network transmisions that were
    N sec or longer apart. Where N is defined as 1 << bucket index.

    This network pattern tracking is particularly useful for wireless
    networks (ie: 3G) where batching network activity closely together
    is more power efficient than far apart.

    New file: /proc/net/stat/activity

    output:

    Min Bucket(sec) Count
                  1 7
                  2 0
                  4 1
                  8 0
                 16 0
                 32 2
                 64 1
                128 0

    Change-Id: I4c4cd8627b872a55f326b1715c51bc3bdd6e8d92
    Signed-off-by: Mike Chan <email address hidden>

commit 730c51b8da40df4d6b27faea011849107eddb765
Author: San Mehat <email address hidden>
Date: Thu May 6 15:43:46 2010 -0700

    staging: android: lowmemorykiller: Remove bitrotted codepath

    Now that we're murder-synchronous, this code path will never be
    called (and if it does, it doesn't tell us anything useful other
    than we killed a task that was already being killed by somebody
    else but hadn't gotten its' signal yet)

    Signed-off-by: San Mehat <email address hidden>

commit af0240f095a704f75f032bbcc01f670c65c163ba
Author: San Mehat <email address hidden>
Date: Thu May 6 15:40:07 2010 -0700

    staging: android: lowmemorykiller: Fix task_struct leak

    As it turns out, the CONFIG_PROFILING interfaces leak a
    task struct if the notifier chain returns NOTIFY_OK.. doh.

    This patch reworks lowmemkiller to use the new generic task
    free notifier chain.

    Signed-off-by: San Mehat <email address hidden>

commit f7983488cb4c691cb58e9d4c81bdc64af3c6c857
Author: San Mehat <email address hidden>
Date: Mon Apr 26 15:11:04 2010 -0700

    lowmemorykiller: Don't try to kill the same pid over and over

      Under certain circumstances, a process can take awhile to
    handle a sig-kill (especially if it's in a scheduler group with
    a very low share ratio). When this occurs, lowmemkiller returns
    to vmscan indicating the process memory has been freed - even
    though the process is still waiting to die. Since the memory
    hasn't actually freed, lowmemkiller is called again shortly after,
    and picks the same process to die; regardless of the fact that
    it has already been 'scheduled' to die and the memory has already
    been reported to vmscan as having been freed.

      Solution is to check fatal_signal_pending() on the selected
    task, and if it's already pending destruction return; indicating
    to vmscan that no resources were freed on this pass.

    Signed-off-by: San Mehat <email address hidden>

commit 667dffa787a87ef4ea43cc65957ce96077fdcd0a
Author: San Mehat <email address hidden>
Date: Thu May 6 15:37:55 2010 -0700

    sched: Add a generic notifier when a task struct is about to be freed

    This patch adds a notifier which can be used by subsystems that may
    be interested in when a task has completely died and is about to
    have it's last resource freed.

      The Android lowmemory killer uses this to determine when a task
    it has killed has finally given up its goods.

    Signed-off-by: San Mehat <email address hidden>

commit e14ae279472248bb10351a03c4d6ffc3b224094c
Author: Dmitry Shmidt <email address hidden>
Date: Thu Mar 18 16:04:18 2010 -0700

    wlan: Extract generic wlan platform data from tiwlan specific header

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit d6a41cd16c6e1e0251f129ce98274d5de93ef91c
Author: San Mehat <email address hidden>
Date: Sat Oct 10 09:35:24 2009 -0700

    block: genhd: Add disk/partition specific uevent callbacks for partition info

    For disk devices, a new uevent parameter 'NPARTS' specifies the number
    of partitions detected by the kernel. Partition devices get 'PARTN' which
    specifies the partitions index in the table, and 'PARTNAME', which
    specifies PARTNAME specifices the partition name of a partition device

    Signed-off-by: Dima Zavin <email address hidden>

commit 98ec37b666b3b0a005e33858ee151ba98d3aaa8c
Author: San Mehat <email address hidden>
Date: Wed Sep 16 12:39:10 2009 -0700

    proc: smaps: Allow smaps access for CAP_SYS_RESOURCE

    Signed-off-by: San Mehat <email address hidden>

commit f521244ad0f238eb348b349e51f222ceff8473ec
Author: hyungseoung.yoo <email address hidden>
Date: Fri Nov 18 13:57:01 2011 +0900

    Bluetooth: Keep master role when SCO or eSCO is active

    This improves compatbility with a lot of headset / chipset
    combinations. Ideally this should not be needed.

    Change-Id: I8b676701e12e416aa7d60801b9d353b15d102709
    Signed-off-by: hyungseoung.yoo <email address hidden>
    Signed-off-by: Jaikumar Ganesh <email address hidden>

commit 88cb72e1243df38ea2b84f81fa70b398e6234953
Author: Peter Hurley <peter@xxxxxxxxxxxxxxxxxx>
Date: Tue Aug 9 16:26:55 2011 -0400

    Bluetooth: Fix l2cap conn failures for ssp devices

    Commit 330605423c fixed l2cap conn establishment for non-ssp remote
    devices by not setting HCI_CONN_ENCRYPT_PEND every time conn security
    is tested (which was always returning failure on any subsequent
    security checks).

    However, this broke l2cap conn establishment for ssp remote devices
    when an ACL link was already established at SDP-level security. This
    fix ensures that encryption must be pending whenever authentication
    is also pending.

    Change-Id: I6876ea5134e90d1f3d0f84e8ed40b92977b3df64
    Signed-off-by: Peter Hurley <peter@xxxxxxxxxxxxxxxxxx>

commit aec7cfff78584386acff3f02c9c2011b3f558352
Author: Vinicius Costa Gomes <email address hidden>
Date: Thu Jul 7 18:59:41 2011 -0300

    Bluetooth: Use the stored LTK for restabilishing security

    Now that it's possible that the exchanged key is present in
    the link key list, we may be able to estabilish security with
    an already existing key, without need to perform any SMP
    procedure.

    Signed-off-by: Vinicius Costa Gomes <email address hidden>
    Signed-off-by: Gustavo F. Padovan <email address hidden>

commit fe43516a375dfe0034d80c48b5c7818cf2ebc128
Author: Nick Pelly <email address hidden>
Date: Thu Feb 11 11:54:28 2010 -0800

    Bluetooth: Allow SCO/eSCO packet type selection for outgoing SCO connections.

    __u16 sco_pkt_type is introduced to struct sockaddr_sco. It allows bitwise
    selection of SCO/eSCO packet types. Currently those bits are:

    0x0001 HV1 may be used.
    0x0002 HV2 may be used.
    0x0004 HV3 may be used.
    0x0008 EV3 may be used.
    0x0010 EV4 may be used.
    0x0020 EV5 may be used.
    0x0040 2-EV3 may be used.
    0x0080 3-EV3 may be used.
    0x0100 2-EV5 may be used.
    0x0200 3-EV5 may be used.

    This is similar to the Packet Type parameter in the HCI Setup Synchronous
    Connection Command, except that we are not reversing the logic on the EDR bits.
    This makes the use of sco_pkt_tpye forward portable for the use case of
    white-listing packet types, which we expect will be the primary use case.

    If sco_pkt_type is zero, or userspace uses the old struct sockaddr_sco,
    then the default behavior is to allow all packet types.

    Packet type selection is just a request made to the Bluetooth chipset, and
    it is up to the link manager on the chipset to negiotiate and decide on the
    actual packet types used. Furthermore, when a SCO/eSCO connection is eventually
    made there is no way for the host stack to determine which packet type was used
    (however it is possible to get the link type of SCO or eSCO).

    sco_pkt_type is ignored for incoming SCO connections. It is possible
    to add this in the future as a parameter to the Accept Synchronous Connection
    Command, however its a little trickier because the kernel does not
    currently preserve sockaddr_sco data between userspace calls to accept().

    The most common use for sco_pkt_type will be to white-list only SCO packets,
    which can be done with the hci.h constant SCO_ESCO_MASK.

    This patch is motivated by broken Bluetooth carkits such as the Motorolo
    HF850 (it claims to support eSCO, but will actually reject eSCO connections
    after 5 seconds) and the 2007/2008 Infiniti G35/37 (fails to route audio
    if a 2-EV5 packet type is negiotiated). With this patch userspace can maintain
    a list of compatible packet types to workaround remote devices such as these.

    Based on a patch by Marcel Holtmann.

    Rebased to 2.6.39.

    Change-Id: Ide1c89574fa4f6f1b9218282e1af17051eb86315
    Signed-off-by: Nick Pelly <email address hidden>

commit 7c786ce33a1b4194cb95aa1e68bc38d552eda932
Author: Nick Pelly <email address hidden>
Date: Wed Dec 9 00:15:41 2009 -0800

    Bluetooth: Add ACL MTU, available buffers and total buffers to hci_conn_info.

    This provides userspace debugging tools access to ACL flow control state.

    Signed-off-by: Nick Pelly <email address hidden>

commit 8cc0e2b58f7d0caef9fb9a617cb20abf4dc2583c
Author: Nick Pelly <email address hidden>
Date: Tue Sep 22 15:19:46 2009 -0700

    Bluetooth: Fallback to SCO on error code 0x10 (Connection Accept Timeout).

    This is to support the Motorola HF850 carkit which reports the error code 0x10
    for an eSCO attempt, even though it advertises eSCO support. Here is the
    hcidump:

    2009-09-22 15:40:24.492391 < HCI Command: Setup Synchronous Connection
    (0x01|0x0028) plen 17
        handle 1 voice setting 0x0060
    2009-09-22 15:40:24.493002 > HCI Event: Command Status (0x0f) plen 4
        Setup Synchronous Connection (0x01|0x0028) status 0x00 ncmd 1
    2009-09-22 15:40:30.594869 > HCI Event: Synchronous Connect Complete (0x2c)
    plen 17
        status 0x10 handle 257 bdaddr 00:50:CD:20:C6:84 type eSCO
        Error: Connection Accept Timeout Exceeded

    With this patch we will retry with a SCO connection, which succeeds.

    Unfortunately the Moto HF850 also takes 5 seconds to return the error for the
    eSCO attempt, so it will still take 5 seconds to fallback to SCO with this
    patch.

    Signed-off-by: Nick Pelly <email address hidden>

commit de6f7a9fdb56f4c7f47d77c0fc6975137ec1f6e7
Author: Nick Pelly <email address hidden>
Date: Fri Sep 18 18:29:23 2009 -0700

    Bluetooth: Increase timeout for legacy pairing from 10 seconds to 40 seconds.

    Legacy pairing is a bit of a problem because on the incoming end it is
    impossible to know pairing has begun:

    2009-09-18 18:29:24.115692 > HCI Event: Connect Request (0x04) plen 10
        bdaddr 00:23:D4:04:51:7A class 0x58020c type ACL
    2009-09-18 18:29:24.115966 < HCI Command: Accept Connection Request (0x01|0x0009) plen 7
        bdaddr 00:23:D4:04:51:7A role 0x00
        Role: Master
    2009-09-18 18:29:24.117065 > HCI Event: Command Status (0x0f) plen 4
        Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1
    2009-09-18 18:29:24.282928 > HCI Event: Role Change (0x12) plen 8
        status 0x00 bdaddr 00:23:D4:04:51:7A role 0x00
        Role: Master
    2009-09-18 18:29:24.291534 > HCI Event: Connect Complete (0x03) plen 11
        status 0x00 handle 1 bdaddr 00:23:D4:04:51:7A type ACL encrypt 0x00
    2009-09-18 18:29:24.291839 < HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
        handle 1
    2009-09-18 18:29:24.292144 > HCI Event: Page Scan Repetition Mode Change (0x20) plen 7
        bdaddr 00:23:D4:04:51:7A mode 1
    2009-09-18 18:29:24.293823 > HCI Event: Command Status (0x0f) plen 4
        Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 1
    2009-09-18 18:29:24.303588 > HCI Event: Max Slots Change (0x1b) plen 3
        handle 1 slots 5
    2009-09-18 18:29:24.309448 > HCI Event: Read Remote Supported Features (0x0b) plen 11
        status 0x00 handle 1
        Features: 0xff 0xff 0x2d 0xfe 0x9b 0xff 0x79 0x83
    2009-09-18 18:29:24.345916 < HCI Command: Remote Name Request (0x01|0x0019) plen 10
        bdaddr 00:23:D4:04:51:7A mode 2 clkoffset 0x0000
    2009-09-18 18:29:24.346923 > HCI Event: Command Status (0x0f) plen 4
        Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
    2009-09-18 18:29:24.375793 > HCI Event: Remote Name Req Complete (0x07) plen 255
        status 0x00 bdaddr 00:23:D4:04:51:7A name 'test'
    2009-09-18 18:29:34.332190 < HCI Command: Disconnect (0x01|0x0006) plen 3
        handle 1 reason 0x13

    There are some mainline patches such as "Add different pairing timeout for
    Legacy Pairing" but they do not address the HCI sequence above.

    I think the real solution is to avoid using CreateBond(), and instead make
    the profile connection immediately. This way both sides will use a longer
    timeout because there is a higher level connection in progress, and we will
    not end up with the useless HCI sequence above.

    Signed-off-by: Nick Pelly <email address hidden>

commit 909a364281388fb67f7203e5fceb185276644a5c
Author: Nick Pelly <email address hidden>
Date: Thu Jul 9 12:23:44 2009 -0700

    Bluetooth: Do not attempt to send dlci disconnect when in BT_CONFIG.

    This fixes a bug where shutdown() and close() on a rfcomm socket during ACL
    connection would not cause HCI Create Connection Cancel.

    Signed-off-by: Nick Pelly <email address hidden>

commit 34005c9288184a2fd56854962a8fbe0458ecd7f0
Author: San Mehat <email address hidden>
Date: Wed Jul 29 20:21:28 2009 -0700

    serial_core: Add wake_peer uart operation

    Add wake_peer which is called before starting UART TX. The idea here
    is to provide a mechanism where we can wakeup our peer before sending
    data.

    Change-Id: I42e0779b635f64ca99184b45d5b028de80197491
    Signed-off-by: San Mehat <email address hidden>

commit 883130924a61ee24fafe43eccf2bc1a3d979c68d
Author: Nick Pelly <email address hidden>
Date: Thu Dec 4 17:37:05 2008 -0800

    rfkill: Introduce CONFIG_RFKILL_PM and use instead of CONFIG_PM to power down

    Some platforms do not want to power down rfkill devices on suspend.

    Change-Id: I62a11630521c636d54a4a02ab9037a43435925f5
    Signed-off-by: Nick Pelly <email address hidden>

commit 16f7492c95786bbbc087b32e533d838523bbdebc
Author: Nick Pelly <email address hidden>
Date: Thu Jun 11 10:49:48 2009 -0700

    wl127x-rfkill: Add power control driver for TI WL127X Bluetooth chips

    Signed-off-by: Nick Pelly <email address hidden>

commit 1bf723d8aa28f70391a775715bb09f9dac6dccf5
Author: Colin Cross <email address hidden>
Date: Wed Feb 1 16:02:23 2012 -0800

    printk: update log_buf_copy for 3.3

    logbuf_lock is a raw spinlock in 3.3, replace spin_(un)lock_irq
    with raw_spin_(un)lock_irq.

    Change-Id: I4b13c6a34bcbcbe95ef28ac3aec0528deef7fa9d
    Signed-off-by: Colin Cross <email address hidden>

commit 0cfa041818ccb83c234b1151d1b2417cb17dec7a
Author: San Mehat <email address hidden>
Date: Thu Aug 6 10:25:21 2009 -0700

    kernel: printk: Add non exported function for clearing the log ring buffer

    Signed-off-by: San Mehat <email address hidden>

commit a828919ab77fa1e6f4b6091df7f9975e8607ebfb
Author: Arve Hjønnevåg <email address hidden>
Date: Mon Apr 14 21:35:25 2008 -0700

    printk: Fix log_buf_copy termination.

    If idx was non-zero and the log had wrapped, len did not get truncated
    to stop at the last byte written to the log.

commit 9a710981d766164396786e25ebcad450569bdb1c
Author: Arve Hjønnevåg <email address hidden>
Date: Thu Jan 15 19:07:27 2009 -0800

    Revert "printk: remove unused code from kernel/printk.c"

    This reverts commit acff181d3574244e651913df77332e897b88bff4.

commit 10647800b773ca2539a2dce4c25b8779e9f2bf5f
Author: Chia-chi Yeh <email address hidden>
Date: Tue Jun 30 11:23:04 2009 +0800

    net: Replace AID_NET_RAW checks with capable(CAP_NET_RAW).

    Signed-off-by: Chia-chi Yeh <email address hidden>

commit b64107245dbade3bd0a341fb7bd1b9cd4698ff6d
Author: Chia-chi Yeh <email address hidden>
Date: Fri Jun 19 07:15:05 2009 +0800

    security: Add AID_NET_RAW and AID_NET_ADMIN capability check in cap_capable().

    Signed-off-by: Chia-chi Yeh <email address hidden>

commit e7a8aa97bb9f4439e63948800883d8d874c78c95
Author: Chia-chi Yeh <email address hidden>
Date: Sat Jun 13 02:29:04 2009 +0800

    net: PPPoPNS and PPPoLAC fixes.

    net: Fix a bitmask in PPPoPNS and rename constants in PPPoPNS and PPPoLAC.

    Signed-off-by: Chia-chi Yeh <email address hidden>

    net: Fix a potential deadlock while releasing PPPoLAC/PPPoPNS socket.

    PPP driver guarantees that no thread will be executing start_xmit() after
    returning from ppp_unregister_channel(). To achieve this, a spinlock (downl)
    is used. In pppolac_release(), ppp_unregister_channel() is called after sk_udp
    is locked. At the same time, another thread might be running in pppolac_xmit()
    with downl. Thus a deadlock will occur if the thread tries to lock sk_udp.
    The same situation might happen on sk_raw in pppopns_release().

    Signed-off-by: Chia-chi Yeh <email address hidden>

    net: Force PPPoLAC and PPPoPNS to bind an interface before creating PPP channel.

    It is common to manipulate the routing table after configuring PPP device.
    Since both PPPoLAC and PPPoPNS run over IP, care must be taken to make sure
    that there is no loop in the routing table.
    Although this can be done by adding a host route, it might still cause
    problems when the interface is down for some reason.

    To solve this, this patch forces both drivers to bind an interface before
    creating PPP channel, so the system will not re-route the tunneling sockets
    to another interface when the original one is down. Another benefit is that
    now the host route is no longer required, so there is no need to remove it
    when PPP channel is closed.

    Signed-off-by: Chia-chi Yeh <email address hidden>

    net: Avoid sleep-inside-spinlock in PPPoLAC and PPPoPNS.

    Since recv() and xmit() are called with a spinlock held, routines which might
    sleep cannot be used. This issue is solved by following changes:

    Incoming packets are now processed in backlog handler, recv_core(), instead of
    recv(). Since backlog handler is always executed with socket spinlock held, the
    requirement of ppp_input() is still satisfied.

    Outgoing packets are now processed in workqueue handler, xmit_core(), instead of
    xmit(). Note that kernel_sendmsg() is no longer used to prevent touching dead
    sockets.

    In release(), lock_sock() and pppox_unbind_sock() ensure that no thread is in
    recv_core() or xmit(). Then socket handlers are restored before release_sock(),
    so no packets will leak in backlog queue.

    Signed-off-by: Chia-chi Yeh <email address hidden>

    net: Fix msg_iovlen in PPPoLAC and PPPoPNS.

    Although any positive value should work (which is always true in both drivers),
    the correct value should be 1.

    Signed-off-by: Chia-chi Yeh <email address hidden>

commit 461d4adc1e7d3d8be6b3068eec233ae548c4a3ff
Author: Chia-chi Yeh <email address hidden>
Date: Fri Jun 12 01:09:30 2009 +0800

    net: add PPP on PPTP Network Server (PPPoPNS) driver.

    Signed-off-by: Chia-chi Yeh <email address hidden>

    ppopns: dont include px_proto define in if_pppopns.h

    Change-Id: I27e687667db5b45182562f4a517a2e6cec6b1350
    Signed-off-by: Dima Zavin <email address hidden>

commit 1938688002071febffcf30a8f2ddfd1fd76e2e0c
Author: Chia-chi Yeh <email address hidden>
Date: Fri May 8 04:02:40 2009 +0800

    net: add PPP on L2TP Access Concentrator (PPPoLAC) driver.

    Change-Id: I3ae3ee7520951ae24269db0ef2898c6455cf6bcc
    Signed-off-by: Chia-chi Yeh <email address hidden>

    ppolac: dont include px_proto define in if_pppolac.h

    Change-Id: I55bc9cf91ea0e9e8f7bf5d6e241d188e1269343a
    Signed-off-by: Dima Zavin <email address hidden>

commit 25397e9344a06febf3bb4c87aa668b91010daa58
Author: Dima Zavin <email address hidden>
Date: Wed Jan 5 16:03:21 2011 -0800

    fs: yaffs: don't force YAFFS_TRACE_ALWAYS for all trace levels

    Change-Id: I9ddc676382d26aef7f12145d412fe670cb486317
    Signed-off-by: Dima Zavin <email address hidden>

commit 5ea813fd8970de4fa59e3aa9a493ee708c774a61
Author: Arve Hjønnevåg <email address hidden>
Date: Tue May 18 20:35:30 2010 -0700

    fs: yaffs: Import yaffs from Thu Dec 23 13:31:37 2010 +1300

    commit ddf33fed15c2376bfb602d62dd018c63fce60df8
    Author: Timothy Manning <email address hidden>
    Date: Thu Dec 23 13:31:37 2010 +1300

        yaffs updated direct/timothy_tests/quick_tests
        Signed-off-by: Timothy Manning <email address hidden>

    Change-Id: I5bbe5a05277bdf8a6fe188bbe4c77725b3fa2aae
    Signed-off-by: Dima Zavin <email address hidden>

commit 6bbd5b121293756fc3c5b84fdf885040ba7a61da
Author: San Mehat <email address hidden>
Date: Sat Mar 21 18:48:54 2009 -0700

    fs: block_dump: Don't display inode changes if block_dump < 2

    Signed-off-by: San Mehat <email address hidden>

commit dca1c7150aa84a2a8cd1565083a25b2b50eaf379
Author: Dmitry Shmidt <email address hidden>
Date: Thu Dec 18 09:55:20 2008 -0800

    tiwlan: Add abstract wifi control functions support

commit caa230ddee7e8ea663ffe72262ed000ac2c8a448
Author: Dmitry Shmidt <email address hidden>
Date: Fri Dec 16 17:52:18 2011 -0800

    mmc: Set suspend/resume bus operations if CONFIG_PM_RUNTIME is used

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit 789f42190adca8dd4d8e9e2ac4d4e124d63295a5
Author: Ken Sumrall <email address hidden>
Date: Tue Oct 25 18:16:58 2011 -0700

    mmc: block: Improve logging of handling emmc timeouts

    Add some logging to make it clear just how the emmc timeout
    was handled.

    Change-Id: Id33fd28d8b9778dc4e85db829e2637a328eddab4
    Signed-off-by: Ken Sumrall <email address hidden>

commit 3663054dcf6f6bed472d4f7fb05d1d3588d9638f
Author: Colin Cross <email address hidden>
Date: Wed Sep 7 17:28:58 2011 -0700

    mmc: core: host: only use wakelock for detect work

    There is no need to take a wakelock for delayed lazy disable
    work, it will be cancelled in the suspend handler and force
    disabled. Only take the wakelock when the detect work is
    queued, and make sure to drop the wakelock if the work is
    cancelled.

    Change-Id: I1e507a5f98848954ea21d45e23b6192c3132a349
    Signed-off-by: Colin Cross <email address hidden>

commit f20721ec028a606fd27cbe8fe10ab7cfa5549109
Author: Dmitry Shmidt <email address hidden>
Date: Tue May 3 11:05:04 2011 -0700

    ARM: Add 'card_present' state to mmc_platfrom_data

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit c92e3eb11fae82d93e30147820e3bab8769fc914
Author: Colin Cross <email address hidden>
Date: Fri Apr 8 22:20:53 2011 -0700

    Recreate asm/mach/mmc.h include file

    Change-Id: I9f10244b0603f7842b8504a16124d40dc4a71ed2
    Signed-off-by: Colin Cross <email address hidden>

commit 4744d50648b2a0fd3437afacc088121bb8793243
Author: Dmitry Shmidt <email address hidden>
Date: Thu Oct 14 15:20:21 2010 -0700

    mmc: Fix pm_notifier obeying deferred resume

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit 5ac72c80ecc0b708659ccc433c1d2eaaf0707754
Author: Dmitry Shmidt <email address hidden>
Date: Thu Oct 7 14:39:16 2010 -0700

    mmc: Add "ignore mmc pm notify" functionality

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit 880857a6e6bf1de9e574c7978430ad00ddb421ce
Author: Dmitry Shmidt <email address hidden>
Date: Wed Oct 6 17:25:02 2010 -0700

    mmc: sdio: Fix enable_hs and enable_wide in sdio_reset_comm()

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit fdb7587cf12bf9c325eeec456d035145d51e4365
Author: San Mehat <email address hidden>
Date: Tue Feb 9 12:08:48 2010 -0800

    mmc: core: Release delayed mmc work wakelock after deep disable

    Signed-off-by: San Mehat <email address hidden>

commit d431f5275f8033f633c7474c6d8c748678907f9d
Author: Daniel Chen <email address hidden>
Date: Wed Dec 9 09:45:36 2009 -0800

    mmc: sdio: Add high speed support to sdio_reset_comm()

    Signed-off-by: San Mehat <email address hidden>

commit 52d8a4d97afcdf1197d885f1b2690ce6b10748eb
Author: Dmitry Shmidt <email address hidden>
Date: Wed Jul 29 10:22:03 2009 -0700

    mmc: sdio: Claim host in sdio_reset_comm()

    Signed-off-by: Dmitry Shmidt <email address hidden>

commit b81bc9436fa79740d69fb2e0f34fe48fc33ff75e
Author: San Mehat <email address hidden>
Date: Thu Jul 30 08:21:19 2009 -0700

    mmc: mmcblk: Add support for deferred SD bus resume

    Signed-off-by: San Mehat <email address hidden>

    mmc: card: Add MMC_BLOCK_DEFERRED_RESUME option to Kconfig

    Signed-off-by: San Mehat <email address hidden>

commit 399cb95d04f32e5158891b84bd40f2875ed02bf4
Author: San Mehat <email address hidden>
Date: Thu Jul 30 07:55:28 2009 -0700

    mmc: core: Add deferred bus resume policy.

    A card driver can now specify that the underlying bus should *not*
    auto-resume with the rest of the system. This is useful for reducing resume
    latency as well as saving power when the card driver is not using the
    bus. In the future, we'll add support for manual suspend

    Signed-off-by: San Mehat <email address hidden>

commit 5255bb98a04d20d830c640dbf8b5f68bf830eaa0
Author: San Mehat <email address hidden>
Date: Mon Mar 23 12:20:37 2009 -0700

    mmc: core: Hold a wake lock accross delayed work + mmc rescan

    Signed-off-by: San Mehat <email address hidden>

    mmc: core: Rework mmc_delayed_work wakelock so that the wakelock is only extended if a card is added or removed.

    Signed-off-by: San Mehat <email address hidden>

commit 70d371b3e5836724c8f7aa4f36bcd3653aa42c3b
Author: San Mehat <email address hidden>
Date: Thu Dec 4 11:18:00 2008 -0800

    mmc: sd: Add retries in re-detection

    Signed-off-by: San Mehat <email address hidden>

    mmc: sd: Remove debugging printk

    Signed-off-by: Dima Zavin <email address hidden>

commit ce8cae08681cd5049542a0a98aecefc29495eee3
Author: San Mehat <email address hidden>
Date: Mon Dec 1 08:52:34 2008 -0800

    mmc: sd: When resuming, try a little harder to init the card

    Signed-off-by: San Mehat <email address hidden>

commit 6efc9dd9b7b8c9214975cd73fd91e1520658351e
Author: San Mehat <email address hidden>
Date: Thu May 15 09:15:37 2008 -0700

    mmc: Add new API call 'sdio_reset_comm' for resetting communication with an SDIO device

    Signed-off-by: San Mehat <email address hidden>

commit 8683060cda702378e5582315cedf613893db735a
Author: Dmitry Shmidt <email address hidden>
Date: Tue Nov 11 11:22:38 2008 -0800

    trout: Add functions for WiFi

commit 9ee8858fe8b5588cbb85a536179171880820aac6
Author: San Mehat <email address hidden>
Date: Mon Apr 14 15:22:49 2008 -0700

    mmc: Add concept of an 'embedded' SDIO device.

    This is required to support chips which use SDIO for signaling/
    communication but do not implement the various card enumeration registers
    as required for full SD / SDIO cards.

    mmc: sdio: Fix bug where we're freeing the CIS tables we never allocated when using EMBEDDED_SDIO
    mmc: Add max_blksize to embedded SDIO data

    Signed-off-by: San Mehat <email address hidden>

commit b22fdab146fdf7bf910346a845d9f55bc8aee09b
Author: San Mehat <email address hidden>
Date: Tue Nov 11 09:35:36 2008 -0800

    mmc: sd: Add new CONFIG_MMC_PARANOID_SD_INIT for enabling retries during SD detection

    Signed-off-by: San Mehat <email address hidden>

commit 42dd11907fff6a716766fedcaead5ec0e2211d95
Author: San Mehat <email address hidden>
Date: Mon Nov 10 16:29:50 2008 -0800

    mmc: Add status IRQ and status callback function to mmc platform data

    Signed-off-by: San Mehat <email address hidden>

commit 3b84b5cb35820397a0c5c94ee63d8a6b8981010e
Author: Arve Hjønnevåg <email address hidden>
Date: Tue Aug 21 21:56:46 2007 -0700

    Input: synaptics_i2c_rmi: Driver for Synaptics Touchscreens using RMI over I2C.

    Signed-off-by: Arve Hjønnevåg <email address hidden>

    Input: synaptics_i2c_rmi: disable_irq -> disable_irq_nosync

    Also remove duplicate swap macro

    Change-Id: I77266431ba5c267a5d92c4bdc2f127a5297065a8
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit d071815f3d56bd113997b35de1d3dc2ecec3780a
Author: Mike Lockwood <email address hidden>
Date: Mon Dec 15 14:51:56 2008 -0500

    input: keychord: Add keychord driver

    This driver allows userspace to receive notification when client
    specified key combinations are pressed.
    The client opens /dev/keychord and writes a list of keychords
    for the driver to monitor.
    The client then reads or polls /dev/keychord for notifications.
    A client specified ID for the keychord is returned from read()
    when a keychord press is detected.

    Signed-off-by: Mike Lockwood <email address hidden>

    keychord: fix to build without CONFIG_PREEMPT

    Change-Id: I911f13aeda4224b6fa57863bc7e8972fec8837fb

commit a2d364c55ad4cbfe2df5a019c81b7159b7857db6
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Nov 21 21:47:23 2008 -0800

    input: Add keyreset driver.

    Add a platform device in the board file to specify a reset key-combo.
    The first time the key-combo is detected a work function that syncs
    the filesystems is scheduled. If all the keys are released and then
    pressed again, it calls panic. Reboot on panic should be set for
    this to work.

    Change-Id: I9d54283ca1fba45e4b1ae1a407524cdda8171143
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit f811f7f66c3ca0047fbbfae747cb09433bd64824
Author: Colin Cross <email address hidden>
Date: Wed Feb 1 20:26:28 2012 -0800

    input: misc: gpio_event: remove early suspend

    Remove the early suspend handler. Leave the suspend functions
    for now, they should eventually get called through a userspace
    interface.x

    Change-Id: I67f9dafe32fe32577bab93c42b95824db96c215c
    Signed-off-by: Colin Cross <email address hidden>

commit 6cf80c7fbf27523037b2306322c60cc97a23814c
Author: Arve Hjønnevåg <email address hidden>
Date: Wed Oct 15 18:23:47 2008 -0700

    Input: Generic GPIO Input device.

    Supports keyboard matrixces, direct inputs, direct outputs and axes connected to gpios.

    Change-Id: I5e921e6e3a1cc169316ee3b665f4cc21b5735114
    Signed-off-by: Arve Hjønnevåg <email address hidden>
    Signed-off-by: Nick Pelly <email address hidden>

commit 404ed7fe2ee785c745de28dcb5a2ae7e226d87f0
Author: Mike Chan <email address hidden>
Date: Thu Apr 24 10:22:26 2008 -0700

    Grants system server access to /proc/<pid>/oom_adj for Android applications.

    Signed-off-by: Brian Swetland <email address hidden>

commit aa98eb7a0ff0b114b9a3e08bc8f3a262e22bbb47
Author: Mike Lockwood <email address hidden>
Date: Sat Mar 15 13:29:36 2008 -0400

    FAT: Add new ioctl VFAT_IOCTL_GET_VOLUME_ID for reading the volume ID.

    Signed-off-by: Brian Swetland <email address hidden>

commit afa58dd873439d3002ecf02a199deadbe908fd64
Author: Mike Chan <email address hidden>
Date: Wed Jan 7 11:40:42 2009 -0800

    misc: uidstat: Adding uid stat driver to collect network statistics.

    Signed-off-by: Mike Chan <email address hidden>

commit 80985f7e2d6d948d904292aa05db04f2e5798a81
Author: Robert Love <email address hidden>
Date: Thu Jul 31 11:12:44 2008 -0400

    sysfs_net_ipv4: Add sysfs-based knobs for controlling TCP window size

    Add a family of knobs to /sys/kernel/ipv4 for controlling the TCP window size:

     tcp_wmem_min
     tcp_wmem_def
     tcp_wmem_max
     tcp_rmem_min
     tcp_rmem_def
     tcp_rmem_max

    This six values mirror the sysctl knobs in /proc/sys/net/ipv4/tcp_wmem and
    /proc/sys/net/ipv4/tcp_rmem.

    Sysfs, unlike sysctl, allows us to set and manage the files' permissions and
    owners.

    Signed-off-by: Robert Love <email address hidden>

commit 9fd1b8bf6d0990ec27056df9141b70a36b0bd48c
Author: Robert Love <email address hidden>
Date: Mon May 12 17:08:29 2008 -0400

    net: socket ioctl to reset connections matching local address

    Introduce a new socket ioctl, SIOCKILLADDR, that nukes all sockets
    bound to the same local address. This is useful in situations with
    dynamic IPs, to kill stuck connections.

    Signed-off-by: Brian Swetland <email address hidden>

    net: fix tcp_v4_nuke_addr

    Signed-off-by: Dima Zavin <email address hidden>

    net: ipv4: Fix a spinlock recursion bug in tcp_v4_nuke.

    We can't hold the lock while calling to tcp_done(), so we drop
    it before calling. We then have to start at the top of the chain again.

    Signed-off-by: Dima Zavin <email address hidden>

    net: ipv4: Fix race in tcp_v4_nuke_addr().

    To fix a recursive deadlock in 2.6.29, we stopped holding the hash table lock
    across tcp_done() calls. This fixed the deadlock, but introduced a race where
    the socket could die or change state.

    Fix: Before unlocking the hash table, we grab a reference to the socket. We
    can then unlock the hash table without risk of the socket going away. We then
    lock the socket, which is safe because it is pinned. We can then call
    tcp_done() without recursive deadlock and without race. Upon return, we unlock
    the socket and then unpin it, killing it.

    Change-Id: Idcdae072b48238b01bdbc8823b60310f1976e045
    Signed-off-by: Robert Love <email address hidden>
    Acked-by: Dima Zavin <email address hidden>

    ipv4: disable bottom halves around call to tcp_done().

    Signed-off-by: Robert Love <email address hidden>
    Signed-off-by: Colin Cross <email address hidden>

    ipv4: Move sk_error_report inside bh_lock_sock in tcp_v4_nuke_addr

    When sk_error_report is called, it wakes up the user-space thread, which then
    calls tcp_close. When the tcp_close is interrupted by the tcp_v4_nuke_addr
    ioctl thread running tcp_done, it leaks 392 bytes and triggers a WARN_ON.

    This patch moves the call to sk_error_report inside the bh_lock_sock, which
    matches the locking used in tcp_v4_err.

    Signed-off-by: Colin Cross <email address hidden>

commit edafde808437a9038cd1e84f8bfb349dc529a2b4
Author: Robert Love <email address hidden>
Date: Wed Oct 15 15:35:44 2008 -0400

    Paranoid network.

    With CONFIG_ANDROID_PARANOID_NETWORK, require specific uids/gids to instantiate
    network sockets.

    Signed-off-by: Robert Love <email address hidden>

    paranoid networking: Use in_egroup_p() to check group membership

    The previous group_search() caused trouble for partners with module builds.
    in_egroup_p() is also cleaner.

    Signed-off-by: Nick Pelly <email address hidden>

    Fix 2.6.29 build.

    Signed-off-by: Arve Hjønnevåg <email address hidden>

    net: Fix compilation of the IPv6 module

    Fix compilation of the IPv6 module -- current->euid does not exist anymore,
    current_euid() is what needs to be used.

    Signed-off-by: Steinar H. Gunderson <email address hidden>

commit d260ada6528933d87724e2b9dba5de0c627e29a3
Author: John Stultz <email address hidden>
Date: Thu Dec 15 18:51:04 2011 -0800

    ashmem: Add shmem_set_file to mm/shmem.c

    NOT FOR STAGING
    This patch re-adds the original shmem_set_file to mm/shmem.c
    and converts ashmem.c back to using it.

    CC: Brian Swetland <email address hidden>
    CC: Colin Cross <email address hidden>
    CC: Arve Hjønnevåg <email address hidden>
    CC: Dima Zavin <email address hidden>
    CC: Robert Love <email address hidden>
    CC: Greg KH <email address hidden>
    Signed-off-by: John Stultz <email address hidden>

commit 84b436d537be985c9ecaf1a96151085a3ba120aa
Author: Robert Love <email address hidden>
Date: Wed Oct 15 15:34:49 2008 -0400

    Add android_aid.h

    Add <linux/android_aid.h>, our mapping of AID defines to gid numbers.

    Signed-off-by: Robert Love <email address hidden>

commit a147b2b5898c0df6db9cfa44c1e91a3e53463d39
Author: Mike Lockwood <email address hidden>
Date: Tue Oct 14 12:50:16 2008 -0400

    switch: switch class and GPIO drivers.

    switch: Export symbol switch_set_state.

    Signed-off-by: Mike Lockwood <email address hidden>

    switch: gpio: Don't call request_irq with interrupts disabled

    Signed-off-by: Arve Hjønnevåg <email address hidden>

    switch: Use device_create instead of device_create_drvdata.

    device_create_drvdata is obsolete.

    Signed-off-by: Arve Hjønnevåg <email address hidden>

    switch_gpio: Add missing #include <linux/interrupt.h>

    Change-Id: I6c397e41bbe1457162cc69e31a29db5d9f76fccb
    Signed-off-by: Mike Lockwood <email address hidden>

commit b2d895d9c53648b2dac6d3b697f0a8ec9e0d7983
Author: Arve Hjønnevåg <email address hidden>
Date: Mon Sep 21 17:26:47 2009 -0700

    power_supply: Hold a wake_lock while power supply change notifications are pending

    When connecting usb or the charger the device would often go back to sleep
    before the charge led and screen turned on.

    Change-Id: I01def6d86ddece0d4e31d2a91d176ed0975b6b9d
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 18504990f0df5ed655ab6d8918be9aa93de2e8a5
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Oct 17 15:28:08 2008 -0700

    Input: Use monotonic time for event time stamps.

    Since wall time can jump backwards, it cannot be used to determine if one
    event occured before another or for how long a key was pressed.

    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 2f8f1b5814f65e82de93d2115c6fcaa7f90b2883
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Oct 17 15:20:55 2008 -0700

    Input: evdev - Add ioctl to block suspend while event queue is not empty.

    Add an ioctl, EVIOCSSUSPENDBLOCK, to enable a wakelock that will block
    suspend while the event queue is not empty. This allows userspace code to
    process input events while the device appears to be asleep.

    The current code holds the wakelock for up 5 seconds for every input
    device and client. This can prevent suspend if sensor with a high data
    rate is active, even when that sensor is not capable of waking the
    device once it is suspended.

    Change-Id: I624d66ef30a0b3abb543685c343382b8419b42b9
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 237323ce36a4adc845e1ed883948b1085a1187a2
Author: Arve Hjønnevåg <email address hidden>
Date: Sun Mar 30 21:47:13 2008 -0700

    ledtrig-sleep: Add led trigger for sleep debugging.

    Signed-off-by: Brian Swetland <email address hidden>

commit 6e4b6932f7f1d7a9ce5b537b545fa924b83f21b6
Author: Arve Hjønnevåg <email address hidden>
Date: Tue Dec 1 20:54:37 2009 -0800

    PM: wakelock: Don't dump unfrozen task list when aborting try_to_freeze_tasks after less than one second

    Change-Id: Ib2976e5b97a5ee4ec9abd4d4443584d9257d0941
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit dce3610a81ec6ef81ee90b2640d2dac7efcc0a15
Author: Arve Hjønnevåg <email address hidden>
Date: Tue Oct 14 16:02:39 2008 -0700

    PM: wakelock: Abort task freezing if a wake lock is held.

    Avoids a problem where the device sometimes hangs for 20 seconds
    before the screen is turned on.

commit 92e7a6e6a59c3cf0742621309a1d534eaecab5f5
Author: Arve Hjønnevåg <email address hidden>
Date: Thu Oct 9 21:01:46 2008 -0700

    PM: Add user-space wake lock api.

    This adds /sys/power/wake_lock and /sys/power/wake_unlock.
    Writing a string to wake_lock creates a wake lock the
    first time is sees a string and locks it. Optionally, the
    string can be followed by a timeout.
    To unlock the wake lock, write the same string to wake_unlock.

    Change-Id: I66c6e3fe6487d17f9c2fafde1174042e57d15cd7

commit 596f2eedbddfce675d86d0c4ba992294cd39aaba
Author: Arve Hjønnevåg <email address hidden>
Date: Tue Sep 9 22:14:34 2008 -0700

    PM: Implement wakelock api.

    PM: wakelock: Replace expire work with a timer

    The expire work function did not work in the normal case.

    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 29da5497e11428cdafa6f7586d63ee0a4f2bced3
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Sep 26 22:10:56 2008 -0700

    PM: Add wake lock api.

commit 635b74d95aa5bd9dadfb2fdb7d4a177a465af3a8
Author: Mike Chan <email address hidden>
Date: Thu Jan 22 12:23:32 2009 -0800

    [docs] android: Add android config documentation to boot framework.

    Signed-off-by: Mike Chan <email address hidden>

commit e6b1a63d5329640a411a705f30d3f3a8190b221b
Author: Arve Hjønnevåg <email address hidden>
Date: Tue Jun 9 20:17:45 2009 -0700

    [ARM] Optionally flush entire dcache from v6_dma_flush_range

    If CACHE_FLUSH_RANGE_LIMIT is defined, then the entire dcache will
    be flushed if the requested range is larger than this limit.

    Change-Id: I29277d645a9d6716b1952cf3b870c78496261dd0
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit bdae58317df5f1a25de82ff684347badc76ba006
Author: Arve Hjønnevåg <email address hidden>
Date: Tue Feb 17 14:51:02 2009 -0800

    mm: Add min_free_order_shift tunable.

    By default the kernel tries to keep half as much memory free at each
    order as it does for one order below. This can be too agressive when
    running without swap.

    Change-Id: I5efc1a0b50f41ff3ac71e92d2efd175dedd54ead
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit ca4333c55419e8c2e453611598b30e54760a2001
Author: Brian Swetland <email address hidden>
Date: Mon Jan 26 17:15:49 2009 -0800

    [ARM] avoid mis-detecting some V7 cores in the decompressor

    This allows kernel decompress to happen nearly instantly instead
    of taking over 20 seconds.

    Signed-off-by: Brian Swetland <email address hidden>

commit cbc3c4bdcb9c51dbf20a4949d809e0e55dcd39bc
Author: Arve Hjønnevåg <email address hidden>
Date: Sat Dec 1 18:34:14 2007 -0800

    [ARM] armv6 dcc tty driver

    Signed-off-by: Brian Swetland <email address hidden>
    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 665bf97ed8f73c4ef0305bbe259f70d8d93c4055
Author: Tony Lindgren <email address hidden>
Date: Mon May 9 14:10:26 2005 -0700

    ARM: Make low-level printk work

    Makes low-level printk work.

    Signed-off-by: Tony Lindgren <email address hidden>

commit 0d545d47c2c516503b34f72192d0af73bb199b6c
Author: Colin Cross <email address hidden>
Date: Tue Nov 23 21:37:04 2010 -0800

    cgroup: Remove call to synchronize_rcu in cgroup_attach_task

    synchronize_rcu can be very expensive, averaging 100 ms in
    some cases. In cgroup_attach_task, it is used to prevent
    a task->cgroups pointer dereferenced in an RCU read side
    critical section from being invalidated, by delaying the
    call to put_css_set until after an RCU grace period.

    To avoid the call to synchronize_rcu, make the put_css_set
    call rcu-safe by moving the deletion of the css_set links
    into free_css_set_work, scheduled by the rcu callback
    free_css_set_rcu.

    The decrement of the cgroup refcount is no longer
    synchronous with the call to put_css_set, which can result
    in the cgroup refcount staying positive after the last call
    to cgroup_attach_task returns. To allow the cgroup to be
    deleted with cgroup_rmdir synchronously after
    cgroup_attach_task, have rmdir check the refcount of all
    associated css_sets. If cgroup_rmdir is called on a cgroup
    for which the css_sets all have refcount zero but the
    cgroup refcount is nonzero, reuse the rmdir waitqueue to
    block the rmdir until free_css_set_work is called.

    Signed-off-by: Colin Cross <email address hidden>

    Conflicts:

     kernel/cgroup.c

    Change-Id: I3b3f245c8f5e2e5d33f1e54178b2bb6ef10a0817

commit 4bc55fc26751762393d33fb9b69da8077742f6cf
Author: Colin Cross <email address hidden>
Date: Tue Jul 12 19:53:24 2011 -0700

    cgroup: Add generic cgroup subsystem permission checks

    Rather than using explicit euid == 0 checks when trying to move
    tasks into a cgroup via CFS, move permission checks into each
    specific cgroup subsystem. If a subsystem does not specify a
    'allow_attach' handler, then we fall back to doing our checks
    the old way.

    Use the 'allow_attach' handler for the 'cpu' cgroup to allow
    non-root processes to add arbitrary processes to a 'cpu' cgroup
    if it has the CAP_SYS_NICE capability set.

    This version of the patch adds a 'allow_attach' handler instead
    of reusing the 'can_attach' handler. If the 'can_attach' handler
    is reused, a new cgroup that implements 'can_attach' but not
    the permission checks could end up with no permission checks
    at all.

    Change-Id: Icfa950aa9321d1ceba362061d32dc7dfa2c64f0c
    Original-Author: San Mehat <email address hidden>
    Signed-off-by: Colin Cross <email address hidden>

commit 6cccd363001a0cf18c12ad7daff1ca81af7824e2
Author: Colin Cross <email address hidden>
Date: Tue Nov 23 21:37:03 2010 -0800

    cgroup: Set CGRP_RELEASABLE when adding to a cgroup

    Changes the meaning of CGRP_RELEASABLE to be set on any cgroup
    that has ever had a task or cgroup in it, or had css_get called
    on it. The bit is set in cgroup_attach_task, cgroup_create,
    and __css_get. It is not necessary to set the bit in
    cgroup_fork, as the task is either in the root cgroup, in
    which can never be released, or the task it was forked from
    already set the bit in croup_attach_task.

    Signed-off-by: Colin Cross <email address hidden>

commit b5b7dd27b9a72e769e8c0ef4205365e0a9b3d5ca
Author: Colin Cross <email address hidden>
Date: Thu Aug 11 17:15:24 2011 -0700

    ARM: allow the kernel text section to be made read-only

    This patch implements CONFIG_DEBUG_RODATA, allowing
    the kernel text section to be marked read-only in
    order to catch bugs that write over the kernel. This
    requires mapping the kernel code, plus up to 4MB, using
    pages instead of sections, which can increase TLB
    pressure.

    The kernel is normally mapped using 1MB section entries
    in the first level page table, and the first level page
    table is copied into every mm. This prevents marking
    the kernel text read-only, because the 1MB section
    entries are too large granularity to separate the init
    section, which is reused as read-write memory after
    init, and the kernel text section. Also, the top level
    page table for every process would need to be updated,
    which is not possible to do safely and efficiently on SMP.

    To solve both problems, allow alloc_init_pte to overwrite
    an existing section entry with a fully-populated second
    level page table. When CONFIG_DEBUG_RODATA is set, all
    the section entries that overlap the kernel text section
    will be replaced with page mappings. The kernel always
    uses a pair of 2MB-aligned 1MB sections, so up to 2MB
    of memory before and after the kernel may end up page
    mapped.

    When the top level page tables are copied into each
    process the second level page tables are not copied,
    leaving a single second level page table that will
    affect all processes on all cpus. To mark a page
    read-only, the second level page table is located using
    the pointer in the first level page table for the
    current process, and the supervisor RO bit is flipped
    atomically. Once all pages have been updated, all TLBs
    are flushed to ensure the changes are visible on all
    cpus.

    If CONFIG_DEBUG_RODATA is not set, the kernel will be
    mapped using the normal 1MB section entries.

    Change-Id: I94fae337f882c2e123abaf8e1082c29cd5d483c6
    Signed-off-by: Colin Cross <email address hidden>

commit 2c27087440fb7f32c3a753e9f4e0ea89a1e5c909
Author: Colin Cross <email address hidden>
Date: Wed Feb 1 15:58:57 2012 -0800

    binder: fix warning

    Convert binder_debug_no_lock to a bool to fix a warning:
    drivers/staging/android/binder.c:107: warning: return from incompatible
    pointer type

    Change-Id: I3ce97c1394cff7903d8bc9191f479bf55915920f
    Signed-off-by: Colin Cross <email address hidden>

commit 845c038adc58e7448f58bc2cebf7c428601c9da3
Author: Dima Zavin <email address hidden>
Date: Thu Jan 12 15:55:25 2012 -0800

    ram_console: set CON_ANYTIME console flag

    We want to ensure that we get all the console messages, even ones
    that occur while the printing CPU is not yet online.

    Change-Id: I1d2694d05ac9415669a92f38efdd8e71c927705b
    Signed-off-by: Dima Zavin <email address hidden>

commit 06a809c0c16658ab4bf45ddb61cad8ee18afff80
Author: Dima Zavin <email address hidden>
Date: Tue Oct 18 16:59:54 2011 -0700

    ARM: smp: implement arch_trigger_all_cpus_backtrace using IPI

    Based on a rough patch by <email address hidden>

    Since ARM doesn't have an NMI (fiq's are not always available),
    send an IPI to all other CPUs (current cpu prints the stack directly)
    to capture a backtrace.

    Change-Id: I8b163c8cec05d521b433ae133795865e8a33d4e2
    Signed-off-by: Dima Zavin <email address hidden>

commit 963c34b2653005804739c81cde97001a561655e2
Author: Colin Cross <email address hidden>
Date: Wed Sep 14 15:59:50 2011 -0700

    ARM: cache-l2x0: update workaround for PL310 errata 727915

    ARM errata 727915 for PL310 has been updated to include a new
    workaround required for PL310 r2p0 for l2x0_flush_all, which also
    affects l2x0_clean_all in my testing. For r2p0, clean or flush
    each set/way individually. For r3p0 or greater, use the debug
    register for cleaning and flushing.

    Requires exporting the cache_id, sets and ways detected in the
    init function for later use.

    Change-Id: I215055cbe5dc7e4e8184fb2befc4aff672ef0a12
    Signed-off-by: Colin Cross <email address hidden>

commit a134394008368f33920c7609cf94ef307692aefc
Author: Colin Cross <email address hidden>
Date: Mon Sep 19 16:42:44 2011 -0700

    cpuidle: governor: menu: don't use loadavg

    get_loadavg doesn't work as intended. According to the comments, it
    should be returning an average over a few seconds, but it is actually
    reading the instantaneous load. It is almost always returning 0, but
    can sometimes, depending on workload, spike very high into the hundreds
    even when the average cpu load is under 10%. Disable it for now.

    Change-Id: I63ed100af1cf9463549939b8113ed83676db5f86
    Signed-off-by: Colin Cross <email address hidden>

commit 1d3d549416a1e55087eb5b9f44c4361e7c6faae8
Author: Dima Zavin <email address hidden>
Date: Tue Aug 23 15:56:50 2011 -0700

    ARM: add option to flush console before reboot

    If the console_lock was held while the system was rebooted, the messages
    in the temporary logbuffer would not have propogated to all the console
    drivers.

    This force releases the console lock if it failed to be acquired.

    Change-Id: I193dcf7b968be17966833e50b8b8bc70d5d9fe89
    Signed-off-by: Dima Zavin <email address hidden>

commit 31fd5c2fc00755f7775191bab1d7463f6b6d5978
Author: Colin Cross <email address hidden>
Date: Tue Jul 19 12:33:45 2011 -0700

    power: Add option to log time spent in suspend

    Prints the time spent in suspend in the kernel log, and
    keeps statistics on the time spent in suspend in
    /sys/kernel/debug/suspend_time

    Change-Id: Ia6b9ebe4baa0f7f5cd211c6a4f7e813aefd3fa1d
    Signed-off-by: Colin Cross <email address hidden>
    Signed-off-by: Todd Poynor <email address hidden>

commit f68f4c8dd669509a97645b3c5ab7c53117a106e0
Author: Nishanth Menon <email address hidden>
Date: Wed Aug 17 18:31:58 2011 -0500

    panic: Add board ID to panic output

    At times, it is necessary for boards to provide some additional information
    as part of panic logs. Provide information on the board hardware as part
    of panic logs.

    It is safer to print this information at the very end in case something
    bad happens as part of the information retrieval itself.

    To use this, set global mach_panic_string to an appropriate string in the
    board file.

    Change-Id: Id12cdda87b0cd2940dd01d52db97e6162f671b4d
    Signed-off-by: Nishanth Menon <email address hidden>

commit dd1e2d7d3b95e53be5d628a66ca755d6effba55b
Author: Todd Poynor <email address hidden>
Date: Mon Jan 24 14:36:39 2011 -0800

    PM: Print pending wakeup IRQ preventing suspend to dmesg

    Prints the name of the first action for a pending wakeup IRQ.

    Change-Id: I36f90735c75fb7c7ab1084775ec0d0ab02336e6e
    Signed-off-by: Todd Poynor <email address hidden>

commit 7d96f042b81c99782c0fcb44d297abd3423c42e2
Author: mhban <email address hidden>
Date: Wed Jun 8 09:13:15 2011 +0000

    printk: do not handle non-sleepable notification in console_cpu_notify

    - CPU_DYING should not be handled in sleepable context

    Signed-off-by: Minho Ban <email address hidden>

commit 4e44768015de4eeeb4592ccc2c013375cbed5bcf
Author: Colin Cross <email address hidden>
Date: Tue Aug 16 16:36:29 2011 -0700

    ARM: vfp: Always save VFP state in vfp_pm_suspend

    vfp_pm_suspend should save the VFP state in suspend after
    any lazy context switch. If it only saves when the VFP is enabled,
    the state can get lost when, on a UP system:
      Thread 1 uses the VFP
      Context switch occurs to thread 2, VFP is disabled but the
         VFP context is not saved
      Thread 2 initiates suspend
      vfp_pm_suspend is called with the VFP disabled, and the unsaved
         VFP context of Thread 1 in the registers

    Modify vfp_pm_suspend to save the VFP context whenever
    vfp_current_hw_state is not NULL.

    Change-Id: I91f29722d256a3afc1cc04df8b227541434ccffb
    Cc: Russell King <email address hidden>
    Cc: Barry Song <email address hidden>
    Cc: Catalin Marinas <email address hidden>
    Signed-off-by: Colin Cross <email address hidden>

commit 868fba1d755e9674c9941aa3e1d78779c8fd3a8b
Author: Colin Cross <email address hidden>
Date: Thu Jan 27 15:46:20 2011 -0800

    ARM: vfp: Move exception address fixup into vfphw.S

    If the PC on the stack is updated in entry-armv.S,
    do_undefinstr can get called after the fixup. do_undefinstr
    does its own fixup, and doing both causes the PC to point to
    half way through an instruction.

    Instead, do the fixup in do_vfp, where only the vfp code
    can get called.

    Change-Id: I6d966887adc8ed58d88bfe0cb3c0ba29213be488
    Signed-off-by: Colin Cross <email address hidden>

commit 0d382dca409e83813dbdff031dd3ecfca01d1355
Author: San Mehat <email address hidden>
Date: Tue Aug 25 16:52:22 2009 -0700

    [ARM] process: Add display of memory around registers when displaying regs.

    This is extremely useful in diagnosing remote crashes, and is based heavily
    on original work by <email address hidden>.

    Signed-off-by: San Mehat <email address hidden>
    Cc: Michael Davidson <email address hidden>

    [ARM] process: Use uber-safe probe_kernel_address() to read mem when dumping.

    This prevents the dump from taking pagefaults / external aborts.

    Signed-off-by: San Mehat <email address hidden>

commit 5ded4f63f7f6c47f3b689138b8a9807fc50c34ff
Author: Benoit Goby <email address hidden>
Date: Thu Aug 13 09:40:42 2009 -0700

    drivers: power: Add watchdog timer to catch drivers which lockup during suspend.

    Rather than hard-lock the kernel, dump the suspend thread stack and
    BUG() when a driver takes too long to suspend. The timeout is set
    to 12 seconds to be longer than the usbhid 10 second timeout.

    Exclude from the watchdog the time spent waiting for children that
    are resumed asynchronously and time every device, whether or not they
    resumed synchronously.

    Change-Id: Ifd211c06b104860c2fee6eecfe0d61774aa4508a
    Original-author: San Mehat <email address hidden>
    Signed-off-by: Benoit Goby <email address hidden>

commit 5b45cdd3fc03b4f950454fa967b2c187b75db6cb
Author: Colin Cross <email address hidden>
Date: Fri Sep 3 12:41:21 2010 -0700

    mmc_block: Allow more than 8 partitions per card

    Set the GENHD_FL_EXT_DEVT flag, which will allocate minor numbers
    in major 259 for partitions past disk->minors.

    Also remove the use of disk_devt to determine devidx from md->disk.
    md->disk->first_minor is always initialized from devidx and can
    always be used to recover it.

    Signed-off-by: Colin Cross <email address hidden>

commit a7b5afec648a754968abfb51d12c0deeb33bef7b
Author: Dima Zavin <email address hidden>
Date: Thu Dec 4 12:19:57 2008 -0800

    mtd: nand: Allow NAND chip ids to be included standalone.

    Lets non-standard NAND drivers take advantage of known NAND
    chip information.

    Change-Id: I87e2fcb40b07b2ec91e102f1fa7f419a4b4af0a3
    Signed-off-by: Dima Zavin <email address hidden>

commit 7b1e78d6051d4c202574bd79148c99fa8bd26d00
Author: Robert Love <email address hidden>
Date: Tue Apr 29 16:44:10 2008 -0400

    Make /dev/mem configurable, as we don't want it.

    Signed-off-by: Brian Swetland <email address hidden>

commit f7d2d451f673ed320357d34669380391cda0d02f
Author: Arve Hjønnevåg <email address hidden>
Date: Tue May 8 15:39:13 2007 +0700

    Add build option to to set the default panic timeout.

commit ec89ae92433d743442287a8b88ff58993388387d
Author: Arve Hjønnevåg <email address hidden>
Date: Wed Dec 10 20:06:28 2008 -0800

    sched: Enable might_sleep before initializing drivers.

    This allows detection of init bugs in built-in drivers.

    Signed-off-by: Arve Hjønnevåg <email address hidden>

commit 78cd9e17ef5aad9cf751cb500daf9b6f4d7b176b
Author: Dima Zavin <email address hidden>
Date: Tue Apr 27 20:57:04 2010 -0700

    [ARM] Do not call flush_cache_user_range with mmap_sem held

    We can't be holding the mmap_sem while calling flush_cache_user_range
    because the flush can fault. If we fault on a user address, the
    page fault handler will try to take mmap_sem again. Since both places
    acquire the read lock, most of the time it succeeds. However, if another
    thread tries to acquire the write lock on the mmap_sem (e.g. mmap) in
    between the call to flush_cache_user_range and the fault, the down_read
    in do_page_fault will deadlock.

    Also, since we really can't be holding the mmap_sem while calling
    flush_cache_user_range AND vma is actually unused by the flush itself,
    get rid of vma as an argument.

    Change-Id: If55409bde41ad1060fa4fe7cbd4ac530d4d9a106
    Signed-off-by: Dima Zavin <email address hidden>

commit 4893b826a3b83f4393adb0c333f22665828a13f0
Merge: 057bdfd 704e55b
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:26 2012 +0400

    Merge branch 'tracking-unsorted' into linux-linaro

commit 704e55b9b95d2a5a9d2a2963a7e27d5330bf7e16
Author: Avik Sil <email address hidden>
Date: Wed Feb 15 17:06:50 2012 +0530

    Perf: Fallback to /bin/more if less is not found for perf pager

    Signed-off-by: Avik Sil <email address hidden>
    Signed-off-by: Andrey Konovalov <email address hidden>

commit c17e143a4ace2c5151ae9c63b0728113e132f72e
Author: Grant Likely <email address hidden>
Date: Mon Oct 24 11:09:15 2011 +0200

    dt: Linux dt usage model documentation

    v2: 2nd draft
     - Editorial cleanups from Randy Dunlap

    Signed-off-by: Grant Likely <email address hidden>

commit 077ee355fefd5ff3343209434a80e8db9b85d4a3
Author: Grant Likely <email address hidden>
Date: Mon Oct 24 11:09:11 2011 +0200

    arm/dt: Add basic device tree support for mx51 and mx53 boards

    This patch add support for the Genesi Efika MX Smarttop and Smartbook,
    the Freescale mx51 babbage board, and the Freescale mx53 loco board

    Signed-off-by: Jason Liu <email address hidden>
    Signed-off-by: Grant Likely <email address hidden>

    Conflicts:

     arch/arm/mach-imx/mach-mx51_babbage.c
     arch/arm/mach-imx/mach-mx51_efikamx.c
     arch/arm/mach-imx/mach-mx51_efikasb.c
     arch/arm/mach-imx/mach-mx53_loco.c
     arch/arm/mach-mx5/Makefile.boot

commit 89cd1705b33f806c000a7a5daace18b84bc8f9b1
Author: Andrey Konovalov <email address hidden>
Date: Fri Jan 6 23:12:42 2012 +0400

    arm/dt: Add basic device tree support for smdkv310 board

    Enable basic device tree support for Exynos4 smdkv310 board.

    Signed-off-by: Thomas Abraham <email address hidden>
    Signed-off-by: Grant Likely <email address hidden>

    Conflicts:

     arch/arm/mach-exynos/mach-smdkv310.c

commit c7ab4d3da88f319a4b615ab38a426495d0893088
Author: Grant Likely <email address hidden>
Date: Mon Oct 24 11:09:10 2011 +0200

    arm/dt: omap3 basic device tree board support

    Enable basic device tree support for the Gumstix Overo, IGEP, Panda
    and Beagle OMAP boards

    Signed-off-by: Andy Doan <email address hidden>
    Signed-off-by: Jon Medhurst <email address hidden>
    Signed-off-by: Grant Likely <email address hidden>

    Conflicts:

     arch/arm/mach-omap2/board-igep0020.c
     arch/arm/mach-omap2/board-omap3beagle.c
     arch/arm/mach-omap2/board-omap4panda.c
     arch/arm/mach-omap2/board-overo.c

commit 2a38ab0a255c81abac214fed4cea6ad8fe665bf2
Author: Shawn Guo <email address hidden>
Date: Mon Oct 24 11:09:07 2011 +0200

    arm/dt: add versatile dtb build rules

    Makes 'make dtbs' build the versatile .dtb files when versatile is enabled.

    Signed-off-by: Grant Likely <email address hidden>

commit df1d2adf45d591ae47778ecd985117b45f9f4817
Author: John Bonesio <email address hidden>
Date: Mon Oct 24 11:09:06 2011 +0200

    dt: Add id to AUXDATA structure

    This patch adds the ability to set the device id in the AUXDATA structure for
    those few device drivers that just have to have a statically defined device id.

    Signed-off-by: John Bonesio <email address hidden>
    Signed-off-by: Grant Likely <email address hidden>

commit fc6a2f3ad58f34a8eee9c2c94693633dba1fed73
Author: Andrey Konovalov <email address hidden>
Date: Mon Jan 23 21:06:26 2012 +0400

    Get rid of "ERROR: "omap_bus_sync" undefined!" when building modules

    Signed-off-by: Andrey Konovalov <email address hidden>

commit 42069610503807c0f6d0a2b234f0548708e5d4d1
Author: Vincent Guittot <email address hidden>
Date: Fri Oct 21 09:02:47 2011 +0200

    sched: Ensure cpu_power periodic update

    With a lot of small task, the softirq sched is nearly never called
    when no_hz is enable. Te load_balance is mainly called with
    the newly_idle mode which doesn't update the cpu_power.
    Add a next_update field which ensure a maximum update period when
    there is short activity

    Signed-off-by: Vincent Guittot <email address hidden>

    Conflicts:

     include/linux/sched.h

commit 82d9b44532aaf130498c2c68f65969ba63d1903d
Author: Arnd Bergmann <email address hidden>
Date: Sat Oct 8 17:07:50 2011 +0200

    ARM: kprobes: work around build errors

    I got a few build errors for kprobes playing with randconfig on the
    latest kernel. While this patch manages to avoid these errors, I'm
    pretty sure that it is not the ideal solution.

    The errors I got in arm are while building for ARMv6 with
    the arm-linux-gnueabihf-gcc-4.6 provided by Linaro, which
    results in these messages:

    /tmp/ccGpftnj.s: Assembler messages:
    /tmp/ccGpftnj.s:22066: Error: selected processor does not support ARM mode `mls r0,r1,r2,r3'
    /tmp/ccGpftnj.s:22099: Error: selected processor does not support ARM mode `mlshi r7,r8,r9,r10'
    /tmp/ccGpftnj.s:22128: Error: selected processor does not support ARM mode `mls lr,r1,r2,r13'
    /tmp/ccGpftnj.s:23781: Error: selected processor does not support ARM mode `strexd r0,r2,r3,[sp]'
    /tmp/ccGpftnj.s:23802: Error: selected processor does not support ARM mode `ldrexd r2,r3,[sp]'
    /tmp/ccGpftnj.s:23823: Error: selected processor does not support ARM mode `strexb r0,r2,[sp]'
    /tmp/ccGpftnj.s:23844: Error: selected processor does not support ARM mode `ldrexb r2,[sp]'
    /tmp/ccGpftnj.s:23865: Error: selected processor does not support ARM mode `strexh r0,r2,[sp]'
    /tmp/ccGpftnj.s:23886: Error: selected processor does not support ARM mode `ldrexh r2,[sp]'
    /tmp/ccGpftnj.s:25836: Warning: base register written back, and overlaps second transfer register

    [ NP: I didn't reproduce the T2 errors, and Tixy was doubtful about them.
      Merged Tixy's change suggestions and his ACK. ]

    Signed-off-by: Arnd Bergmann <email address hidden>
    Acked-by: Jon Medhurst <email address hidden>
    Signed-off-by: Nicolas Pitre <email address hidden>

commit 0f3d74603129a7abb9c93a8d7454cac933aa066c
Author: Ming Lei <email address hidden>
Date: Wed Aug 31 00:03:13 2011 +0800

    usb: ehci: make HC see up-to-date qh/qtd descriptor ASAP

    This patch introduces the helper of ehci_sync_mem to flush
    qtd/qh into memory immediately on some ARM, so that HC can
    see the up-to-date qtd/qh descriptor asap.

    This patch fixs one performance bug on ARM Cortex A9 dual core
    platform, which has been reported on quite a few ARM machines
    (OMAP4, Tegra 2, snowball...), see details from link of
    https://bugs.launchpad.net/bugs/709245.

    The patch has been tested ok on OMAP4 panda A1 board, and the
    performance of 'dd' over usb mass storage can be increased from
    4~5MB/sec to 14~16MB/sec after applying this patch.

    Cc: Russell King <email address hidden>
    Signed-off-by: Ming Lei <email address hidden>
    Signed-off-by: Alan Stern <email address hidden>

commit 057bdfdcbaed06f47630385a699fad33b83908f4
Merge: ae92777 ba9d77c
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:24 2012 +0400

    Merge branch 'tracking-umm-3.3-wip' into linux-linaro

commit ba9d77cd2402fb307d8f0944d4fa71e4915bb478
Author: Rob Clark <email address hidden>
Date: Mon Mar 19 16:42:49 2012 -0500

    dma-buf: document fd flags and O_CLOEXEC requirement

    Otherwise subsystems will get this wrong and end up with a second
    export ioctl with the flag and O_CLOEXEC support added.

    Signed-off-by: Rob Clark <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit 8c0b7e760f2eefb3601cc21edbf3699efbdba19c
Author: Daniel Vetter <email address hidden>
Date: Mon Mar 19 00:34:27 2012 +0100

    dma_buf: Add documentation for the new cpu access support

    v2: Fix spelling issues noticed by Rob Clark.

    Signed-off-by: Daniel Vetter <email address hidden>
    Signed-off-by: Rob Clark <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit 813cdca056f1b317df340e8d25e22be6a22e7472
Author: Daniel Vetter <email address hidden>
Date: Tue Mar 20 00:02:37 2012 +0100

    dma-buf: add support for kernel cpu access

    Big differences to other contenders in the field (like ion) is
    that this also supports highmem, so we have to split up the cpu
    access from the kernel side into a prepare and a kmap step.

    Prepare is allowed to fail and should do everything required so that
    the kmap calls can succeed (like swapin/backing storage allocation,
    flushing, ...).

    More in-depth explanations will follow in the follow-up documentation
    patch.

    Changes in v2:

    - Clear up begin_cpu_access confusion noticed by Sumit Semwal.
    - Don't automatically fallback from the _atomic variants to the
      non-atomic variants. The _atomic callbacks are not allowed to
      sleep, so we want exporters to make this decision explicit. The
      function signatures are explicit, so simpler exporters can still
      use the same function for both.
    - Make the unmap functions optional. Simpler exporters with permanent
      mappings don't need to do anything at unmap time.

    Changes in v3:

    - Adjust the WARN_ON checks for the new ->ops functions as suggested
      by Rob Clark and Sumit Semwal.
    - Rebased on top of latest dma-buf-next git.

    Changes in v4:

    - Fixup a missing - in a return -EINVAL; statement.

    Signed-Off-by: Daniel Vetter <email address hidden>
    Signed-off-by: Rob Clark <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit c84dadc00d155c145d2c6c0e5021fbc44f95517e
Author: Daniel Vetter <email address hidden>
Date: Mon Mar 19 00:34:25 2012 +0100

    dma-buf: don't hold the mutex around map/unmap calls

    The mutex protects the attachment list and hence needs to be held
    around the callbakc to the exporters (optional) attach/detach
    functions.

    Holding the mutex around the map/unmap calls doesn't protect any
    dma_buf state. Exporters need to properly protect any of their own
    state anyway (to protect against calls from their own interfaces).
    So this only makes the locking messier (and lockdep easier to anger).

    Therefore let's just drop this.

    v2: Rebased on top of latest dma-buf-next git.

    Signed-off-by: Daniel Vetter <email address hidden>
    Reviewed-by: Rob Clark <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit d37c8fe4ce25fe5158020145216f8357edea6829
Author: Sumit Semwal <email address hidden>
Date: Thu Mar 22 12:23:52 2012 +0530

    v4l:vb2: pass flag to dma_buf_fd

    dma_buf_fd() now requires a flag to be passed for the fd. For now it can
    only be FD_CLOEXEC. Adapt vb2_expbuf() to pass this flag.

    Signed-off-by: Sumit Semwal <email address hidden>

commit 0bcdcceef58806c83da0bb5287ffdf33a826708f
Author: Tomasz Stanislawski <email address hidden>
Date: Fri Jul 15 17:18:31 2011 +0200

    v4l: s5p-tv: mixer: integrate with dmabuf

    Signed-off-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 7871a33e0ee0479acc0ff4e8410573844f82ff6c
Author: Tomasz Stanislawski <email address hidden>
Date: Fri Jul 15 17:17:47 2011 +0200

    v4l: fimc: integrate capture i-face with dmabuf

    Signed-off-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 260a394b2c898528d91059cfc571afabcb2aa603
Author: Tomasz Stanislawski <email address hidden>
Date: Wed Feb 29 11:23:32 2012 +0100

    v4l: vb2-dma-contig: change map/unmap behaviour

    The DMABUF documentation says that the map_dma_buf callback should return
    scatterlist that is mapped into a caller's address space. In practice, almost
    none of existing implementations of DMABUF exporter does it. This patch breaks
    the DMABUF specification in order to allow exchange DMABUF buffers between
    other APIs like DRM.

    Signed-off-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 3286b0bbe5e8587b3fef8c0bab8fb150f072b86e
Author: Tomasz Stanislawski <email address hidden>
Date: Wed Feb 29 10:01:23 2012 +0100

    v4l: vb2-dma-contig: add support for DMABUF exporting

    This patch adds support for exporting a dma-contig buffer using
    DMABUF interface.

    Signed-off-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit a65b87e28bd888dd0f91f2079f068b3dcc158fb7
Author: Tomasz Stanislawski <email address hidden>
Date: Tue Jan 10 13:51:38 2012 +0100

    v4l: vb2: add buffer exporting via dmabuf

    This patch adds extension to videobuf2-core. It allow to export a mmap buffer
    as a file descriptor.

    Signed-off-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit a5bfa79cae6f4bd1e6bc5978a9b4651b048fe57a
Author: Tomasz Stanislawski <email address hidden>
Date: Tue Jan 10 13:51:38 2012 +0100

    v4l: add buffer exporting via dmabuf

    This patch adds extension to V4L2 api. It allow to export a mmap buffer as file
    descriptor. New ioctl VIDIOC_EXPBUF is added. It takes a buffer offset used by
    mmap and return a file descriptor on success.

    Signed-off-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit c0e317f5f2a35589d702fb79b5fef87a7b313830
Author: Sumit Semwal <email address hidden>
Date: Thu Jan 5 16:11:58 2012 +0530

    v4l: vb2: Add dma-contig allocator as dma_buf user

    This patch makes changes for adding dma-contig as a dma_buf user. It provides
    function implementations for the {attach, detach, map, unmap}_dmabuf()
    mem_ops of DMABUF memory type.

    Signed-off-by: Sumit Semwal <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>
     [author of the original patch]
    Signed-off-by: Tomasz Stanislawski <email address hidden>
     [integration with refactored dma-contig allocator]

commit 837aa53400efafe9ef24be998bdc05300673afcf
Author: Tomasz Stanislawski <email address hidden>
Date: Mon Oct 17 15:06:56 2011 +0200

    v4l: vb2-dma-contig: update and code refactoring

    This patch combines updates and fixes to dma-contig allocator.
    Moreover the allocator code was refactored.
    The most important changes are:
    - functions were reordered
    - move compression of scatterlist to separete function
    - add support for multichunk but contiguous scatterlists
    - simplified implementation of vb2-dma-contig context structure
    - let mmap method to use dma_mmap_writecombine
    - add support for scatterlist in userptr mode

    Signed-off-by: Marek Szyprowski <email address hidden>
     [mmap method]
    Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
     [scatterlist in userptr mode]
    Signed-off-by: Kamil Debski <email address hidden>
     [bugfixing]
    Signed-off-by: Tomasz Stanislawski <email address hidden>
     [core refactoring, helper functions]
    Signed-off-by: Kyungmin Park <email address hidden>

commit ec02becbdd0ecc796c7a890ce9441dbbc1021e0f
Author: Tomasz Stanislawski <email address hidden>
Date: Fri Jan 20 15:53:24 2012 +0100

    v4l: vb2: fixes for DMABUF support

    This patch contains fixes to DMABUF support in vb2-core.
    - fixes number of arguments of call_memop macro
    - fixes setup of plane length
    - fixes handling of error pointers

    Signed-off-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 1343efd112d4966ee8b254f340f2cab0fbb5244b
Author: Sumit Semwal <email address hidden>
Date: Thu Jan 5 16:11:57 2012 +0530

    v4l:vb: remove warnings about MEMORY_DMABUF

    Adding DMABUF memory type causes videobuf to complain about not using it
    in some switch cases. This patch removes these warnings.

    Signed-off-by: Sumit Semwal <email address hidden>

commit d7a549e9ee7003b64fb9b53418d15bff944c9992
Author: Sumit Semwal <email address hidden>
Date: Thu Jan 5 16:11:56 2012 +0530

    v4l:vb2: add support for shared buffer (dma_buf)

    This patch adds support for DMABUF memory type in videobuf2. It calls relevant
    APIs of dma_buf for v4l reqbuf / qbuf / dqbuf operations.

    For this version, the support is for videobuf2 as a user of the shared buffer;
    so the allocation of the buffer is done outside of V4L2. [A sample allocator of
    dma-buf shared buffer is given at [1]]

    [1]: Rob Clark's DRM:
       https://github.com/robclark/kernel-omap4/commits/drmplane-dmabuf

    Signed-off-by: Tomasz Stanislawski <email address hidden>
       [original work in the PoC for buffer sharing]
    Signed-off-by: Sumit Semwal <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit f3d29bdc08fe60bc2f1fc7622094e6a2b69e1dda
Author: Sumit Semwal <email address hidden>
Date: Thu Jan 5 16:11:55 2012 +0530

    v4l: Add DMABUF as a memory type

    Adds DMABUF memory type to v4l framework. Also adds the related file
    descriptor in v4l2_plane and v4l2_buffer.

    Signed-off-by: Tomasz Stanislawski <email address hidden>
       [original work in the PoC for buffer sharing]
    Signed-off-by: Sumit Semwal <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit 4cb45a0381809a0ecfccaa1f3d3c445ec3bb7d6a
Author: Tomasz Stanislawski <email address hidden>
Date: Fri Mar 2 17:57:00 2012 +0100

    drm: exynos: fix gem-prime support

    Fixes to error handling of GEM prime buffers for exynos-drm drive.

    Signed-off-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 768dbd6e9e0dd15d9d249a64cf5726778a175fa8
Author: Inki Dae <email address hidden>
Date: Wed Jan 18 12:05:00 2012 +0900

    drm/exynos: removed unnecessary codes and fixed exception bug.

    Signed-off-by: Inki Dae <email address hidden>

commit f8d19baa0f9c6443fc78b04638a96424f1f8b20a
Author: Inki Dae <email address hidden>
Date: Wed Jan 11 13:36:53 2012 +0900

    drm/exynos: fixed resource releasing bug with dmabug.

    Signed-off-by: Inki Dae <email address hidden>

commit f883899b155e3e39458d5817001ae1c447651970
Author: Inki Dae <email address hidden>
Date: Mon Jan 9 13:53:32 2012 +0900

    exynos/drm: added padding and fixed size type.

    Signed-off-by: Inki Dae <email address hidden>

commit 05afd25be6149fded0f7368db741d8b282fa0ac0
Author: Inki Dae <email address hidden>
Date: Mon Jan 9 13:21:53 2012 +0900

    drm/exynos: added dmabuf support for exynos.

    Signed-off-by: Inki Dae <email address hidden>

commit 4ade7df83735f14102db2079fb5d08dd9f7e84af
Author: Inki Dae <email address hidden>
Date: Mon Jan 9 13:20:34 2012 +0900

    DMABUF: added get_shared_cnt callback.

    Signed-off-by: Inki Dae <email address hidden>

commit f2e8e61e1b0a5f7010fda1ab7f2e7d506b966c74
Author: Marek Szyprowski <email address hidden>
Date: Tue Oct 18 11:27:52 2011 +0200

    media: vb2: add prepare/finish callbacks to allocators

    Signed-off-by: Marek Szyprowski <email address hidden>

commit a462ef64274026dbfd2ff4d2010dd5793dd27110
Author: Tomasz Stanislawski <email address hidden>
Date: Tue Jan 10 17:53:47 2012 +0100

    arm: dma: support for dma_get_pages

    This patch provides reliable mechanism for obtaining pages associated with a
    given dma_mapping. This is a proof-of-concept patch.

    Signed-off-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit c6057839d81581a0c8062a884501ce3ae435fc08
Author: Hiroshi DOYU <email address hidden>
Date: Mon Mar 5 13:04:38 2012 +0200

    ARM: dma-mapping: Fix mapping->bits size

    Amount of bits should be mutiplied by BITS_PER_BITE.

    Signed-off-by: Hiroshi DOYU <email address hidden>
    [added ARM prefix to the patch title]
    Signed-off-by: Marek Szyprowski <email address hidden>

commit 4dd4f31bb4abd741d6273ad7b154d1512e277d77
Author: Marek Szyprowski <email address hidden>
Date: Wed Feb 29 15:50:48 2012 +0100

    ARM: dma-mapping: add support for IOMMU mapper

    This patch add a complete implementation of DMA-mapping API for
    devices that have IOMMU support. All DMA-mapping calls are supported.

    This patch contains some of the code kindly provided by Krishna Reddy
    <email address hidden> and Andrzej Pietrasiewicz <email address hidden>

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Konrad Rzeszutek Wilk <email address hidden>

commit 448e83b3da9ef582f5fa7d9bf97dc7aae23f81e3
Author: Marek Szyprowski <email address hidden>
Date: Fri Feb 10 19:55:20 2012 +0100

    ARM: dma-mapping: use alloc, mmap, free from dma_ops

    This patch converts dma_alloc/free/mmap_{coherent,writecombine}
    functions to use generic alloc/free/mmap methods from dma_map_ops
    structure. A new DMA_ATTR_WRITE_COMBINE DMA attribute have been
    introduced to implement writecombine methods.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 14d01097c7480c189b642bdcb0cb1b1555c22102
Author: Marek Szyprowski <email address hidden>
Date: Fri Feb 10 19:55:20 2012 +0100

    ARM: dma-mapping: remove redundant code and cleanup

    This patch just performs a global cleanup in DMA mapping implementation
    for ARM architecture. Some of the tiny helper functions have been moved
    to the caller code, some have been merged together.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 6e1f7659e47fa6aa7088d3d5e521a50a1682b17c
Author: Marek Szyprowski <email address hidden>
Date: Fri Feb 10 19:55:20 2012 +0100

    ARM: dma-mapping: move all dma bounce code to separate dma ops structure

    This patch removes dma bounce hooks from the common dma mapping
    implementation on ARM architecture and creates a separate set of
    dma_map_ops for dma bounce devices.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 83f28bb24e1a9e1d3adc1f8cb493914db260d3f5
Author: Marek Szyprowski <email address hidden>
Date: Fri Feb 10 19:55:20 2012 +0100

    ARM: dma-mapping: implement dma sg methods on top of any generic dma ops

    This patch converts all dma_sg methods to be generic (independent of the
    current DMA mapping implementation for ARM architecture). All dma sg
    operations are now implemented on top of respective
    dma_map_page/dma_sync_single_for* operations from dma_map_ops structure.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 6cd73971b499fe563ad55068a8ff8117075de0dc
Author: Marek Szyprowski <email address hidden>
Date: Fri Feb 10 19:55:20 2012 +0100

    ARM: dma-mapping: use asm-generic/dma-mapping-common.h

    This patch modifies dma-mapping implementation on ARM architecture to
    use common dma_map_ops structure and asm-generic/dma-mapping-common.h
    helpers.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 28134fc1ed9a76fd313a2c3585e7197a1a686e40
Author: Marek Szyprowski <email address hidden>
Date: Fri Feb 10 19:55:20 2012 +0100

    ARM: dma-mapping: remove offset parameter to prepare for generic dma_ops

    This patch removes the need for offset parameter in dma bounce
    functions. This is required to let dma-mapping framework on ARM
    architecture use common, generic dma-mapping helpers.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 8e91ccd4ef8ecb65af2f487b90d6e96cad2419e8
Author: Marek Szyprowski <email address hidden>
Date: Tue Feb 28 10:19:14 2012 +0100

    ARM: dma-mapping: use pr_* instread of printk

    Replace all calls to printk with pr_* functions family.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 038982c4368e103ab35e8bc3cf27f66a96ad1f24
Author: Marek Szyprowski <email address hidden>
Date: Wed Feb 29 14:45:28 2012 +0100

    ARM: dma-mapping: introduce ARM_DMA_ERROR constant

    Replace all uses of ~0 with ARM_DMA_ERROR, what should make the code
    easier to read.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>

commit 91dfa01835db617857c5a53484f30807a4ca9a55
Author: Russell King <email address hidden>
Date: Thu Jan 12 23:08:07 2012 +0000

    ARM: add dma coherent region reporting via procfs

    Add a new seqfile for reporting coherent DMA allocations. This contains
    the address range, size and the function which was used to allocate
    each region, allowing these allocations to be viewed in much the same
    way as /proc/vmallocinfo.

    The DMA coherent region has limited space, so this allows allocation
    failures to be viewed, as well as finding out how much space is being
    used.

    Make sure this file is only readable by root - same as vmallocinfo - to
    prevent information leakage.

    Acked-by: Nicolas Pitre <email address hidden>
    Signed-off-by: Russell King <email address hidden>

commit 04ae409fc999f894d0be79dc6a7845f89201b614
Merge: d4e888d e749a9f
Author: Sumit Semwal <email address hidden>
Date: Tue Mar 20 14:49:24 2012 +0530

    Merge branch 'dma-mapping-next' of git://git.infradead.org/users/kmpark/linux-2.6-samsung into umm-3.3rc7-wip

commit e749a9f707f1102735e02338fa564be86be3bb69
Author: Marek Szyprowski <email address hidden>
Date: Fri Dec 23 10:37:13 2011 +0100

    common: DMA-mapping: add NON-CONSISTENT attribute

    DMA_ATTR_NON_CONSISTENT lets the platform to choose to return either
    consistent or non-consistent memory as it sees fit. By using this API,
    you are guaranteeing to the platform that you have all the correct and
    necessary sync points for this memory in the driver should it choose to
    return non-consistent memory.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit 13905d68bbe8a3fba829dfb41312ff7d2afd70cc
Author: Marek Szyprowski <email address hidden>
Date: Fri Dec 23 09:30:47 2011 +0100

    common: DMA-mapping: add WRITE_COMBINE attribute

    DMA_ATTR_WRITE_COMBINE specifies that writes to the mapping may be
    buffered to improve performance. It will be used by the replacement for
    ARM/ARV32 specific dma_alloc_writecombine() function.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit 638ad497eece84aa4ec88d570c106afce171ae97
Author: Marek Szyprowski <email address hidden>
Date: Wed Dec 21 16:55:33 2011 +0100

    common: dma-mapping: introduce mmap method

    Introduce new generic mmap method with attributes argument.

    This method lets drivers to create a userspace mapping for a DMA buffer
    in generic, architecture independent way.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit 3142381f981e4b7de64abb755775d50647078cad
Author: Marek Szyprowski <email address hidden>
Date: Wed Dec 21 16:55:57 2011 +0100

    common: dma-mapping: remove old alloc_coherent and free_coherent methods

    Remove old, unused alloc_coherent and free_coherent methods from
    dma_map_ops structure.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit 3f2f7b32827cd84e751d816708b540a9101ab701
Author: Marek Szyprowski <email address hidden>
Date: Mon Feb 13 10:31:31 2012 +0100

    Hexagon: adapt for dma_map_ops changes

    Adapt core Hexagon architecture code for dma_map_ops changes: replace
    alloc/free_coherent with generic alloc/free methods.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit 8c91ba6a647954bdd5541a9eeb0cff096f841be6
Author: Andrzej Pietrasiewicz <email address hidden>
Date: Fri Dec 16 13:05:20 2011 +0100

    Unicore32: adapt for dma_map_ops changes

    Adapt core Unicore32 architecture code for dma_map_ops changes: replace
    alloc/free_coherent with generic alloc/free methods.

    Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit cdd549989b6e850fdcba984787be10353b88570a
Author: Andrzej Pietrasiewicz <email address hidden>
Date: Thu Dec 15 11:47:51 2011 +0100

    Microblaze: adapt for dma_map_ops changes

    Adapt core Microblaze architecture code for dma_map_ops changes: replace
    alloc/free_coherent with generic alloc/free methods.

    Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit 2d9d57833acc03adf469eeeea8c9379c1667f191
Author: Andrzej Pietrasiewicz <email address hidden>
Date: Wed Dec 14 12:11:13 2011 +0100

    SH: adapt for dma_map_ops changes

    Adapt core SH architecture code for dma_map_ops changes: replace
    alloc/free_coherent with generic alloc/free methods.

    Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit 5cd3f01ad97767ffaa5c5834d8c86904439552b3
Author: Andrzej Pietrasiewicz <email address hidden>
Date: Thu Dec 22 13:58:21 2011 +0100

    Alpha: adapt for dma_map_ops changes

    Adapt core Alpha architecture code for dma_map_ops changes: replace
    alloc/free_coherent with generic alloc/free methods.

    Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit baa1954924802ffeec30908cfff57582b6e47a33
Author: Andrzej Pietrasiewicz <email address hidden>
Date: Thu Dec 8 12:59:35 2011 +0100

    SPARC: adapt for dma_map_ops changes

    Adapt core SPARC architecture code for dma_map_ops changes: replace
    alloc/free_coherent with generic alloc/free methods.

    Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit a08c9b3b5894d77f969173d8d8cd7c384827192d
Author: Andrzej Pietrasiewicz <email address hidden>
Date: Wed Dec 7 16:51:38 2011 +0100

    IA64: adapt for dma_map_ops changes

    Adapt core IA64 architecture code for dma_map_ops changes: replace
    alloc/free_coherent with generic alloc/free methods.

    Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit 75ab645afcf3cf5537ca88a2c1aff831909822fc
Author: Andrzej Pietrasiewicz <email address hidden>
Date: Tue Dec 6 14:14:46 2011 +0100

    PowerPC: adapt for dma_map_ops changes

    Adapt core PowerPC architecture code for dma_map_ops changes: replace
    alloc/free_coherent with generic alloc/free methods.

    Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
    Signed-off-by: Marek Szyprowski <email address hidden>
    [added missing changes to arch/powerpc/kernel/vio.c]
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: David Gibson <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit 5a0ec54b355466bb54390e7c033528a0b528d9bf
Author: Andrzej Pietrasiewicz <email address hidden>
Date: Tue Dec 6 11:16:46 2011 +0100

    MIPS: adapt for dma_map_ops changes

    Adapt core MIPS architecture code for dma_map_ops changes: replace
    alloc/free_coherent with generic alloc/free methods.

    Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
    [added missing changes to arch/mips/cavium-octeon/dma-octeon.c,
     fixed attrs argument in dma-mapping.h]
    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit f0553cf4f64f0c1e6c680014b05c980d800ed046
Author: Andrzej Pietrasiewicz <email address hidden>
Date: Thu Dec 1 15:06:04 2011 +0100

    X86: adapt for dma_map_ops changes

    Adapt core X86 architecture code for dma_map_ops changes: replace
    alloc/free_coherent with generic alloc/free methods.

    Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit 43581f8a23de713cf7fe42e400758108715cb1ed
Author: Marek Szyprowski <email address hidden>
Date: Wed Dec 21 16:51:09 2011 +0100

    common: dma-mapping: introduce alloc_attrs and free_attrs methods

    Introduce new generic alloc and free methods with attributes argument.

    Existing alloc_coherent and free_coherent can be implemented on top of the
    new calls with NULL attributes argument. Later also dma_alloc_non_coherent
    can be implemented using DMA_ATTR_NONCOHERENT attribute as well as
    dma_alloc_writecombine with separate DMA_ATTR_WRITECOMBINE attribute.

    This way the drivers will get more generic, platform independent way of
    allocating dma buffers with specific parameters.

    Signed-off-by: Marek Szyprowski <email address hidden>
    Signed-off-by: Kyungmin Park <email address hidden>
    Reviewed-by: David Gibson <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>

commit d4e888d27e89fbfc357128dffd15dbf43fd2e0d0
Merge: ff626cc 40a384c
Author: Sumit Semwal <email address hidden>
Date: Sun Mar 18 15:10:11 2012 +0530

    Merge branch 'drm-dmabuf2' of git://people.freedesktop.org/~airlied/linux into umm-3.3rc7

commit 40a384ccbfe1001a3b858aa940d16c0c650f61e4
Author: Dave Airlie <email address hidden>
Date: Wed Dec 21 11:30:31 2011 +0000

    nouveau: add prime support.

    this involves changing the nouveau_bo_new api.

commit 3645c6c8ae3cac90c6163d71c3945a8de57d3344
Author: Dave Airlie <email address hidden>
Date: Wed Dec 21 11:26:26 2011 +0000

    ttm: introduce slave objects from an sg_table

    This creates a new TTM object type, a slave object, that is created
    from a passed in sg_table. The code has to make sure we don't ever
    free the pages associated with the object, and the driver have to
    be changed to call the correct populate paths.

    Signed-off-by: Dave Airlie <email address hidden>

commit c325d7b87be91311dd19efa2933e36d1391009ca
Author: Dave Airlie <email address hidden>
Date: Wed Dec 21 11:23:44 2011 +0000

    udl: add prime fd->handle support.

    udl can only be used as an output offload so doesn't need to support
    handle->fd direction.

    Signed-off-by: Dave Airlie <email address hidden>

commit 93f9460dc89fca53557da9d78bfe60375a56254a
Author: Dave Airlie <email address hidden>
Date: Wed Dec 21 11:20:54 2011 +0000

    i915: add dmabuf/prime buffer sharing support.

    This adds handle->fd and fd->handle support to i915, this is to allow
    for offloading of rendering in one direction and outputs in the other.

    Signed-off-by: Dave Airlie <email address hidden>

commit d19a667eb951025ed7cf7347a15c6fa4d1797ae2
Author: Dave Airlie <email address hidden>
Date: Fri Nov 25 15:21:02 2011 +0000

    drm: base prime/dma-buf support

    This adds the basic drm dma-buf interface layer, called PRIME,

    The main APIs exposed to userspace allow translating a 32-bit object handle
    to a file descriptor, and a file descriptor to a 32-bit object handle.

    The flags value is currently limited to O_CLOEXEC.

    TODO: rework driver internals interface (Rob Clark) for non-GEM.

    Acknowledgements:
    Ben Widawsky: added the hash table support
    Daniel Vetter: lots of review
    Rob Clark: cleaned up lots of the internals and did lifetime review.

    Signed-off-by: Dave Airlie <email address hidden>

commit 44f11fbc3fafe8057e07d054611d378313a1cee8
Author: Dave Airlie <email address hidden>
Date: Fri Mar 16 10:31:25 2012 +0000

    dma-buf: pass flags into dma_buf_fd.

    We need to pass the flags into dma_buf_fd at this point,
    so the flags end up doing the right thing for O_CLOEXEC.

    Signed-off-by: Dave Airlie <email address hidden>

commit 03182e93bccf8a5532951991cc12f275ccf1a4b0
Author: Sumit Semwal <email address hidden>
Date: Fri Jan 27 15:09:27 2012 +0530

    dma-buf: add dma_data_direction to unmap dma_buf_op

    Some exporters may use DMA map/unmap APIs in dma-buf ops, which require
    enum dma_data_direction for both map and unmap operations.

    Thus, the unmap dma_buf_op also needs to have enum dma_data_direction as
    a parameter.

    Reported-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>

commit 753685a0c640f963d20e250f58454ccd8b5fe5a3
Author: Laurent Pinchart <email address hidden>
Date: Thu Jan 26 12:27:25 2012 +0100

    dma-buf: Move code out of mutex-protected section in dma_buf_attach()

    Some fields can be set without mutex protection. Initialize them before
    locking the mutex.

    Signed-off-by: Laurent Pinchart <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit 1ab43d0ff29dc519f1ef12785e6aad9265c09703
Author: Laurent Pinchart <email address hidden>
Date: Thu Jan 26 12:27:24 2012 +0100

    dma-buf: Return error instead of using a goto statement when possible

    Remove an error label in dma_buf_attach() that just returns an error
    code.

    Signed-off-by: Laurent Pinchart <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit bcbfdae6fccc0ffea99e7f8b4ccc0f6a008f5add
Author: Laurent Pinchart <email address hidden>
Date: Thu Jan 26 12:27:23 2012 +0100

    dma-buf: Remove unneeded sanity checks

    ops, ops->map_dma_buf and ops->unmap_dma_buf are guaranteed to be
    non-NULL by a check in dma_buf_export(). Remove NULL checks on those
    variables in the other API functions.

    Signed-off-by: Laurent Pinchart <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit 447b27489eb2060f25fb3b54ac739b5897a9e3db
Author: Laurent Pinchart <email address hidden>
Date: Thu Jan 26 12:27:22 2012 +0100

    dma-buf: Constify ops argument to dma_buf_export()

    This allows drivers to make the dma buf operations structure constant.

    Signed-off-by: Laurent Pinchart <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit 380c02d3aec60399c4354fca6527913c1c369766
Author: Dave Airlie <email address hidden>
Date: Fri Nov 25 10:10:45 2011 +0000

    nouveau: add optimus detection

    Signed-off-by: Dave Airlie <email address hidden>

commit 48e7d3eacedab24b513f4953ae2111240605bee6
Author: Dave Airlie <email address hidden>
Date: Mon Nov 14 10:37:06 2011 +0000

    drm/usb: add a busid implementation

    This adds an implementation for the busid callback so userspace can distinguish
    usb devices better.

    Signed-off-by: Dave Airlie <email address hidden>

commit 99f508035cf93d6a0e450f5fd456307cd7a119bf
Author: Dave Airlie <email address hidden>
Date: Fri Aug 12 12:52:26 2011 +0100

    drm/kms: add support for memory bandwidth considerations (v2)

    Some GPUs (mostly in the lower server end of the market) have memory
    bandwidth limitations that hit in the real world, however memory
    bw calcs require bit depth to be worked out and at the moment, the
    KMS interface doesn't know about bit depth until we set the mode.

    This "overloads" the connector_type_id in the get connector ioctl
    to pass a depth value to the kernel code. A new libdrm API is added
    to utilise this. libdrm has always set this to 0 up until now.

    This depth value is what the kms user proposed to use, the actual
    API in libdrm is drmModeGetConnectorWithDepth and will follow
    along.

    This patch also adds RN50 support to the radeon kms to check
    the memory bandwidth calcs and refuse the higher modes on these
    chips.

    v2: rebased onto latest kernel - fixup radeon usage.

    Signed-off-by: Dave Airlie <email address hidden>

commit 5320918b9a87865223fd6b228e530bf30bc64d9d
Author: Dave Airlie <email address hidden>
Date: Wed Dec 15 07:14:24 2010 +1000

    drm/udl: initial UDL driver (v4)

    This is an initial drm/kms driver for the displaylink devices.

    Supports fb_defio,
    supports KMS dumb interface
    supports 24bpp via conversion to 16bpp, hw can do this better.
    supports hot unplug using new drm core features.

    On an unplug, it disables connector polling, unplugs connectors
    from sysfs, unplugs fbdev layer (using Kay's API), drops all the
    USB device URBs, and call the drm core to unplug the device.

    This driver is based in large parts on udlfb.c so I've licensed
    it under GPLv2.

    Signed-off-by: Dave Airlie <email address hidden>

commit 2c07a21d6fb0be47fda696a618b726ea258ed1dd
Author: Dave Airlie <email address hidden>
Date: Mon Feb 20 14:18:07 2012 +0000

    drm: add core support for unplugging a device (v2)

    Two parts to this, one is simple unplug from sysfs for the device node.

    The second adds an unplugged state, if we have device opens, we
    just set the unplugged state and return, if we have no device
    opens we drop the drm device.

    If after a lastclose we discover we are unplugged we then
    drop the drm device.

    v2: use an atomic for unplugged and wrap it for users,
    add checks on open + mmap + ioctl entry points.

    Signed-off-by: Dave Airlie <email address hidden>

commit cbc7e22151d99ed1dd7649d268ad3d81b9e6255a
Author: Dave Airlie <email address hidden>
Date: Mon Feb 20 14:16:40 2012 +0000

    drm/modeset: add helper to unplug all connectors from sysfs

    In order to get correct ordering at hot-unplug for userspace,
    we need to tear down all the sysfs bits at the correct time.

    This adds a helper to allow drivers to remove the sysfs nodes
    for all connectors.

    Signed-off-by: Dave Airlie <email address hidden>

commit 1828fe6c5f593b835197edd30a28d80635238ab3
Author: Dave Airlie <email address hidden>
Date: Mon Feb 20 14:15:02 2012 +0000

    drm/sysfs: protect sysfs removal code against being run twice.

    a step towards correct hot unplug for USB devices, we need to
    remove the userspace facing bits at the unplug time for correct
    udev operation.

    Signed-off-by: Dave Airlie <email address hidden>

commit ce880cb860f36694d2cdebfac9e6ae18176fe4c4
Author: Kay Sievers <email address hidden>
Date: Sat Jan 28 19:57:46 2012 +0000

    udlfb: remove sysfs framebuffer device with USB .disconnect()

    The USB graphics card driver delays the unregistering of the framebuffer
    device to a workqueue, which breaks the userspace visible remove uevent
    sequence. Recent userspace tools started to support USB graphics card
    hotplug out-of-the-box and rely on proper events sent by the kernel.

    The framebuffer device is a direct child of the USB interface which is
    removed immediately after the USB .disconnect() callback. But the fb device
    in /sys stays around until its final cleanup, at a time where all the parent
    devices have been removed already.

    To work around that, we remove the sysfs fb device directly in the USB
    .disconnect() callback and leave only the cleanup of the internal fb
    data to the delayed work.

    Before:
     add /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2 (usb)
     add /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0 (usb)
     add /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/graphics/fb0 (graphics)
     remove /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0 (usb)
     remove /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2 (usb)
     remove /2-1.2:1.0/graphics/fb0 (graphics)

    After:
     add /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2 (usb)
     add /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0 (usb)
     add /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/graphics/fb1 (graphics)
     remove /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/graphics/fb1 (graphics)
     remove /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0 (usb)
     remove /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2 (usb)

    Cc: <email address hidden>
    Tested-by: Bernie Thompson <email address hidden>
    Acked-by: Bernie Thompson <email address hidden>
    Signed-off-by: Kay Sievers <email address hidden>
    Signed-off-by: Florian Tobias Schandinat <email address hidden>

commit 8229c885fe361e521ac64de36b16011e54a30de0
Merge: c3c50e8 fde7d90
Author: Dave Airlie <email address hidden>
Date: Thu Mar 15 10:24:32 2012 +0000

    drm: Merge tag 'v3.3-rc7' into drm-core-next

    Merge the fixes so far into core-next, needed to test
    intel driver.

    Conflicts:
     drivers/gpu/drm/i915/intel_ringbuffer.c

commit c3c50e8b651887bcefcc13beb3739c00b2379b5c
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:51 2012 +0200

    drm: Add drm_mode_copy()

    Add a helper function to copy a display mode. Use it in
    drm_mode_duplicate() and nouveau mode_fixup hooks.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit d63f5e6bf6f2a1573ea39c9937cdf5ab0b3a4b77
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:49 2012 +0200

    drm: Use a flexible array member for blob property data

    The blob property data is always allocated immediately after the object
    header. No need for the extra indirection when accessing it, just use
    a flexible array member.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 6bfc56aa89f963becbafbaeb105b6a84e0eb0db7
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:48 2012 +0200

    drm: Handle drm_object_get() failures

    Check drm_mode_object_get() return value everywhere.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 93bbf6dbdadbb47ef5a19aecf45669c01ee8830d
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:47 2012 +0200

    drm: Make drm_crtc_convert_{umode, to_umode} static and constify their params

    drm_crtc_convert_umode() and drm_crtc_convert_to_umode() are never
    used outside drm_crtc.c, so make them static. Also make the input
    mode structure const for both functions.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit ac235dafb60d3ba4fa4e7341503b16d6e0645ee7
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:46 2012 +0200

    drm: Fix drm_mode_attachmode_crtc()

    Change drm_mode_attachmode_crtc() to take an "all or nothing" approach.
    If an error is returned, there are no side effects visible.

    Also change the function to always duplicate the mode passed in.

    Also change the function to not give up when it finds the first
    connector without and encoder.

    A simpler approach would be to just remove the function completely as
    it's unused currently.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 5f61bb421f01023986902200b6486978c07176f7
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:45 2012 +0200

    drm: Check CRTC viewport against framebuffer size

    Make sure the requested CRTC viewport fits inside the
    framebuffer.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 90367bf6e98352520d15634ac4e79f0d4598cff1
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:44 2012 +0200

    drm: Check user mode against overflows

    The internal mode representation drm_display_mode uses signed data
    types. When converting the user mode to internal representation,
    check that the unsigned values don't overflow the signed datatypes.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit ee34ab5b01e6e7cbd9438aeb6ccbd08d3727988e
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:43 2012 +0200

    drm: Fix memory leak in drm_mode_setcrtc()

    The mode passed to the .set_config() hook was never freed. The drivers
    will make a copy of the mode, so simply free it when done.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 1dd6c8bda9aef72a819707cfc293917295af15d3
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:42 2012 +0200

    drm: Make drm_mode_attachmode() void

    drm_mode_attachmode() always returns 0. Change the return type to void.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 1d97e9154821d52a5ebc226176d4839c7b86b116
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:41 2012 +0200

    drm: Check crtc x and y coordinates

    The crtc x/y panning coordinates are stored as signed integers
    internally. The user provides them as unsigned, so we should check
    that the user provided values actually fit in the internal datatypes.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit e36fae3889db38f6cacabea3998b9a09320f2ad2
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:40 2012 +0200

    drm: Warn if mode to umode conversion overflows the destination types

    When converting from a drm_display_mode to drm_mode_modeinfo, print a
    warning if the the timings values don't fit into the __u16 datatype.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 2fcfc75b112e897609faed30bcf80565fb005087
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:39 2012 +0200

    drm: Change drm_display_mode::type to unsigned

    The drm_display_mode type is a bitmask so it should be unsigned.

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 6653cc8d3b8d1c685fbf01cc8a536957045f4609
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:38 2012 +0200

    drm: Reject mode set with current fb if no current fb is bound

    When doing a mode set with the special fb id -1, reject the mode set if
    no fb is currently bound to the crtc.

    Also remove the pointless list traversal to find the current crtc based
    on the current crtc :)

    Signed-off-by: Ville Syrjälä <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 09016a11fc738e82ca1303e2332473b517bbd660
Author: Alan Cox <email address hidden>
Date: Wed Mar 14 12:00:29 2012 +0000

    gma500: suspend/resume support for Cedartrail

    Update our tree to match the current driver head.

    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 50d44a523759c39af1119285a5396ca387288af0
Author: Alan Cox <email address hidden>
Date: Wed Mar 14 12:00:09 2012 +0000

    gma500: Fix resume paths

    We fall apart somewhat on resume because we don't invoke all the resume
    methods as we should. Fix the silly error in the logic.

    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit f1377998eede7a8caa124fcf6a589b02c9e2bac7
Author: Dave Airlie <email address hidden>
Date: Mon Feb 20 14:39:11 2012 +0000

    drm/nouveau: add userspace fallback hints.

    This lets the modesetting driver work better.

    Signed-off-by: Dave Airlie <email address hidden>

commit abd32008ff0b21eabf0074df47189047adbca37a
Merge: 8346532 2f5394c
Author: Dave Airlie <email address hidden>
Date: Tue Mar 13 10:16:06 2012 +0000

    Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-core-next

    * 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6: (57 commits)
      drm/nouveau: map first page of mmio early and determine chipset earlier
      drm/nvd0/disp: disconnect encoders before reprogramming them
      drm/nvd0/disp: move syncs/magic setup to or mode_set
      drm/nouveau/dp: account for channel coding overhead in link training
      drm/nvd0/disp: fix dcb sor link matching in supervisor handler
      drm/nvd0/disp: initial implementation of displayport
      drm/nouveau/dp: make dp dpms function common, call from sor code instead
      drm/nv50/hwsq: some nv92 fixes
      drm/nouveau/dp: move all nv50/sor-specific code out of nouveau_dp.c
      drm/nouveau/dp: make functions for executing various bios tables
      drm/nouveau/pm: fix oops if chipset has no pm support at all
      drm/nouveau/bios: rework vbios shadowing
      drm/nouveau/bios: attempt acpi rom fetch before pcirom
      drm/nvd0/disp: attempt to handle more than 2 crtcs if possible
      drm/nvc0/vram: get part count from PUNITS
      drm/nv40/pm: fix fanspeed regression
      drm/nouveau/pm: several fixes for nvc0 memory timings
      drm/nvc0/pm: restrict pll mode to clocks that can actually use it
      drm/nouveau/dp: fix bad comparison in dp_link_train_commit()
      drm/nouveau/mxm: call mxmi to determine revision before calling mxms
      ...

commit 2f5394c3ed573de2ab18cdac503b8045cd16ac5e
Author: Ben Skeggs <email address hidden>
Date: Mon Mar 12 15:55:43 2012 +1000

    drm/nouveau: map first page of mmio early and determine chipset earlier

    Signed-off-by: Ben Skeggs <email address hidden>

commit 4cbb0f8d2b06c72aae3552ff1a0a57814c6ce7d2
Author: Ben Skeggs <email address hidden>
Date: Mon Mar 12 15:23:44 2012 +1000

    drm/nvd0/disp: disconnect encoders before reprogramming them

    Signed-off-by: Ben Skeggs <email address hidden>

commit 3488c57b983546e6bf4c9e0bfd0f7f2a1292267a
Author: Ben Skeggs <email address hidden>
Date: Mon Mar 12 11:42:20 2012 +1000

    drm/nvd0/disp: move syncs/magic setup to or mode_set

    NVIDIA appear to do these around the same place they do the MODE_CTRL
    methods, and for DP at least we need to bash some extra bits in "syncs"
    to keep EVO happy.

    It's a bit of a guess as to the 6/8bpc, but i have no better idea yet.

    Signed-off-by: Ben Skeggs <email address hidden>

commit 6860dc8251eacd1672fa660b85bb59a45350aa70
Author: Ben Skeggs <email address hidden>
Date: Mon Mar 12 11:16:55 2012 +1000

    drm/nouveau/dp: account for channel coding overhead in link training

    Signed-off-by: Ben Skeggs <email address hidden>

commit c674844bab6df084ef1c93d65925af6e1bfb06a0
Author: Ben Skeggs <email address hidden>
Date: Sun Mar 11 16:13:49 2012 +1000

    drm/nvd0/disp: fix dcb sor link matching in supervisor handler

    Signed-off-by: Ben Skeggs <email address hidden>

commit 6e83fda2c055f17780b2feef404f06803a49a261
Author: Ben Skeggs <email address hidden>
Date: Sun Mar 11 01:28:48 2012 +1000

    drm/nvd0/disp: initial implementation of displayport

    Signed-off-by: Ben Skeggs <email address hidden>

commit f14d9a4dda65439d74326694db727c6d2a5df0ce
Author: Ben Skeggs <email address hidden>
Date: Sun Mar 11 01:20:54 2012 +1000

    drm/nouveau/dp: make dp dpms function common, call from sor code instead

    GF119 will use this too.

    Signed-off-by: Ben Skeggs <email address hidden>

commit e436d1bb0a3e5ff27b190d0bf9173f4f6ad21d3f
Author: Martin Peres <email address hidden>
Date: Fri Mar 9 00:15:01 2012 +0100

    drm/nv50/hwsq: some nv92 fixes

    The shift from hwsq_data = 0x1400 to 0x080000 actually happened in nv94, not nv92
    This fixes some reclocking issues on my newly acquired nv92

    Signed-off-by: Martin Peres <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit 8663bc7cde00c8e832d985354f8a6d57a52f7d92
Author: Ben Skeggs <email address hidden>
Date: Fri Mar 9 16:22:56 2012 +1000

    drm/nouveau/dp: move all nv50/sor-specific code out of nouveau_dp.c

    Off-chip encoders (which we don't support yet anyway), and newer chipsets
    (such as NVD9...), will need their own code for this.

    Signed-off-by: Ben Skeggs <email address hidden>

commit 8c1dcb6573ae71ffae392edf5f458543d310607e
Author: Ben Skeggs <email address hidden>
Date: Fri Mar 9 15:22:19 2012 +1000

    drm/nouveau/dp: make functions for executing various bios tables

    More code to do the same thing, but will make it easier to handle various
    changes that could possibly happen the the VBIOS tables.

    Signed-off-by: Ben Skeggs <email address hidden>

commit c11dd0da5277596d0ccdccb745b273d69a94f2d7
Author: Ben Skeggs <email address hidden>
Date: Wed Mar 7 14:18:49 2012 +1000

    drm/nouveau/pm: fix oops if chipset has no pm support at all

    Signed-off-by: Ben Skeggs <email address hidden>

commit 4489b9835a0867617a9ec29cc978a9c2c9eca363
Author: Ben Skeggs <email address hidden>
Date: Wed Mar 7 13:22:50 2012 +1000

    drm/nouveau/bios: rework vbios shadowing

    Refactored to allow shadowing of VBIOS images longer than 64KiB, which
    allows us to pass the VBIOS checksum test on certain boards.

    There's also a workaround for reading the PROM VBIOS on some chipsets.

    Signed-off-by: Ben Skeggs <email address hidden>

commit 05a7c15d48ff53b054bc36fc8a2be8bc9b60d9e7
Author: Ben Skeggs <email address hidden>
Date: Sun Mar 4 17:05:54 2012 +1000

    drm/nouveau/bios: attempt acpi rom fetch before pcirom

    There's cards out there with completely messed up PCIROM images that have
    a perfectly valid signature.. Sigh!

    Signed-off-by: Ben Skeggs <email address hidden>

commit 7c5f6a87b2337cc81fb6d16e848501e2dbe00a3d
Author: Ben Skeggs <email address hidden>
Date: Sun Mar 4 16:25:59 2012 +1000

    drm/nvd0/disp: attempt to handle more than 2 crtcs if possible

    Theoretically handles CRTC2/CRTC3, should any GF119 out there actually
    have them enabled. The room is there for the regs etc, so why not :)

    Signed-off-by: Ben Skeggs <email address hidden>

commit 29181d2f7bec0f51273ceab8c565410d52ef1eb0
Author: Ben Skeggs <email address hidden>
Date: Sun Mar 4 15:44:59 2012 +1000

    drm/nvc0/vram: get part count from PUNITS

    Signed-off-by: Ben Skeggs <email address hidden>

commit 8b83d67c2e2b7e704e6923d00209b6e67f7bdb35
Author: Ben Skeggs <email address hidden>
Date: Thu Feb 9 15:25:25 2012 +1000

    drm/nv40/pm: fix fanspeed regression

    Signed-off-by: Ben Skeggs <email address hidden>

commit e6084257d07fffc394ac6e4cf4496c946fd904ed
Author: Roy Spliet <email address hidden>
Date: Tue Feb 7 00:29:06 2012 +0100

    drm/nouveau/pm: several fixes for nvc0 memory timings

    This patch fixes two small issues in timing generation as spotted on
    several NVCx cards.

    In addition, the header of the file is updated to also contain (some of)
    the current developers of this code.

    Signed-off-by: Roy Spliet <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit 1ae73f2f16f1a905ada71e2a190d5760b4f17ed8
Author: Ben Skeggs <email address hidden>
Date: Tue Feb 7 09:59:54 2012 +1000

    drm/nvc0/pm: restrict pll mode to clocks that can actually use it

    Fixes reclocking failure on some chips where we attempted to set PDAEMON
    to PLL mode.

    Signed-off-by: Ben Skeggs <email address hidden>

commit 44ab8cc56c45ca781371a4a77f35da19cf5db028
Author: Xi Wang <email address hidden>
Date: Fri Feb 3 11:13:55 2012 -0500

    drm/nouveau/dp: fix bad comparison in dp_link_train_commit()

    The comparison (lpre == DP_TRAIN_PRE_EMPHASIS_9_5) is always false:
    lpre is initialized as (lane & 0x0c) >> 2, which is at most 3, while
    DP_TRAIN_PRE_EMPHASIS_9_5 is defined as (3 << 3).

    Signed-off-by: Xi Wang <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit 84ddfda6d4765e410981edeef81c9b5a5a1ce87b
Author: Ben Skeggs <email address hidden>
Date: Thu Feb 2 09:33:05 2012 +1000

    drm/nouveau/mxm: call mxmi to determine revision before calling mxms

    There's a HP laptop out there where the MXM version in the VBIOS doesn't
    match what the ACPI implementation is expecting. These tables will accept
    0x00 to MXMS to return latest version, but *only* if MXMI has been called
    first..

    Signed-off-by: Ben Skeggs <email address hidden>

commit 7d3a766b6aa4e293e72bfd6add477f05ac7fdf5a
Author: Ben Skeggs <email address hidden>
Date: Wed Feb 1 15:17:07 2012 +1000

    drm/nouveau/pm: init only after display subsystem has been created

    This patch fixes an oops cause by pm_trigger accessing the (uninitialised)
    crtc list.

    Reported-by: Roy Spliet <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit 950c44b6ddc0dfb44e59fdb031e09567a1b391c0
Author: Ben Skeggs <email address hidden>
Date: Wed Feb 1 09:05:42 2012 +1000

    drm/nvc0/fb: detect presense of second rank

    Signed-off-by: Ben Skeggs <email address hidden>

commit df26bc9c320602539b1b5b3d85786e4c8de7bf43
Author: Christoph Bumiller <email address hidden>
Date: Sat Jan 21 23:13:26 2012 +0100

    drm/nv50/display: expose color vibrance control

    Signed-off-by: Christoph Bumiller <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit 990449c77cafb77e7468722262c049675ab03e30
Author: Ben Skeggs <email address hidden>
Date: Thu Jan 12 15:34:54 2012 +1000

    drm/nv50-nvc0/vm: support unsnooped system memory

    v2 (Emil Velikov <email address hidden>):
    - Fixed a regression on certain nv50 IGP due to not passing the correct
      target type to nv50_vm_addr()

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Emil Velikov <email address hidden>
    Tested-by: Johannes Obermayr <email address hidden>

commit 4abb410a13eec3f49863be2e84ad062fef00dac0
Author: Ben Skeggs <email address hidden>
Date: Thu Jan 12 16:17:16 2012 +1000

    drm/nouveau: recognise DCB connector type for DP+DVI+VGA DMS-59

    Signed-off-by: Ben Skeggs <email address hidden>

commit 070be296b65d120c2fef58a5435f159ae32c4995
Author: Ben Skeggs <email address hidden>
Date: Tue Jan 24 18:30:10 2012 +1000

    drm/nouveau/mem: handle dll_off for ddr2/ddr3

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit 25c53c1068a804c6b51f86e937cebab6274dc056
Author: Ben Skeggs <email address hidden>
Date: Tue Jan 24 18:03:25 2012 +1000

    drm/nouveau/pm: extend profile interface for destroy/init/fini

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit 8d7bb400638906075c38cb07891993cf95076aa7
Author: Ben Skeggs <email address hidden>
Date: Tue Jan 24 15:59:07 2012 +1000

    drm/nouveau/pm: rework to allow selecting separate profiles for ac/battery

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit b830973b68895813b911fb04626d907744e7d7a2
Author: Ben Skeggs <email address hidden>
Date: Tue Jan 24 13:39:56 2012 +1000

    drm/nouveau/pm: fix dll off -> dll on transitions

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit a9bc247cbbc6310d2aefe4db0a6e92defde4426b
Author: Ben Skeggs <email address hidden>
Date: Tue Jan 24 11:26:40 2012 +1000

    drm/nouveau/pm: detect when we need dll disabled for gddr3

    Fixes minor flickering on NVS295 when at perflvl 0.

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit 0ce71415587b1fd56f67294ac46f860b8b679b95
Author: Ben Skeggs <email address hidden>
Date: Tue Jan 24 11:03:14 2012 +1000

    drm/nv50: fix detection of second vram rank

    Goes a long way to correcting NVS295 memory reclocking issues.

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit 1a7287ea6f37c930a092123f6584b0b24cfe2d13
Author: Ben Skeggs <email address hidden>
Date: Tue Jan 24 10:24:05 2012 +1000

    drm/nouveau/pm: track mr2 for gddr3

    There's some "extended" GDDR3 chipsets out there with EMRS2 settings that
    change the layout of MRS/EMRS1 bitmaps.. Sigh.. Still need to track down
    how exactly we're supposed to handle this.

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit c57ebf5ef3588d21031f12e39131d79071269845
Author: Martin Peres <email address hidden>
Date: Mon Jan 9 15:23:10 2012 +1000

    drm/nv50/pm: wait for all fifo-connected engines to idle before reclocking

    Signed-off-by: Martin Peres <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit 496a73bbecb81e6753715995e4519d152f814667
Author: Ben Skeggs <email address hidden>
Date: Tue Jan 24 09:47:04 2012 +1000

    drm/nv50/pm: use hwsq for engine reclocking too

    Idea from Martin Peres, different implementation by me.

    v2: Martin Peres:
    - fix mast calculation

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit e495d0d7e36298f76336fdc58685ac4cacd454ba
Author: Ben Skeggs <email address hidden>
Date: Mon Jan 23 13:22:58 2012 +1000

    drm/nv50/disp: more accurate function to determine active crtcs

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit 6bdf68c9a427220692ad7607858e96caa2cd3147
Author: Ben Skeggs <email address hidden>
Date: Mon Jan 23 13:17:11 2012 +1000

    drm/nv50/pm: initial work towards proper memory reclocking, with timings

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit 2d85bc8855d2734f5585861b261c5fe7a7ed92c1
Author: Ben Skeggs <email address hidden>
Date: Mon Jan 23 13:12:09 2012 +1000

    drm/nouveau/pm: introduce ram reclocking helper

    This will probably result in more lines of code, however, we're going to
    have at least 3 slightly different implementations of this very soon and
    I'd rather keep the ram reclocking logic separate from the hw specifics.

    DDR2/DDR3/GDDR3 implemented thus far, others will be added as necessary.

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit 085028ce3bf7136c5ab2eeb8bf012024d88905c8
Author: Ben Skeggs <email address hidden>
Date: Wed Jan 18 09:02:28 2012 +1000

    drm/nouveau/pm: embed timings into perflvl structs

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit fd99fd6100d3b7aaa8dc76888a38bbb15e8041bc
Author: Ben Skeggs <email address hidden>
Date: Tue Jan 17 21:10:58 2012 +1000

    drm/nouveau/pm: calculate memory timings at perflvl creation time

    Statically generating the PFB register and MR values for each timing set
    turns out to be insufficient. There's at least one (so far) known piece
    of information which effects MR values which is stored in the perflvl
    entry on some chipsets (and in another table on later ones), which is
    disconnected from the timing table entries.

    After this change we will generate a timing set based on an input clock
    frequency instead, and have this data stored in the performance level
    data.

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit 68a64cad07057c3395b3b18c282df884e87ff3d6
Author: Ben Skeggs <email address hidden>
Date: Mon Jan 23 13:47:02 2012 +1000

    drm/nouveau/pm: readback boot perflvl *before* parsing vbios

    We might want/need the boot data to generate the other perflevels.

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit c7c039fd31be82ecb8d48477955e76badd38141a
Author: Roy Spliet <email address hidden>
Date: Mon Jan 9 15:23:07 2012 +1000

    drm/nouveau/pm: implement DDR2/DDR3/GDDR3/GDDR5 MR generation and validation

    Roy Spliet:
    - Implement according to specs
    - Simplify
    - Make array for mc latency registers

    Martin Peres:
    - squash and split all the commits from Roy
    - rework following Ben Skeggs comments
    - add a form of timings validation
    - store the initial timings for later use

    Ben Skeggs
    - merge slightly modified tidy-up patch with this one
    - remove perflvl-dropping logic for the moment

    Signed-off-by: Roy Spliet <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit 03ddf04bdb9cc4cdf8edb231b78f031647498314
Author: Ben Skeggs <email address hidden>
Date: Mon Jan 16 22:34:03 2012 +1000

    drm/nouveau/pm: restructure bios table parsing

    It turns out we need access to some additional information in various VBIOS
    tables to handle PFB memory timings correctly.

    Rather than hack in parsing of the new stuff in some kludgy way, I've
    restructured the VBIOS parsing to be more primitive, so we can use them in
    more flexible ways in the future.

    The perflvl->timing association code is disabled for the moment until it can
    be reworked. We don't use this stuff yet anyway, so no harm done.

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit 3d8a408c43828d586629204fe22134ae8f39b8be
Author: Ben Skeggs <email address hidden>
Date: Mon Jan 23 12:58:33 2012 +1000

    drm/nouveau/pm: avoid potential divide-by-zero

    Signed-off-by: Ben Skeggs <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>

commit 1a5f985c17c31367d1cd89db2278e0420c81d635
Author: Jean Delvare <email address hidden>
Date: Wed Nov 30 17:23:55 2011 +0100

    drm/nouveau: Fix module parameter description formats

    Module parameter descriptions don't take a trailing \n, otherwise it
    breaks formatting of modinfo's output. Also remove trailing space.

    Signed-off-by: Jean Delvare <email address hidden>
    Cc: David Airlie <email address hidden>
    Cc: Ben Skeggs <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit bfb314652430ceca302bae0981d00903f055eee4
Author: Roy Spliet <email address hidden>
Date: Fri Nov 25 15:52:22 2011 +0100

    drm/nouveau/pm: improve memory timing generation

    - Rename several VBIOS entries to closer match the real world
    - Add the missing 0x100238 and 0x100240 register values
    - Parse bit 14 of the VBIOS timing table
    - "Magic value" -> tCWL, fixing some minor bugs in the process
    - Also name a few more by their name rather than their number.
    - Some values seem to be dependent on the memory type. Fix

    Edits by Martin Peres <email address hidden>:
    - this is a squash commit
    - reworked for fixing some style issues

    Signed-off-by: Roy Spliet <email address hidden>
    Signed-off-by: Martin Peres <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit b0103747094b62231fc951dfaca4897f67670874
Author: Martin Peres <email address hidden>
Date: Thu Nov 3 00:03:06 2011 +0100

    drm/nouveau/pm: improve the reclocking logs' readability

    Signed-off-by: Martin Peres <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit b1aa5531cc74ea023ad35e9cf5872112a15b4f70
Author: Martin Peres <email address hidden>
Date: Sat Aug 20 16:37:06 2011 +0200

    drm/nouveau: move pwm_divisor to the nouveau_pm_fan struct

    Signed-off-by: Martin Peres <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit bc6389e4fa1a6535021ffc4d3b37d48f9a0542e2
Author: Martin Peres <email address hidden>
Date: Fri Oct 7 01:33:12 2011 +0200

    drm/nouveau/pm: restore fan speed after suspend

    Signed-off-by: Martin Peres <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit ddb2005516949dc50d117cb8381d7a3f8f0614b0
Author: Martin Peres <email address hidden>
Date: Sat Dec 17 12:24:59 2011 +0100

    drm/nouveau/pm: style fixes

    Signed-off-by: Martin Peres <email address hidden>
    Signed-off-by: Ben Skeggs <email address hidden>

commit 668b6c097dbaf190f5d3974798fef37aee025385
Author: Ben Skeggs <email address hidden>
Date: Thu Dec 15 10:43:03 2011 +1000

    drm/nouveau: rework the init/takedown ordering

    Signed-off-by: Ben Skeggs <email address hidden>

commit f3298532f71f163877b9003009d6e1eefe988258
Author: Ben Skeggs <email address hidden>
Date: Tue Dec 13 12:46:18 2011 +1000

    drm/nvc0: add initial memory type detection

    Uses only the VBIOS tables, from what I can tell this is what NVIDIA do
    too, I was able to change the detected memory type by modifying this table
    on a NVC1 chipset.

    Signed-off-by: Ben Skeggs <email address hidden>

commit c70c41e89f0481f26749d8264aebc594566c2a6d
Author: Ben Skeggs <email address hidden>
Date: Tue Dec 13 11:57:55 2011 +1000

    drm/nv50: hopefully handle the DDR2/DDR3 memtype detection somewhat better

    M version 2 appears to have a table with some form of memory type info
    available.

    NVIDIA appear to ignore the table information except for this DDR2/DDR3
    case (which has the same value in 0x100714). My guess is this is due to
    some of the supported memory types not being represented in the table.

    Signed-off-by: Ben Skeggs <email address hidden>

commit 1072856a1c604726be6a8adfb6b2c86033e6a314
Author: Ben Skeggs <email address hidden>
Date: Tue Dec 13 09:45:25 2011 +1000

    drm/nv50: add memory type detection

    DDR1/DDR[23] confirmed on NVA8 (see note about DDR3 in source) by changing
    the value and watching the binary driver's behaviour.

    GDDR3/4 values confirmed on a NV96 via the same method above. That GDDR4
    is present is interesting, as far as I can see no boards using it were ever
    released.

    GDDR5 value is based on VBIOS images of known GDDR5 boards.

    Signed-off-by: Ben Skeggs <email address hidden>

commit ff92a6cda74c0a51cb723f5e224124cf74e62f25
Author: Ben Skeggs <email address hidden>
Date: Mon Dec 12 23:03:14 2011 +1000

    drm/nv20-nv40: add memory type detection

    NV20/NV30 is partially educated guesswork at this point, based on any
    information around about available memory types and a horribly unspeakable
    amount of vbios image scouring. I'm not entirely certain the GDDR3 define
    is correct, I have not spotted a single vbios with that value yet (though
    it is mentioned in some 1218-using nv4x vbios), but there are reports that
    some nv3x did use it..

    NV40(100914) confirmed by switching an NV49 to DDR1/DDR2 values and making
    sure that the binary driver behaviour showed it had detected DDR1/DDR2
    instead of GDDR3 before dying horribly.

    NV40(100474) confirmed by doing much the same task as above on an NV44,
    except this was *much* easier as changing the values didn't seem to have
    any noticable effect on the memory controller aside from changing the
    binary driver's behaviour.

    Signed-off-by: Ben Skeggs <email address hidden>

commit d81c19e312a22bdcebef1370f3af30a146670787
Author: Ben Skeggs <email address hidden>
Date: Mon Dec 12 22:51:33 2011 +1000

    drm/nv20: split PFB code out of nv10_fb.c

    Most functions were quite different between NV10/NV20 already, and they're
    about to get even more so.

    Signed-off-by: Ben Skeggs <email address hidden>

commit ddfd2da48421e6b217e8b4fa7ec967e55555ce65
Author: Ben Skeggs <email address hidden>
Date: Sun Dec 11 01:31:17 2011 +1000

    drm/nouveau: memory type detection for the really old chipsets

    Signed-off-by: Ben Skeggs <email address hidden>

commit 7ad2d31cb692597f7918fce2f52a4c1949fbcf8d
Author: Ben Skeggs <email address hidden>
Date: Sun Dec 11 00:30:05 2011 +1000

    drm/nouveau: move vram detection funcs to chipset-specific fb code

    Also, display detected memory type in logs - though, we don't even try to
    detect this yet.

    Signed-off-by: Ben Skeggs <email address hidden>

commit 83465324cb50e22b45ad53fd6e8887b1f8e43702
Merge: b19c19a 8e18db8
Author: Dave Airlie <email address hidden>
Date: Sat Mar 10 13:10:41 2012 +0000

    Merge branch 'drm-gma500-alanc' into drm-core-next

    * drm-gma500-alanc: (47 commits)
      gma500: psb_irq: mark mid_{enable, disable}_pipe_event() as static
      gma500: mark psb_intel_sdvo_hdmi_sink_detect() as static
      gma500: psb_intel_display: drop unused variables
      gma500: mark psb_intel_pipe_set_base() as static
      gma500: drop unused psb_intel_modeset_cleanup()
      gma500: oaktrail_lvds_init() drop unused variable
      gma500: oaktrail_hdmi_i2c_access() drop unused variable
      gma500: mark oaktrail_backlight_init() as static
      gma500: oaktrail_hdmi: fix -Wmissing-field-initializers warning
      gma500: oaktrail_hdmi: drop dead code
      gma500: oaktrail_crtc: drop unused variables
      gma500: oaktrail_crtc: mark few functions as static
      gma500: mdfld_intel_display: drop unused variables
      gma500: mdfld_dsi_pkg_sender: fix -Wtype-limits warning
      gma500: mdfld_dsi_dpi: drop unused variables
      gma500: mdfld_device: mark few functions as static
      gma500: cdv_intel_lvds: #if 0 currently unused functions
      gma500: cdv_intel_lvds: mark few functions as static
      gma500: cdv_intel_hdmi: add missing include
      gma500: cdv_intel_crt: mark few functions as static
      ...

commit 8e18db815c92f17e96afaccd33c6b8f08c16dd03
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:15:47 2012 +0000

    gma500: psb_irq: mark mid_{enable, disable}_pipe_event() as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit f42aaa6f7c35e0e61dab7771d82aa197f317f4a8
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:15:34 2012 +0000

    gma500: mark psb_intel_sdvo_hdmi_sink_detect() as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 2e33d6b92ff3298c06e87661040c5401e1099ea5
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:15:20 2012 +0000

    gma500: psb_intel_display: drop unused variables

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 3c1d08d7af81b4dbd77530cb4f21f28cd4035f40
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:14:44 2012 +0000

    gma500: mark psb_intel_pipe_set_base() as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 412a3df1ce4203ca8887ac986e4fc692301a949b
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:14:32 2012 +0000

    gma500: drop unused psb_intel_modeset_cleanup()

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit cc2e991c1564c952fd21f850db8d4a8f43847c09
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:14:18 2012 +0000

    gma500: oaktrail_lvds_init() drop unused variable

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 1e30296a603812fc3592b2a25e0daf3b416d42ce
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:13:23 2012 +0000

    gma500: oaktrail_hdmi_i2c_access() drop unused variable

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 771f64d027db83f3627757723d63dac4ac9b523e
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:13:10 2012 +0000

    gma500: mark oaktrail_backlight_init() as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 6e7f45736e46f14e0f30ff94883fbc665d100d61
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:12:56 2012 +0000

    gma500: oaktrail_hdmi: fix -Wmissing-field-initializers warning

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit e1bb07cbe18b28d112122deb6a7f2ef67ebd95a6
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:12:28 2012 +0000

    gma500: oaktrail_hdmi: drop dead code

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 4398e58c5fc2bcd1b64a38fd28c3ffba8c36eefa
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:12:16 2012 +0000

    gma500: oaktrail_crtc: drop unused variables

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 44332ddfeb07960e57fd6db9be0a3f7c6a01d4e9
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:12:04 2012 +0000

    gma500: oaktrail_crtc: mark few functions as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit cbc5a1850d83bbf2676fa56c3badb2b9a442539e
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:11:50 2012 +0000

    gma500: mdfld_intel_display: drop unused variables

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit c7a5ae2f232e77ffd4e0713a6d72cb20471ae81c
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:11:38 2012 +0000

    gma500: mdfld_dsi_pkg_sender: fix -Wtype-limits warning

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit e4b9ff716fd6b49b062884e339882efe305e922f
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:11:26 2012 +0000

    gma500: mdfld_dsi_dpi: drop unused variables

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 1c6a62680beeeb3bf9cda23177d4b32c2609cf81
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:11:14 2012 +0000

    gma500: mdfld_device: mark few functions as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 062d054eb359bf143fdd61c8c8837b4d6fd8a10c
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:11:02 2012 +0000

    gma500: cdv_intel_lvds: #if 0 currently unused functions

    cdv_intel_lvds_set_brightness() is only used in commented out code in
    cdv_set_brightness().

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit bc11da70aca65283e62e8a4bdccc11c3324ccf97
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:10:50 2012 +0000

    gma500: cdv_intel_lvds: mark few functions as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 455b9e91f2a4206d45d0f2b850968a214ee4ea6e
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:10:38 2012 +0000

    gma500: cdv_intel_hdmi: add missing include

    drivers/gpu/drm/gma500/cdv_intel_hdmi.c:305:6: warning: no previous prototype for 'cdv_hdmi_init' [-Wmissing-prototypes]

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 657da160cc22c69edc2bea6d9825c9e041d1c83f
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:10:23 2012 +0000

    gma500: cdv_intel_crt: mark few functions as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 0313c0de54ee241b2c139f11c9a285e6c2b8bd52
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:10:10 2012 +0000

    gma500: cdv_intel_crt: drop unused variables

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit a8ec6229651b36b03c2003dca6843f7bc4da9d6e
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:09:57 2012 +0000

    gma500: cdv_intel_crt: drop dead code

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 2acdc9fa7e0b6fa383ac742a4203c7c1997b1a61
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:09:45 2012 +0000

    gma500: cdv_intel_crt: add missing include

    drivers/gpu/drm/gma500/cdv_intel_crt.c:273:6: warning: no previous prototype for 'cdv_intel_crt_init' [-Wmissing-prototypes]

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 017350bcb065ba72b776b99fdf26a6ce60bf703a
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:09:33 2012 +0000

    gma500: fix cdv_intel_wait_for_vblank() prototype

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit aa53f5331c4ea156b6479c6e4d9a5d35528ac1eb
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:09:19 2012 +0000

    gma500: fix two -Wmissing-field-initializers warnings

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 15308e23fb1bbb485be648b379717cecdc8a0da1
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:08:45 2012 +0000

    gma500: mark psb_driver_device_is_agp() and psb_driver_preclose() as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 1fc93332cd2ba59a5fd5b3c4369fc62c724ddae6
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:05:00 2012 +0000

    gma500: psb_driver_load(): drop unused variables

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 699f0b45cef8259790ca7a8811d4e6bccc4b54a9
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:04:47 2012 +0000

    gma500: fix ioctl confict

    Move DRM_GMA_GET_PIPE_FROM_CRTC_ID to 0x08 to avoid confict with
    DRM_GMA_GEM_MMAP.

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 670c044454a33ab679628518d5284fac6246b259
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:04:32 2012 +0000

    gma500: use DRM_IOCTL_DEF_DRV instead of custom PSB_IOCTL_DEF

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 3afad3c2bc554d2623cc75b557a445d5e7239845
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:04:20 2012 +0000

    gma500: mmu: mark psb_mmu_free_pt() and psb_mmu_pt_alloc_map_lock() as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit b2d57b337f88229e31f2ee11ab64e3caf5db8031
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:04:08 2012 +0000

    gma500: mmu: drop unused psb_get_default_pd_addr()

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit ffe94d9c754ebdc1462d58755da48dc75c3d2920
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:03:55 2012 +0000

    gma500: gtt: mark psb_gtt_entry() and psb_gtt_alloc() as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit bc7f2b0839fc0b867a9877d8640e07b9b9813875
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:03:44 2012 +0000

    gma500: mark psb_fbdev_destroy() and psb_fbdev_fini() as static

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 4796001a7d5dfdae082919f93ef6104be0108012
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:03:32 2012 +0000

    gma500: drop unused psbfb_suspend()/psbfb_resume()

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit a58df0ade953f19cbadb520ea3628436c3f3ee7a
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:03:19 2012 +0000

    gma500: gem_glue: add missing include

    It fixes W=1 warnings:

    drivers/gpu/drm/gma500/gem_glue.c:23:6: warning: no previous prototype for ‘drm_gem_object_release_wrap’ [-Wmissing-prototypes]
    drivers/gpu/drm/gma500/gem_glue.c:44:5: warning: no previous prototype for ‘gem_create_mmap_offset’ [-Wmissing-prototypes]

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 89f58dcdf997ee2133f3d5b1d91697887c2345a3
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:03:04 2012 +0000

    gma500: medfield: drop a bit of dead code

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit fda95c2e7304c9d4d7ed8f2590346acbbfff2f99
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:02:50 2012 +0000

    gma500: mdfld_dsi_output_init() drop unused parameter

    Nobody uses 'config' parameter.

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 6aa1ead1b855819b8b754d0f84f9da6942fe7589
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:02:36 2012 +0000

    gma500: psbfb_create(): move depth initialization out of loop

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 026abc333205c1fff80138b8c2cac3d0347685f4
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:02:20 2012 +0000

    gma500: initial medfield merge

    We need to merge this ahead of some of the cleanup because a lot of needed
    cleanup spans both new and old chips. If we try and clean up and the merge
    we end up fighting ourselves.

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    [With a load of the cleanup stuff folded in, register stuff reworked sanely]
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit c6265ff593467d472814aa9f16f89f6c1dc90a5d
Author: Alan Cox <email address hidden>
Date: Thu Mar 8 16:02:05 2012 +0000

    gma500: rework register stuff sanely

    Rework registers handling to prepare for Medfield.

    Signed-off-by: Alan Cox <email address hidden>
    [split out from a single big patch]
    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit c715bc1bf422543731b8833e899266b8be982a52
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:01:51 2012 +0000

    gma500: make init_pm callback in struct psb_op optional

    Signed-off-by: Kirill A. Shutemov <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 4578240b48ed33f4377748701616a870fe5a1a94
Author: Alan Cox <email address hidden>
Date: Thu Mar 8 16:01:39 2012 +0000

    gma500: re-order calling on the fix setup so we set up after the DRM layer

    Noted by Kirill A Shutemov

    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit aa7c62af10b6ba7f0496ee3a1a760ad216426720
Author: Jesper Juhl <email address hidden>
Date: Thu Mar 8 16:00:58 2012 +0000

    intel, gma500, lvds: Fix use after free and mem leak in psb_intel_lvds_init()

    In psb_intel_lvds_init(), if we fail to allocate memory for
    'psb_intel_connector' we free the memory we previously allocated for
    'psb_intel_encoder', but we then proceed to use that free'd pointer
    when we do 'psb_intel_encoder->dev_priv = lvds_priv;'.

    We may also leak the memory we allocated for 'psb_intel_encoder' if we
    'goto failed_connector;' and the variable goes out of scope.

    While I was there anyway, I also removed the pointless 'if
    (psb_intel_connector)' before freeing it at the 'failed_connector:'
    label - kfree() deals gracefully with NULL pointers, so it is not
    needed.

    Signed-off-by: Jesper Juhl <email address hidden>
    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 05442e5e1ff1e75868e4f83822775f41e18c63b4
Author: Alan Cox <email address hidden>
Date: Thu Mar 8 16:00:45 2012 +0000

    gma500: Kconfig documentation tweak

    Update this to better reflect the status

    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 648a8e342c5a754bdc62f003d3af90507c1abfde
Author: Alan Cox <email address hidden>
Date: Thu Mar 8 16:00:31 2012 +0000

    gma500: now move the Oaktrail save state into its own structure

    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 933315acb6e223d4da36cb0b95d18dcfa6323658
Author: Alan Cox <email address hidden>
Date: Thu Mar 8 16:00:17 2012 +0000

    gma500: clean up some of the struct fields we no longer use

    Some this is Medfield stuff that may reappear in some form later, other
    bits are just dead stuff

    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 3df546be6b74c1e2633498104ba8879507fb06fd
Author: Alan Cox <email address hidden>
Date: Thu Mar 8 16:00:00 2012 +0000

    gma500: plug in more of the gamma functionality

    Signed-off-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit b19c19afa880105179b3c25e57b169c8fcda334c
Author: Rob Clark <email address hidden>
Date: Tue Mar 6 10:20:36 2012 -0600

    drm: cope with platformdev->id == -1

    If there are not multiple instances of a platform device, the id
    should apparently be set to -1. Which results in a odd looking
    bus-id like "platform:foodrm:-1". Probably we should just treat
    this case as id 0.

    Signed-off-by: Rob Clark <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 966e0cdd504657333415f43de6a219197511ebff
Author: Dave Airlie <email address hidden>
Date: Thu Feb 23 11:37:26 2012 +0000

    drm: drop setting vm_file to filp

    Talking to Al Viro on irc, we can see no possible reason for doing
    this, the upper mmap code does it. The code has been there since
    first import into drm tree I can find.

    Al tracked down this as a requirement pre 2.3.51 hasn't been needed since.

    Acked-by: Al Viro <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 81ffbbedc37c6043e5f5b123da926aa7dd8ad60a
Author: Felix Kuehling <email address hidden>
Date: Thu Feb 23 19:16:12 2012 -0500

    drm/radeon: fix deferred page-flip detection logic on Avivo-based ASICs

    This fixes page-flip-related flickering observed on Iconia Tab W500.

    The update_pending status returned by radeon_page_flip is very accurate on
    Avivo-based ASICs when vpos is negative.

    Experiments were conducted on several ASIC generations ranging from RS690
    to Cayman where the page flip was artificially timed to occur at a specific
    vpos. With negative vpos, overriding update_pending always lead to
    flickering.

    The same experiment on RV380 and RV410 showed that update_pending is not
    accurate with negative vpos. In most cases update_pending == 1 is returned
    although the flip would complete before the start of the next frame.
    Therefore I left the behaviour unchanged for pre-AVIVO ASICs for
    performance reasons, although this may result in flickering in rare cases.

    This change also makes the logic a little easier to understand.

    Signed-off-by: Felix Kuehling <email address hidden>
    Reviewed-by: Mario Kleiner <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 884a53ef43eb69dfd48408659b9606e581aee7ba
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 29 09:06:21 2012 +0100

    drm: remove unused code

    remove declared but unused functions from drmP.h, fix the comments
    where necessary. Also, remove drm_mem_info which is unused.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 54e88e065ef5e89de797de0c98e50f2ed1c174db
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 18:10:29 2012 -0500

    drm/radeon/kms: clean up radeon_asic struct (v2)

    v2: fix typo.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König<email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 9e6f3d02c4d28e68a73d100f7719440196f636de
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:49 2012 -0500

    drm/radeon/kms: reorganize surface callbacks

    tidy up the radeon_asic struct.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König<email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 798bcf7341cd434f89a4ddd6882ac043b1399825
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:48 2012 -0500

    drm/radeon/kms: move clock/pcie setting callbacks into pm struct

    tidy up radeon_asic struct.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König<email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit c79a49ca000ebcf4adf5448366284c5c1f25aa20
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:47 2012 -0500

    drm/radeon/kms: reorganize display callbacks

    tidy up the radeon_asic struct.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König<email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit c5b3b8504f17003ff9cd94ff4b385a6144410b25
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:46 2012 -0500

    drm/radeon/kms: reorganize gart callbacks

    tidy up the radeon_asic struct.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König<email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit f712812e1ba7f17a270f285c3e7e70c65186a8b4
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:45 2012 -0500

    drm/radeon/kms: make ring_start, ring_test, and ib_test per ring

    Each ring type may need a different variant.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König<email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit dfb276f098e0e90319a346bae2f205f2690d6b42
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:44 2012 -0500

    drm/radeon/kms: remove unused cp callbacks from radeon_asic

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König<email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit b35ea4ab8884b363440d38db3c7c89edfb3682a1
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:43 2012 -0500

    drm/radeon/kms: reorganize irq callbacks

    tidy up the radeon_asic struct.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König<email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 27cd77694bfa2e123cb7440507f8ddd762de6c38
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:42 2012 -0500

    drm/radeon/kms: reorganize copy callbacks

    tidy up the radeon_asic struct, handle multiple
    rings better.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König<email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 293f9fd53aa1529500ba16d89850100a058b11c1
Author: Christian König <email address hidden>
Date: Thu Feb 23 15:18:45 2012 +0100

    drm/radeon: fix IB debugfs files for multiple cards

    Storing pointers to the IBs in a static var just
    leads to giving the same content back for all
    cards in the system.

    Signed-off-by: Christian König <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit eb0c19c539f72d94c33cfd0860f4f8c899c64f4d
Author: Christian König <email address hidden>
Date: Thu Feb 23 15:18:44 2012 +0100

    drm/radeon: also make the cs_parse function per ring

    Not all rings use PM4, so the cs_parser also needs to be per ring.

    Signed-off-by: Christian König <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 442f7cfa04afe73a239daf026d323b83bbb7778b
Author: Christian König <email address hidden>
Date: Thu Feb 23 15:18:43 2012 +0100

    drm/radeon/kms: no need to align IB like this

    So don't confuse devs by doing so.

    Signed-off-by: Christian König <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit cdac5504b2981520f993790f5d30c0cdc15c3214
Author: Christian König <email address hidden>
Date: Thu Feb 23 15:18:42 2012 +0100

    drm/radeon: move ring syncing after bo validation

    The function radeon_bo_list_validate can cause a
    bo to move, resulting in a different sync_obj
    and a dependency to wait for this move to finish.

    Signed-off-by: Christian König <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit a02fa397b09cf1e02ecb922642b4ebb5e39f9234
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:41 2012 -0500

    drm/radeon/kms: reorganize pm callbacks

    tidy up the radeon_asic struct.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König <email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 0f9e006c9a8b264c1a391a58142f6c0e777e63c2
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:40 2012 -0500

    drm/radeon/kms: reorganize page flip callbacks

    tidy up the radeon_asic struct.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König <email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 901ea57dc4a2792900497172fa41358f9b2f67c3
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:39 2012 -0500

    drm/radeon/kms: reorganize hpd callbacks

    tidy up the radeon_asic struct.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König <email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 89e5181f3f79fbe46dbf811f9bc470f524704450
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:38 2012 -0500

    drm/radeon/kms: add a radeon asic callback for mc idle

    Required for future functionality.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König <email address hidden>
    Reviewed-by: Michel Dänzer <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 3ae19b750bdc09ce233e1504348320141593ffda
Author: Alex Deucher <email address hidden>
Date: Thu Feb 23 17:53:37 2012 -0500

    drm/radeon/kms: add wait_for_vblank asic callback

    Required for future functionality.

    Signed-off-by: Alex Deucher <email address hidden>
    Reviewed-by: Christian König <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit e5bcf23443740f741df8e5461ccdad0f10d1a75b
Merge: 019d96c ff5f4b0
Author: Dave Airlie <email address hidden>
Date: Thu Feb 23 14:11:53 2012 +0000

    Merge tag 'drm-intel-next-2012-02-16-merge-resolved' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next

    * tag 'drm-intel-next-2012-02-16-merge-resolved' of git://people.freedesktop.org/~danvet/drm-intel: (45 commits)
      Revert "drivers/gpu/drm/i915/intel_overlay.c needs seq_file.h"
      drm/i915/lvds: Always use the presence pin for LVDS on PCH
      drm/i915: Record the position of the request upon error
      drm/i915: Record the in-flight requests at the time of a hang
      drm/i915: Record the tail at each request and use it to estimate the head
      drm/i915: add missing SDVO bits for interlaced modes on ILK
      drm/i915: Fix race condition in accessing GMBUS
      drm/i915: add a "force-dvi" HDMI audio mode
      drm/i915: Don't lock panel registers when downclocking
      drm/i915: fix up locking inconsistency around gem_do_init
      drm/i915: enable forcewake voodoo also for gen6
      drm/i915: fixup seqno allocation logic for lazy_request
      drm/i915: outstanding_lazy_request is a u32
      drm/i915: check gtfifodbg after possibly failed writes
      drm/i915: catch gtfifo errors on forcewake_put
      drm/i915: use gtfifodbg
      drm/i915: set interlaced bits for TRANSCONF
      drm/i915: fixup overlay checks for interlaced modes
      drm/i915: allow interlaced mode output on the HDMI connector
      drm/i915: allow interlaced mode output on the SDVO connector
      ...

commit ff5f4b0585620e5c158ecaad84d91c5bf3c5d0a1
Merge: de67cba 019d96c
Author: Daniel Vetter <email address hidden>
Date: Thu Feb 23 14:54:20 2012 +0100

    Merge remote-tracking branch 'airlied/drm-next' into for-airlied

    Manually resolve the conflict between the new enum drm property
    helpers in drm-next and the new "force-dvi" option that the "audio" output
    property gained in drm-intel-next.

    While resolving this conflict, switch the new drm_prop_enum_list to
    use the newly introduced enum defines instead of magic values.

    Conflicts:
     drivers/gpu/drm/i915/intel_modes.c

    Signed-Off-by: Daniel Vetter <email address hidden>

commit 019d96cb55ade38a4b4a52bba0304e8cd681f30a
Author: Dave Airlie <email address hidden>
Date: Thu Sep 29 16:20:42 2011 +0100

    drm: add some caps for userspace to discover more info for dumb KMS driver (v2)

    For the simple KMS driver case we need some more info about what the preferred
    depth and if a shadow framebuffer is preferred.

    I've only added this for intel/radeon which support the dumb ioctls so far.

    If you need something really fancy you should be writing a real X.org driver.

    v2: drop cursor information, just return an error from the cursor ioctls
    and we can make userspace fallback to sw cursor in that case, cursor
    info was getting too messy, best to start smaller.

    Signed-off-by: Dave Airlie <email address hidden>

commit 466e69b8b03b8c1987367912782bc12988ad8794
Author: Dave Airlie <email address hidden>
Date: Mon Dec 19 11:15:29 2011 +0000

    drm: move pci bus master enable into driver.

    The current enabling of bus mastering in the drm midlayer allows a large
    race condition under kexec. When a kexec'ed kernel re-enables bus mastering
    for the GPU, previously setup dma blocks may cause writes to random pieces
    of memory. On radeon the writeback mechanism can cause these sorts of issues.

    This patch doesn't fix the problem, but it moves the bus master enable under
    the individual drivers control so they can move enabling it until later in
    their load cycle and close the race.

    Fix for radeon kms driver will be in a follow-up patch.

    Signed-off-by: Dave Airlie <email address hidden>

commit 42b923b587d055cd98fb84f32e3e758672026ae9
Author: Dan Carpenter <email address hidden>
Date: Tue Feb 14 10:38:11 2012 +0300

    drm/radeon/evergreen: make texdw[] array larger

    We store stuff in texdw[7] so this array needs to have 8 elements.

    Signed-off-by: Dan Carpenter <email address hidden>
    Reviewed-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit cdbe8b5426e71d09882212073c27c9dcf25a71b6
Merge: 285484e 172975a
Author: Dave Airlie <email address hidden>
Date: Tue Feb 14 14:16:00 2012 +0000

    Merge tag 'drm-intel-next-2012-02-07' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next

    * tag 'drm-intel-next-2012-02-07' of git://people.freedesktop.org/~danvet/drm-intel: (29 commits)
      drm/i915: Handle unmappable buffers during error state capture
      drm/i915: rewrite shmem_pread_slow to use copy_to_user
      drm/i915: rewrite shmem_pwrite_slow to use copy_from_user
      drm/i915: fall through pwrite_gtt_slow to the shmem slow path
      drm/i915: add debugfs file for swizzling information
      drm/i915: fix swizzle detection for gen3
      drm/i915: Remove the upper limit on the bo size for mapping into the CPU domain
      drm/i915: add per-ring fault reg to error_state
      drm/i915: reject GTT domain in relocations
      drm/i915: remove the i915_batchbuffer_info debugfs file
      drm/i915: capture error_state also for stuck rings
      drm/i915: refactor debugfs create functions
      drm/i915: refactor debugfs open function
      drm/i915: don't trash the gtt when running out of fences
      drm/i915: Separate fence pin counting from normal bind pin counting
      drm/i915/ringbuffer: kill snb blt workaround
      drm/i915: collect more per ring error state
      drm/i915: refactor ring error state capture to use arrays
      drm/i915: switch ring->id to be a real id
      drm/i915: set AUD_CONFIG N_value_index for DisplayPort
      ...

commit 285484e2d55e76031b45926720c10b1aec8b782a
Author: Jerome Glisse <email address hidden>
Date: Fri Dec 16 17:03:42 2011 -0500

    drm/radeon: add support for evergreen/ni tiling informations v11

    evergreen and northern island gpu needs more informations for 2D tiling
    than previous r6xx/r7xx. Add field to tiling ioctl to allow userspace
    to provide those.

    The v8 cs checking change to track color view on r6xx/r7xx doesn't
    affect old userspace as old userspace always emited 0 for this register.

    v2 fix r6xx/r7xx 2D tiling computation
    v3 fix r6xx/r7xx height align for untiled surface & add support for
       tile split on evergreen and newer
    v4 improve tiling debugging output
    v5 fix tile split code for evergreen and newer
    v6 set proper tile split for crtc register
    v7 fix tile split limit value
    v8 add COLOR_VIEW checking to r6xx/r7xx checker, add evergreen cs
       checking, update safe reg for r600, evergreen and cayman.
       Evergreen checking need some work around for stencil alignment
       issues
    v9 fix tile split value range, fix compressed texture handling and
       mipmap calculation, allow evergreen check to be silencious in
       front of current broken userspace (depth/stencil alignment issue)
    v10 fix eg 3d texture and compressed texture, fix r600 depth array,
        fix r600 color view computation, add support for evergreen stencil
        split
    v11 more verbose debugging in some case

    Signed-off-by: Jerome Glisse <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit dd220a00e8bd5ad7f98ecdc3eed699a7cfabdc27
Author: Marek Olšák <email address hidden>
Date: Fri Jan 27 12:17:59 2012 -0500

    drm/radeon/kms: add support for streamout v7

    v2: agd5f: add strmout CS checking, copy_dw register checking

    v3: agd5f: don't use cs_check_reg() for copy_dw checking as it
    will incorrectly patch the command stream for certain regs.

    v4: agd5f: add warning if safe reg check fails for copy_dw

    v5: agd5f: add stricter checking for 6xx/7xx

    v6: agd5f: add range checking for copy_dw on eg+,
    add sx_surface_sync to safe reg list for 7xx.

    v7: agd5f: add stricter checking for eg+

    Signed-off-by: Marek Olšák <email address hidden>
    Signed-off-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 51a59ac8739b333eaa43a3102b6acaab5037bfa2
Author: Axel Lin <email address hidden>
Date: Fri Feb 10 20:04:52 2012 +0800

    drm: Fix kcalloc parameters swapped

    The first parameter should be "number of elements" and the second parameter
    should be "element size".

    Signed-off-by: Axel Lin <email address hidden>
    Acked-by: Alan Cox <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit ade510153ecb7d50aaf9338fb2def2d5a80f1e1e
Merge: 8bf4222 0a240ec
Author: Dave Airlie <email address hidden>
Date: Mon Feb 13 12:04:11 2012 +0000

    Merge branch 'drm-vmware-next' into drm-core-next

    * drm-vmware-next:
      drm/vmwgfx: Bump driver minor
      vmwgfx: Move function declaration to correct header
      drm/vmwgfx: Treat out-of-range initial width and height as host errors
      vmwgfx: Pick up the initial size from the width and height regs
      vmwgfx: Add page flip support
      vmwgfx: Pipe fence out of screen object dirty functions
      vmwgfx: Make it possible to get fence from execbuf
      vmwgfx: Clean up pending event references to struct drm_file objects on close
      vmwgfx: Rework fence event action

commit 0a240ec43667c6e1005a566dde60863b9c16cc21
Author: Thomas Hellstrom <email address hidden>
Date: Thu Feb 9 16:56:49 2012 +0100

    drm/vmwgfx: Bump driver minor

    Bump driver minor to signal availability of the page-flip ioctl.

    Signed-off-by: Thomas Hellstrom <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit f9cd8ec34f240884cf7ec44e1a4cac12c167ecb2
Author: Thomas Hellstrom <email address hidden>
Date: Thu Feb 9 16:56:48 2012 +0100

    vmwgfx: Move function declaration to correct header

    Signed-off-by: Thomas Hellstrom <email address hidden>
    Reviewed-by: Jakob Bornecrantz <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 67d4a87b0a6bf7225aacc2c14e3542ec2f6b803f
Author: Thomas Hellstrom <email address hidden>
Date: Thu Feb 9 16:56:47 2012 +0100

    drm/vmwgfx: Treat out-of-range initial width and height as host errors

    And assign the initial width and height to the minimum in that case.
    Strange values (-1) from these registers have been reported by users.

    Signed-off-by: Thomas Hellstrom <email address hidden>
    Reviewed-by: Jakob Bornecrantz <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit eb4f923b1ceac8a618469c51ff249bd89bc0dfa4
Author: Jakob Bornecrantz <email address hidden>
Date: Thu Feb 9 16:56:46 2012 +0100

    vmwgfx: Pick up the initial size from the width and height regs

    Signed-off-by: Jakob Bornecrantz <email address hidden>
    Signed-off-by: Thomas Hellstrom <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit b5ec427e8d8c66ea1bb9a3bf09663c1361ecf0b6
Author: Jakob Bornecrantz <email address hidden>
Date: Thu Feb 9 16:56:45 2012 +0100

    vmwgfx: Add page flip support

    Signed-off-by: Jakob Bornecrantz <email address hidden>
    Reviewed-by: Thomas Hellstrom <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit bd49ae46f8a24c088dbca12064a846399e2da631
Author: Jakob Bornecrantz <email address hidden>
Date: Thu Feb 9 16:56:44 2012 +0100

    vmwgfx: Pipe fence out of screen object dirty functions

    Signed-off-by: Jakob Bornecrantz <email address hidden>
    Signed-off-by: Thomas Hellstrom <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit bb1bd2f43ee15386a1c3f96cbcbb9302a9994443
Author: Jakob Bornecrantz <email address hidden>
Date: Thu Feb 9 16:56:43 2012 +0100

    vmwgfx: Make it possible to get fence from execbuf

    Signed-off-by: Jakob Bornecrantz <email address hidden>
    Reviewed-by: Thomas Hellstrom <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 6b82ef50d8617f3fcd51dda9d89d973fe3bc65b8
Author: Thomas Hellstrom <email address hidden>
Date: Thu Feb 9 16:56:42 2012 +0100

    vmwgfx: Clean up pending event references to struct drm_file objects on close

    Pending events may have stale pointer references to struct drm_file objects
    after a file has been closed, but before the event is supposed to be
    attached to the drm file. Remove such events on file close.

    Tested with "modetest".

    Signed-off-by: Thomas Hellstrom <email address hidden>
    Reviewed-by: Jakob Bornecrantz <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 8b7de6aa84682a3396544fd88cd457f95484573a
Author: Jakob Bornecrantz <email address hidden>
Date: Thu Feb 9 16:56:41 2012 +0100

    vmwgfx: Rework fence event action

    Signed-off-by: Jakob Bornecrantz <email address hidden>
    Reviewed-by: Thomas Hellstrom <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 8bf42225dac865665a5a0f8bbe1b62139470ffa0
Author: Daniel Vetter <email address hidden>
Date: Fri Jan 27 22:40:51 2012 +0100

    drm/modes: do not enforce an odd vtotal for interlaced modes

    CEA actually specifies an interlaced mode with even vtotal and
    supplies a diagram showing how this is supposed to work.

    Note that interlaced modes with an even vtotal seem to be a fairly
    recent invention. All modelines lore I could dig up with googling says
    that vtotal for interlaced modes _needs_ to be odd. But the even
    modelines in CEA are not a spec-bug, there's a figure in CEA-861-E
    called "Figure 5 Special Interlaced Video Format Timing (Even Vtotal)"
    that explains how it's supposed to work. Furthermore intel Bspec
    explicitly mentions that both odd and even interlaced vtotal are
    supported (VTOTAL register in the south display engine of PCH split
    chips).

    Acked-by: Adam Jackson <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit fb2a99e15ff0d342de4ba58c84a791224a96a01a
Author: Sascha Hauer <email address hidden>
Date: Mon Feb 6 10:58:19 2012 +0100

    drm: do not set fb_info->pixmap fields

    The drm drivers set the fb_info->pixmap fields without setting
    fb_info->pixmap.addr. If this is not set the fb core will overwrite
    these all fb_info->pixmap fields anyway, so there is not much point
    in setting them in the first place.

    [airlied: dropped nvidiafb piece - not mine]

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit d9bc3c02e36d844c2d980e65ddda5c7699e073f8
Author: Sascha Hauer <email address hidden>
Date: Mon Feb 6 10:58:18 2012 +0100

    drm: add convenience function to create an range property

    Creating a range property is a common pattern, so create
    a convenience function for this and use it where appropriate.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 4a67d39190315558631d944b1cea4466ed4c86d8
Author: Sascha Hauer <email address hidden>
Date: Mon Feb 6 10:58:17 2012 +0100

    drm: add convenience function to create an enum property

    Creating an enum property is a common pattern, so create
    a convenience function for this and use it where appropriate.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 198ceac091049003ffcc4b7cda76785510fc3b59
Merge: 83b316f 3d29b84
Author: Dave Airlie <email address hidden>
Date: Tue Feb 7 15:29:04 2012 +0000

    Merge branch 'for-airlied' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next

    * 'for-airlied' of git://people.freedesktop.org/~danvet/drm-intel:
      drm/i915: add a LLC feature flag in device description
      drm/i915: kill i915_mem.c
      drm/i915: Use kcalloc instead of kzalloc to allocate array
      drm/i915/dp: Check for AUXCH error before checking for success
      drm/i915/dp: Use auxch precharge value of 5 everywhere
      drm/i915/dp: Tweak auxch clock divider for PCH
      drm/i915: Remove a comment about PCH from the non-PCH path
      drm/i915: Fix assert_pch_hdmi_disabled to mention HDMI (not DP)
      drm/i915: Implement plane-disabled assertion for PCH too
      drivers: i915: Fix BLC PWM register setup
      drm/i915: Check that plane/pipe is disabled before removing the fb
      drm/i915: fix typo in function name
      drm/i915: split out pll divider code
      drm/i915: split 9xx refclk & sdvo tv code out
      agp/intel: Add pci id for hostbridge from has/qemu
      drm/i915: there is no pipe CxSR on ironlake
      drm/i915: Only look for matching clocks for LVDS downclock
      drm/i915: Silence _DSM errors

commit 83b316fdafcc37e3e65b4a650afb7aab5cc2d271
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:37 2012 +0100

    drm exynos: use drm_fb_helper_set_par directly

    info->fix.visual already is correctly set from drm_fb_helper_fill_fix.
    info->fix.line_length is also set from drm_fb_helper_fill_fix,
    so drm_fb_helper_set_par directly instead of a custom
    exynos_drm_fbdev_set_par.

    Signed-off-by: Sascha Hauer <email address hidden>
    Tested-by: Inki Dae <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit a1178ca06213ba937b20d3d32102f64c15dd9a9d
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:30 2012 +0100

    drm crtc_helper: use list_for_each_entry

    list_for_each_entry_safe is for walking a list safe against removal
    of entries. Here, no entries are removed, so use list_for_each_entry.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit b20f38679fee704d5ebfe2815fb5af492a0dde9f
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:31 2012 +0100

    drm crtc: Fix locking comments

    Several comments above functions say that the caller must hold the
    mode_config lock, but the functions take the lock themselves. Fix
    the comments.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 4f988d132d2668b4f3b42bfc70daa531115ccca1
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:26 2012 +0100

    drm fb helper: remove unused variable crtc_id

    crtc_id is set but never used, so remove it from struct
    drm_fb_helper_crtc.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit e9ad318128aa858f713d6f2c4623f7583ca53a71
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:25 2012 +0100

    drm fb helper: remove unused variable conn_limit

    conn_limit is set but never used. Remove it from struct
    drm_fb_helper.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 3a8148c514b45672f876c4d7c23ed1f54e7c48e7
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:24 2012 +0100

    drm fb helper: use drm_helper_connector_dpms to do dpms

    drm_fb_helper_on|off currently manually searches for encoders
    to turn on/off. Make this simpler by using the helper function.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 4cae5b84628d5df76247d494e51b89d07e28e6aa
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:23 2012 +0100

    drm: add proper return value for drm_mode_crtc_set_gamma_size

    drm_mode_crtc_set_gamma_size returns boolean true for success
    and false for failure. This is not very kernel conform, so
    change it to return 0 for success and a propert error code
    otherwise. Noone checks the return value, so no users have to
    be fixed.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit a1b7736dac5f2d5876e68c47a0fce3f423840070
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:22 2012 +0100

    drm drm_fb_helper: destroy modes

    drm_setup_crtcs allocated modes using drm_mode_duplicate. Free
    them in drm_fb_helper_crtc_free.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 554f1d7888d4a1055965198d0ac46ba50e8b684e
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:19 2012 +0100

    drm crtc: use drm_mode_destroy instead of kfree in drm_mode_remove

    Modes are created using drm_mode_create which does a
    drm_mode_object_get, so use drm_mode_destroy in drm_mode_remove
    which does a drm_mode_object_put.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit aefd330e694d5b7b9657cc53821c7879b14c8128
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:21 2012 +0100

    drm/edid: drm modes have to be free with drm_mode_destroy

    to add the missing drm_mode_object_put for that mode.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 59ce062ead2a7d114a1e7f505f250eabab9e9d85
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:20 2012 +0100

    drm crtc: add forgotten idr cleanup functions

    drm_mode_config_init initializes the idr with idr_init, so
    add the missing counterparts in drm_mode_config_cleanup.

    Signed-off-by: Sascha Hauer <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit f2746f83d50287fdb6768e0f20168c64b6a7c9cb
Author: Alex Deucher <email address hidden>
Date: Thu Feb 2 10:11:12 2012 -0500

    drm/radeon/kms: add r1xx/r2xx CS support for tiled textures

    Not likely this will be implemented anytime soon, but for
    completeness...

    Signed-off-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit c9068eb296fc682513f8612168f605c169b773e4
Author: Alex Deucher <email address hidden>
Date: Thu Feb 2 10:11:11 2012 -0500

    drm/radeon/kms: add r1xx/r2xx support for CS_KEEP_TILING_FLAGS

    Previous patch only updates r3xx+. It's not likely
    anyone will use this on r1xx/r2xx, but add it for consistency.

    Signed-off-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 9292f37e1f5c79400254dca46f83313488093825
Author: Eugeni Dodonov <email address hidden>
Date: Thu Jan 5 09:34:28 2012 -0200

    drm: give up on edid retries when i2c bus is not responding

    This allows to avoid talking to a non-responding bus repeatedly until we
    finally timeout after 15 attempts. We can do this by catching the -ENXIO
    error, provided by i2c_algo_bit:bit_doAddress call.

    Within the bit_doAddress we already try 3 times to get the edid data, so
    if the routine tells us that bus is not responding, it is mostly pointless
    to keep re-trying those attempts over and over again until we reach final
    number of retries.

    This change should fix https://bugs.freedesktop.org/show_bug.cgi?id=41059
    and improve overall edid detection timing by 10-30% in most cases, and by
    a much larger margin in case of phantom outputs (up to 30x in one worst
    case).

    Timing results for i915-powered machines for 'time xrandr' command:
    Machine 1: from 0.840s to 0.290s
    Machine 2: from 0.315s to 0.280s
    Machine 3: from +/- 4s to 0.184s

    Timing results for HD5770 with 'time xrandr' command:
    Machine 4: from 3.210s to 1.060s

    Reviewed-by: Chris Wilson <email address hidden>
    Reviewed-by: Keith Packard <email address hidden>
    Tested-by: Sean Finney <email address hidden>
    Tested-by: Soren Hansen <email address hidden>
    Tested-by: Hernando Torque <email address hidden>
    Tested-by: Mike Lothian <email address hidden>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41059
    Signed-off-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 30388c6e48e62b2806b14552275f091e2f5adbf4
Author: Alex Deucher <email address hidden>
Date: Fri Jan 20 14:50:18 2012 -0500

    drm/radeon/kms/dce3+: add support for hw i2c using atom

    Starting with DCE3 hardware, atom contains a general purpose
    ProcessI2cChannelTransaction similar to ProcessAuxChannelTransaction.

    Add an implementation using the atom tables for DCE3+ hardware.

    This should be a little less CPU intensive than bit banging and
    may work better in certain cases.

    Enable it by setting the radeon hw_i2c module parameter to 1. E.g.,
    radeon.hw_i2c=1
    on the kernel command line in grub.

    Signed-off-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 9048955748aa14b1dbf068ef3a9288ec15cabc66
Author: Jean Delvare <email address hidden>
Date: Sat Jan 28 11:08:58 2012 +0100

    drm/radeon/kms: Use the standard VESA timeout for DDC channels

    The VESA specification suggests a 2.2 ms timeout on DDC channels.
    Use exactly that (as the i915 driver does) instead of hard-coding a
    jiffy count.

    Signed-off-by: Jean Delvare <email address hidden>
    Reviewed-by: Keith Packard <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 1849ecb22fb3b5d57b65e7369a3957adf9f26f39
Author: Jean Delvare <email address hidden>
Date: Sat Jan 28 11:07:09 2012 +0100

    drm/kms: Make i2c buses faster

    A udelay value of 20 leads to an I2C bus running at only 25 kbps. I2C
    devices can typically operate faster than this, 50 kbps should be fine
    for all devices (and compliant devices can always stretch the clock if
    needed.)

    FWIW, the vast majority of framebuffer drivers set udelay to 10
    already. So set it to 10 in DRM drivers too, this will make EDID block
    reads faster. We might even lower the udelay value later if no problem
    is reported.

    Signed-off-by: Jean Delvare <email address hidden>
    Acked-by: Eugeni Dodonov <email address hidden>
    Cc: Keith Packard <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 6d75e83ee31c146c8a3d56c762d3e15c483dc40e
Author: Ilija Hadzic <email address hidden>
Date: Tue Jan 31 09:35:25 2012 -0500

    drm/radeon/kms: remove benchmarks shorter than one page

    copy_blit operation works only on integral number of pages
    so benchmarks shorter than one page size (4K) do not make sense

    v2: use RADEON_GPU_PAGE_SIZE instead of "magic" 1024 number and
        sweep sizes between 1 * <page_size> to 16K * <page_size> doubling
        the size in each iteration; we get the same coverage, as
        in the original benchmark, but guarantee integer multiples
        of page size

    v3: add whitespace between '*' operator per review received from
        <email address hidden>

    Signed-off-by: Ilija Hadzic <email address hidden>
    Reviewed-by: Alex Deucher <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit 86a4d69c0ad62ced87a74bbd43f2acefc66a97b0
Author: Ilija Hadzic <email address hidden>
Date: Wed Feb 1 11:42:38 2012 -0500

    drm/radeon/kms: common definitions for blit copy code

    R600/700 and Evergreen/NI blit code have a few redundant
    definitions in respective .c file. Move common definitions
    into a separate (new) .h file.

    Signed-off-by: Ilija Hadzic <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit a14b1b42477c5ef089fcda88cbaae50d979eb8f9
Author: Mandeep Singh Baines <email address hidden>
Date: Fri Jan 20 12:11:16 2012 -0800

    drm: remove master fd restriction on mode setting getters

    Its useful to be able to call the mode setting getter ioctls.
    Not requiring master fd, enables writing a simple program which
    can query the state of the video system.

    Since these ioctls are only "getters" there is no security or
    synchronization issues which would require master fd. Opening
    an new fd is already protected by the file permissions on the
    device file.

    Signed-off-by: Mandeep Singh Baines <email address hidden>
    Cc: Dave Airlie <email address hidden>
    Cc: Daniel Vetter <email address hidden>
    Cc: Ilija Hadzic <email address hidden>
    Cc: Jesse Barnes <email address hidden>
    Cc: Stephane Marchesin <email address hidden>
    Cc: <email address hidden>
    Signed-off-by: Dave Airlie <email address hidden>

commit de67cba65944f26c0f147035bd62e30c5f456b96
Author: Danny Kukawka <email address hidden>
Date: Wed Feb 15 18:53:55 2012 +0100

    Revert "drivers/gpu/drm/i915/intel_overlay.c needs seq_file.h"

    This reverts commit e167976ee7f5fe4b80f7e8f55e087f6c67cf9562,
    Since this was already fixed in commit
    3bd3c9329973a93fa3ef5e9840f2fd6fa2889e3f some days before this
    commit cause seq_file.h to be included twice.

    Signed-off-by: Danny Kukawka <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit f3cfcba60fcfdce89f9332dc6c31137309d33c8a
Author: Chris Wilson <email address hidden>
Date: Thu Feb 9 09:35:53 2012 +0000

    drm/i915/lvds: Always use the presence pin for LVDS on PCH

    With the introduction of the PCH, we gained an LVDS presence pin but we
    continued to use the existing logic that asserted that LVDS was only
    supported on certain mobile chipsets. However, there are desktop
    IronLake systems with LVDS attached which we fail to detect. So for PCH,
    trust the LVDS presence pin and quirk all the lying manufacturers.

    Tested-by: Daniel Woff <email address hidden>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=43171
    Signed-off-by: Chris Wilson <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit ee4f42b10bbc404579c2e6f446b24d898592753c
Author: Chris Wilson <email address hidden>
Date: Wed Feb 15 11:25:38 2012 +0000

    drm/i915: Record the position of the request upon error

    So that we can tally the request against the command sequence in the
    ringbuffer, or merely jump to the interesting locations.

    Signed-off-by: Chris Wilson <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 52d39a21350531063bf8f4f704101bd371ea5d7d
Author: Chris Wilson <email address hidden>
Date: Wed Feb 15 11:25:37 2012 +0000

    drm/i915: Record the in-flight requests at the time of a hang

    Being able to tally the list of outstanding requests with the sequence
    of commands in the ringbuffer is often useful evidence with respect to
    driver corruption.

    Note that since this is the umpteenth per-ring data structure to be added
    to the error state, I've coallesced the nearby loops (the ringbuffer and
    batchbuffer) into a single structure along with the list of requests. A
    later task would be to refactor the ring register state into the same
    structure.

    v2: Fix pretty printing of requests so that they are parsed correctly by
    intel_error_decode and use the 0x%08x format for seqno for consistency

    Signed-off-by: Chris Wilson <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit a71d8d94525e8fd855c0466fb586ae1cb008f3a2
Author: Chris Wilson <email address hidden>
Date: Wed Feb 15 11:25:36 2012 +0000

    drm/i915: Record the tail at each request and use it to estimate the head

    By recording the location of every request in the ringbuffer, we know
    that in order to retire the request the GPU must have finished reading
    it and so the GPU head is now beyond the tail of the request. We can
    therefore provide a conservative estimate of where the GPU is reading
    from in order to avoid having to read back the ring buffer registers
    when polling for space upon starting a new write into the ringbuffer.

    A secondary effect is that this allows us to convert
    intel_ring_buffer_wait() to use i915_wait_request() and so consolidate
    upon the single function to handle the complicated task of waiting upon
    the GPU. A necessary precaution is that we need to make that wait
    uninterruptible to match the existing conditions as all the callers of
    intel_ring_begin() have not been audited to handle ERESTARTSYS
    correctly.

    By using a conservative estimate for the head, and always processing all
    outstanding requests first, we prevent a race condition between using
    the estimate and direct reads of I915_RING_HEAD which could result in
    the value of the head going backwards, and the tail overflowing once
    again. We are also careful to mark any request that we skip over in
    order to free space in ring as consumed which provides a
    self-consistency check.

    Given sufficient abuse, such as a set of unthrottled GPU bound
    cairo-traces, avoiding the use of I915_RING_HEAD gives a 10-20% boost on
    Sandy Bridge (i5-2520m):
      firefox-paintball 18927ms -> 15646ms: 1.21x speedup
      firefox-fishtank 12563ms -> 11278ms: 1.11x speedup
    which is a mild consolation for the performance those traces achieved from
    exploiting the buggy autoreported head.

    v2: Add a few more comments and make request->tail a conservative
    estimate as suggested by Daniel Vetter.

    Signed-off-by: Chris Wilson <email address hidden>
    [danvet: resolve conflicts with retirement defering and the lack of
    the autoreport head removal (that will go in through -fixes).]
    Signed-off-by: Daniel Vetter <email address hidden>

commit 7c26e5c6edaec70f12984f7a3020864cc21e6fec
Author: Paulo Zanoni <email address hidden>
Date: Tue Feb 14 17:07:09 2012 -0200

    drm/i915: add missing SDVO bits for interlaced modes on ILK

    This was pointed by Jesse Barnes. The code now seems to follow the
    specification but I don't have an SDVO device to really test this.

    Signed-off-by: Paulo Zanoni <email address hidden>
    Reviewed-by: Jesse Barnes <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 8a8ed1f5143b3df312e436ab15290e4a7ca6a559
Author: Yufeng Shen <email address hidden>
Date: Mon Feb 13 17:36:54 2012 -0500

    drm/i915: Fix race condition in accessing GMBUS

    GMBUS has several ports and each has it's own corresponding
    I2C adpater. When multiple I2C adapters call gmbus_xfer() at
    the same time there is a race condition in using the underlying
    GMBUS controller. Fixing this by adding a mutex lock when calling
    gmbus_xfer().

    v2: Moved gmbus_mutex below intel_gmbus and added comments.
    Rebased to drm-intel-next-queued.

    Signed-off-by: Yufeng Shen <email address hidden>
    [danvet: Shortened the gmbus_mutex comment a bit and add the patch
    revision comment to the commit message.]
    Signed-off-by: Daniel Vetter <email address hidden>

commit b1d7e4b41fd0f72ea8149056778db5d737739305
Author: Wu Fengguang <email address hidden>
Date: Tue Feb 14 11:45:36 2012 +0800

    drm/i915: add a "force-dvi" HDMI audio mode

    When HDMI-DVI converter is used, it's not only necessary to turn off
    audio, but also to disable HDMI_MODE_SELECT and video infoframe. Since
    the DVI mode is mainly tied to audio functionality from end user POV,
    add a new "force-dvi" audio mode:

     xrandr --output HDMI1 --set audio force-dvi

    Note that most users won't need to set this and happily rely on the EDID
    based DVI auto detection.

    Reported-by: Andrea Arcangeli <email address hidden>
    Signed-off-by: Wu Fengguang <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 8ac5a6d5b56700c006baa94272b63f2d3fdf6b06
Author: Sean Paul <email address hidden>
Date: Mon Feb 13 13:14:51 2012 -0500

    drm/i915: Don't lock panel registers when downclocking

    This patch replaces the locking from the downclock routines with an assert
    to ensure the registers are indeed unlocked. Without this patch, pre-SNB
    devices would lock the registers when downclocking which would cause a
    WARNING on suspend/resume with downclocking enabled.

    Note: To hit this bug, you need to have lvds downclocking enabled.

    Signed-off-by: Sean Paul <email address hidden>
    Acked-by: Jesse Barnes <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit d3ae08109d628d26615d7f7f4d8d53cdd8d71fd0
Author: Daniel Vetter <email address hidden>
Date: Thu Jan 26 11:41:11 2012 +0100

    drm/i915: fix up locking inconsistency around gem_do_init

    The locking in our setup and teardown paths is rather arbitrary, but
    generally we try to protect gem stuff with dev->struct_mutex. Further,
    the ums/gem ioctl to setup gem _does_ take the look. So fix up this
    benign inconsistency.

    Notice while reading through code.

    v2: Rebased on top of the ppgtt code.

    Reviewed-by: Chris Wilson <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 99ffa1629d737295e569267cf5940758139f9ddb
Author: Daniel Vetter <email address hidden>
Date: Wed Jan 25 14:04:00 2012 +0100

    drm/i915: enable forcewake voodoo also for gen6

    We still have reports of missed irqs even on Sandybridge with the
    HWSTAM workaround in place. Testing by the bug reporter gets rid of
    them with the forcewake voodoo and no HWSTAM writes.

    Because I've slightly botched the rebasing I've left out the ACTHD
    readback which is also required to get IVB working. Seems to still
    work on the tester's machine, so I think we should go with the more
    minmal approach on SNB. Especially since I've only found weak evidence
    for holding forcewake while waiting for an interrupt to arrive, but
    none for the ACTHD readback.

    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=45181
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=45332
    Tested-by: Nicolas Kalkhof nkalkhof()at()web.de
    Acked-by: Chris Wilson <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 53d227f282eb9fa4c7cdbfd691fa372b7ca8c4c3
Author: Daniel Vetter <email address hidden>
Date: Wed Jan 25 16:32:49 2012 +0100

    drm/i915: fixup seqno allocation logic for lazy_request

    Currently we reserve seqnos only when we emit the request to the ring
    (by bumping dev_priv->next_seqno), but start using it much earlier for
    ring->oustanding_lazy_request. When 2 threads compete for the gpu and
    run on two different rings (e.g. ddx on blitter vs. compositor)
    hilarity ensued, especially when we get constantly interrupted while
    reserving buffers.

    Breakage seems to have been introduced in

    commit 6f392d548658a17600da7faaf8a5df25ee5f01f6
    Author: Chris Wilson <email address hidden>
    Date: Sat Aug 7 11:01:22 2010 +0100

        drm/i915: Use a common seqno for all rings.

    This patch fixes up the seqno reservation logic by moving it into
    i915_gem_next_request_seqno. The ring->add_request functions now
    superflously still return the new seqno through a pointer, that will
    be refactored in the next patch.

    Note that with this change we now unconditionally allocate a seqno,
    even when ->add_request might fail because the rings are full and the
    gpu died. But this does not open up a new can of worms because we can
    already leave behind an outstanding_request_seqno if e.g. the caller
    gets interrupted with a signal while stalling for the gpu in the
    eviciton paths. And with the bugfix we only ever have one seqno
    allocated per ring (and only that ring), so there are no ordering
    issues with multiple outstanding seqnos on the same ring.

    v2: Keep i915_gem_get_seqno (but move it to i915_gem.c) to make it
    clear that we only have one seqno counter for all rings. Suggested by
    Chris Wilson.

    v3: As suggested by Chris Wilson use i915_gem_next_request_seqno
    instead of ring->oustanding_lazy_request to make the follow-up
    refactoring more clearly correct. Also improve the commit message
    with issues discussed on irc.

    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=45181
    Tested-by: Nicolas Kalkhof nkalkhof()at()web.de
    Reviewed-by: Chris Wilson <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 5391d0cffeb15f457b29b8d3a2fa975aa69a4db6
Author: Daniel Vetter <email address hidden>
Date: Wed Jan 25 14:03:57 2012 +0100

    drm/i915: outstanding_lazy_request is a u32

    So don't assign it false, that's just confusing ... No functional
    change here.

    Signed-Off-by: Daniel Vetter <email address hidden>

commit 67a3744f7515edda9888df5b226ec3b358908b42
Author: Ben Widawsky <email address hidden>
Date: Thu Feb 9 10:15:20 2012 +0100

    drm/i915: check gtfifodbg after possibly failed writes

    If we don't have a sufficient number of free entries in the FIFO, we
    proceed to do a write anyway. With this check we should have a clue if
    that write actually failed or not.

    After some discussion with Daniel Vetter regarding his original
    complaint, we agreed upon this.

    Reviewed-by: Chris Wilson <email address hidden>
    Signed-off-by: Ben Widawsky <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit ee64cbdbf617067988168a4a49fcaabdd2743da6
Author: Ben Widawsky <email address hidden>
Date: Thu Feb 9 10:15:19 2012 +0100

    drm/i915: catch gtfifo errors on forcewake_put

    This is similar to a patch I wrote several months ago. It's been updated
    for the new FORCEWAKE_MT. As recommended by Chris Wilson, use WARN()
    instead of DRM_ERROR, so we can get a backtrace.

    This shouldn't impact performance too much as the extra register read
    can replace the POSTING_READ we had previously.

    Reviewed-by: Chris Wilson <email address hidden>
    Signed-off-by: Ben Widawsky <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit dd202c6dd612beecf87b8b85c2f09b23f77364a2
Author: Ben Widawsky <email address hidden>
Date: Thu Feb 9 10:15:18 2012 +0100

    drm/i915: use gtfifodbg

    Add register definitions for GTFIFODBG, and clear it during init time to
    make sure state is correct.

    This register tells us if either a read, or a write occurred while the
    fifo was full. It seems like bit 2 is an OR of bit 0 and bit 1, so we
    check that as well, but the documents are not quite clear.

    Reviewed-by: Chris Wilson <email address hidden>
    Reviewed-by (v1): Eugeni Dodonov <email address hidden>
    Signed-off-by: Ben Widawsky <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 5f7f726d2caf1e51a39872e5a30b6984235d388e
Author: Paulo Zanoni <email address hidden>
Date: Fri Feb 3 17:47:15 2012 -0200

    drm/i915: set interlaced bits for TRANSCONF

    I'm not sure why they are needed (I didn't notice any difference in my
    tests), but these bits are in our documentation and they are also set by
    the Windows driver.

    Signed-off-by: Paulo Zanoni <email address hidden>
    Reviewed-by: Jesse Barnes <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 75c13993db592343bda1fd62f2555fea037d56bd
Author: Daniel Vetter <email address hidden>
Date: Sat Jan 28 23:48:46 2012 +0100

    drm/i915: fixup overlay checks for interlaced modes

    The drm core _really_ likes to frob around with the crtc timings and
    put halfed vertical timings (in fields) in there. Which confuses the
    overlay code, resulting in it's refusal to display anything at the
    lower half of an interlaced pipe.

    Tested-by: Christopher Egert <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit c3febcc438ba0878b164c74310bd77c50dbb0ba8
Author: Peter Ross <email address hidden>
Date: Sat Jan 28 14:49:26 2012 +0100

    drm/i915: allow interlaced mode output on the HDMI connector

    Signed-off-by: Peter Ross <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Paulo Zanoni <email address hidden>
    Tested-by: Paulo Zanoni <email address hidden>
    Tested-by: Christopher Egert <email address hidden>
    Tested-by: Alfonso Fiore <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 8f4839e21ea9a8f7300daac1fa30bfec514c9a25
Author: Peter Ross <email address hidden>
Date: Sat Jan 28 14:49:25 2012 +0100

    drm/i915: allow interlaced mode output on the SDVO connector

    Signed-off-by: Peter Ross <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Paulo Zanoni <email address hidden>
    Tested-by: Paulo Zanoni <email address hidden>
    Tested-by: Christopher Egert <email address hidden>
    Tested-by: Alfonso Fiore <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 0529a0d9f0e702fd5215a493b7440be73f5941af
Author: Daniel Vetter <email address hidden>
Date: Sat Jan 28 14:49:24 2012 +0100

    drm/i915: correctly program the VSYNCSHIFT register

    The hw seems to use this to correctly insert the required delay
    before/after an even/odd interlaced field. This might also explain
    why we need to substract 1 half-line from vtotal - if the hw just
    adds the delay programmend in VSYNCSHIFT the total frame time would be
    about that too long.

    These registers seems to only exist on gen4 and later. For paranoia
    also program it to 0 for progressive modes, but according to
    documentation the hw should just ignore it in this case.

    Reviewed-by: Paulo Zanoni <email address hidden>
    Tested-by: Paulo Zanoni <email address hidden>
    Tested-by: Alfonso Fiore <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit dbb025757a30cd225c5587685ae0971ecf301718
Author: Daniel Vetter <email address hidden>
Date: Sat Jan 28 14:49:23 2012 +0100

    drm/i915: don't allow interlaced pipeconf on gen2

    gen2 doesn't support it, so be a bit more paranoid and add a check to
    ensure that we never ever set an unsupported interlaced bit.

    Ensure that userspace can't set an interlaced mode by resetting
    interlace_allowed for the crt on gen2. dvo and lvds are the only other
    encoders that gen2 supports and these already disallow interlaced
    modes.

    Reviewed-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Paulo Zanoni <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 5def474ec6e37fe8dbac5070da4899931d46bf1f
Author: Daniel Vetter <email address hidden>
Date: Sat Jan 28 14:49:22 2012 +0100

    drm/i915: fixup interlaced support on ilk+

    According to Paulo Zanoni, this is what windows does.

    Reviewed-by: Paulo Zanoni <email address hidden>
    Tested-by: Paulo Zanoni <email address hidden>
    Tested-by: Alfonso Fiore <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 99fca60c76ffbdbf64aa00abf671014f711aea0e
Author: Daniel Vetter <email address hidden>
Date: Sat Jan 28 14:49:21 2012 +0100

    drm/i915: fixup interlaced vertical timings confusion, part 2

    According to bspec, we need to subtract an additional line from vtotal
    for interlaced modes and vblank_end needs to equal vtotal. All other
    timing fields do not need this special treatment, so kill it.

    Bspec says that this is irrespective of whether the interlaced mode
    has an odd or even vtotal, both modes are supported.

    Reviewed-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Paulo Zanoni <email address hidden>
    Tested-by: Paulo Zanoni <email address hidden>
    Tested-by: Christopher Egert <email address hidden>
    Tested-by: Alfonso Fiore <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit ca9bfa7eed20ea34e862804e62aae10eb159edbb
Author: Daniel Vetter <email address hidden>
Date: Sat Jan 28 14:49:20 2012 +0100

    drm/i915: fixup interlaced vertical timings confusion, part 1

    We have a pretty decent confusion about vertical timings of interlaced
    modes. Peter Ross has written a patch that makes interlace modes work
    on a lot more platforms/output combinations by doubling the vertical
    timings.

    The issue with that patch is that core drm _does_ support specifying
    whether we want these vertical timings in fields or frames, we just
    haven't managed to consistently use this facility. The relavant
    function is drm_mode_set_crtcinfo, which fills in the crtc timing
    information.

    The first thing to note is that the drm core keeps interlaced modes in
    frames, but displays modelines in fields. So when the crtc modeset
    helper copies over the mode into adjusted_mode it will already contain
    vertical timings in half-frames. The result is that the fixup code in
    intel_crtc_mode_fixup doesn't actually do anything (in most cases at
    least).

    Now gen3+ natively supports interlaced modes and wants the vertical
    timings in frames. Which is what sdvo already fixes up, at least under
    some conditions.

    There are a few other place that demand vertical timings in fields
    but never actually deal with interlaced modes, so use frame timings
    for consistency, too. These are:
    - lvds panel,
    - dvo encoders - dvo is the only way gen2 could support interlaced
      mode, but currently we don't support any encoders that do.
    - tv out - despite that the tv dac sends out an interlaced signal it
      expects a progressive mode pipe configuration.
    All these encoders enforce progressive modes by resetting
    interlace_allowed.

    Hence we always want crtc vertical timings in frames. Enforce this in
    our crtc mode_fixup function and rip out any redudant timing
    computations from the encoders' mode_fixup function.

    v2-4: Adjust the vertical timings a bit.

    v5: Split out the 'subtract-one for interlaced' fixes.

    v6: Clarify issues around tv-out and gen2.

    Reviewed-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Paulo Zanoni <email address hidden>
    Tested-by: Paulo Zanoni <email address hidden>
    Tested-by: Christopher Egert <email address hidden>
    Tested-by: Alfonso Fiore <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit d442ae181ba86085c3add085d5cb4482a8ccca68
Author: Daniel Vetter <email address hidden>
Date: Sat Jan 28 14:49:19 2012 +0100

    drm/i915: clean up interlaced pipeconf bit definitions

    - Clarify which bits are for which chips.
    - Note that gen2 can't do interlaced directly (only via dvo tv chips).
    - Move the mask to the top to make it clearer how wide this field is.
    - Add defintions for all possible values.

    This patch doesn't change any code.

    v2: Paulo Zanoni pointed out that the pixel doubling modes do no
    longer exist on ivb.

    Cc: Peter Ross <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Paulo Zanoni <email address hidden>
    Tested-by: Paulo Zanoni <email address hidden>
    Tested-by: Christopher Egert <email address hidden>
    Tested-by: Alfonso Fiore <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 9edd576d89a5b6d3e136d7dcab654d887c0d25b7
Merge: e21af88 28a4d56
Author: Daniel Vetter <email address hidden>
Date: Fri Feb 10 16:52:55 2012 +0100

    Merge remote-tracking branch 'airlied/drm-fixes' into drm-intel-next-queued

    Back-merge from drm-fixes into drm-intel-next to sort out two things:

    - interlaced support: -fixes contains a bugfix to correctly clear
      interlaced configuration bits in case the bios sets up an interlaced
      mode and we want to set up the progressive mode (current kernels
      don't support interlaced). The actual feature work to support
      interlaced depends upon (and conflicts with) this bugfix.

    - forcewake voodoo to workaround missed IRQ issues: -fixes only enabled
      this for ivybridge, but some recent bug reports indicate that we
      need this on Sandybridge, too. But in a slightly different flavour
      and with other fixes and reworks on top. Additionally there are some
      forcewake cleanup patches heading to -next that would conflict with
      currrent -fixes.

    Signed-Off-by: Daniel Vetter <email address hidden>

commit e21af88d39796c907c38648c824be3d646ffbe35
Author: Daniel Vetter <email address hidden>
Date: Thu Feb 9 20:53:27 2012 +0100

    drm/i915: enable ppgtt

    We want to unconditionally enable ppgtt for two reasons:
    - Windows uses this on snb and later.
    - We need the basic hw support to work before we can think about real
      per-process address spaces and other cool features we want.

    But Chris Wilson was complaining all over irc and intel-gfx that this
    will blow up if we don't have a module option to disable it. Hence add
    one, to prevent this.

    ppgtt support seems to slightly change the timings and make crashy
    things slightly more or less crashy. Now in my testing and the testing
    this got on troublesome snb machines, it seems to have improved things
    only. But on ivb it makes quite a few crashes happen much more often,
    see

    https://bugs.freedesktop.org/show_bug.cgi?id=41353

    Luckily Eugeni Dodonov seems to have a set of workarounds that fix
    this issue.

    v2: Don't try to enable ppgtt on pre-snb.

    v3: Pimp commit message and make Chris Wilson less grumpy by adding a
    module option.

    v4: New try at making Chris Wilson happy.

    Reviewed-by: Ben Widawsky <email address hidden>
    Acked-by: Chris Wilson <email address hidden>
    Tested-by: Chris Wilson <email address hidden>
    Tested-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 3cf17fc522ee081f7cb2ab325e6c697ca12005e4
Author: Daniel Vetter <email address hidden>
Date: Thu Feb 9 17:15:49 2012 +0100

    drm/i915: ppgtt debugfs info

    This was pretty usefull for debugging, might be useful for diagnosing
    issues.

    Reviewed-by: Ben Widawsky <email address hidden>
    Tested-by: Chris Wilson <email address hidden>
    Tested-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 5eb719cdbe4723729ff28d6aa1ebd3bf2392d7e3
Author: Daniel Vetter <email address hidden>
Date: Thu Feb 9 17:15:48 2012 +0100

    drm/i915: ppgtt register definitions

    Split out for easier cross-checking of the boring pieces with bspec.

    Reviewed-by: Ben Widawsky <email address hidden>
    Tested-by: Chris Wilson <email address hidden>
    Tested-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 7bddb01fb9697afd5d39bb69dd9f782a28063101
Author: Daniel Vetter <email address hidden>
Date: Thu Feb 9 17:15:47 2012 +0100

    drm/i915: ppgtt binding/unbinding support

    This adds support to bind/unbind objects and wires it up. Objects are
    only put into the ppgtt when necessary, i.e. at execbuf time.

    Objects are still unconditionally put into the global gtt.

    v2: Kill the quick hack and explicitly pass cache_level to ppgtt_bind
    like for the global gtt function. Noticed by Chris Wilson.

    Reviewed-by: Ben Widawsky <email address hidden>
    Tested-by: Chris Wilson <email address hidden>
    Tested-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 1d2a314c97ceaf383de8e23cdde46729927d433c
Author: Daniel Vetter <email address hidden>
Date: Thu Feb 9 17:15:46 2012 +0100

    drm/i915: initialization/teardown for the aliasing ppgtt

    This just adds the setup and teardown code for the ppgtt PDE and the
    last-level pagetables, which are fixed for the entire lifetime, at
    least for the moment.

    v2: Kill the stray debug printk noted by and improve the pte
    definitions as suggested by Chris Wilson.

    v3: Clean up the aperture stealing code as noted by Ben Widawsky.

    v4: Paint the init code in a more pleasing colour as suggest by Chris
    Wilson.

    v5: Explain the magic numbers noticed by Ben Widawsky.

    Reviewed-by: Ben Widawsky <email address hidden>
    Tested-by: Chris Wilson <email address hidden>
    Tested-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 428ccb21b740f603a6a1f08cbe6d935fb3177620
Author: Daniel Vetter <email address hidden>
Date: Thu Feb 9 17:15:45 2012 +0100

    agp/intel-gtt: export the gtt pagetable iomapping

    We need this because ppgtt page directory entries need to be in the
    global gtt pagetable.

    Reviewed-by: Ben Widawsky <email address hidden>
    Tested-by: Chris Wilson <email address hidden>
    Tested-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 50a4c4a94d24fe13167e3ab1dc1486623369c31a
Author: Daniel Vetter <email address hidden>
Date: Thu Feb 9 17:15:44 2012 +0100

    agp/intel-gtt: export the scratch page dma address

    To implement a PPGTT for drm/i915 that fully aliases the GTT, we also
    need to properly alias the scratch page.

    Reviewed-by: Ben Widawsky <email address hidden>
    Tested-by: Chris Wilson <email address hidden>
    Tested-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 7e3b8737e719c4de7dd79b096b80ece444b2f0ba
Author: Daniel Vetter <email address hidden>
Date: Wed Feb 1 22:26:45 2012 +0100

    drm/i915: dump even more into the error_state

    Chris Wilson and me have again stared at funny error states and it's
    been pretty clear from the start that something was seriously amiss.
    The seqnos last seen by the cpu were a few hundred behind those that
    the gpu could have possibly emitted last before it died ...

    Chris now tracked it down (hopefully, definit verdict's still out),
    but in hindsight we'd have found the bug by simply dumping the cpu
    side tracking of the ring head and tail registers.

    Fix this and prevent an identical time-waster in the future.

    Because the hangs always involved semaphores in one way or another,
    we've tried to dump the mbox registers, but couldn't find any
    inconsistencies. Still, dump them too.

    Reviewed-and-wanted-by: Chris Wilson <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit ff240199b6a3b0bec5ae9b6d26403dad38e8cb19
Author: Daniel Vetter <email address hidden>
Date: Tue Jan 31 21:08:14 2012 +0100

    drm/i915: s/DRM_ERROR/DRM_DEBUG in i915_gem_execbuffer.c

    These are all user-trigerable, so tune down their loudness a notch.
    For some of these we have i-g-t tests (because they prevent
    newly-discovered bugs), without this patches running the test suite
    leaves behind a dirty dmesg.

    Reviewed-by: Chris Wilson <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 3fa7d235440a18855cfdba76d6fc788db99eac28
Author: Daniel Vetter <email address hidden>
Date: Tue Jan 31 16:47:56 2012 +0100

    drm/i915: add gen6+ registers to i915_swizzle_info

    Reviewed-by: Ben Widawsky <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 11782b0233c06a35776786f30e19dc4168eb5406
Author: Daniel Vetter <email address hidden>
Date: Tue Jan 31 16:47:55 2012 +0100

    drm/i915: consolidate swizzling control bit frobbing

    On gen5 we also need to correctly set up swizzling in the display
    scanout engine, but only there. Consolidate this into the same
    function.

    This has a small effect on ums setups - the kernel now also sets this
    bit in addition to userspace setting it. Given that this code only
    runs when userspace either can't (resume, gpu reset) or explicitly
    won't(gem_init) touch the hw this shouldn't have an adverse effect.

    Reviewed-by: Ben Widawsky <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit f691e2f4cec334e906f971471b3bf1460c6256d4
Author: Daniel Vetter <email address hidden>
Date: Thu Feb 2 09:58:12 2012 +0100

    drm/i915: swizzling support for snb/ivb

    We have to do this manually. Somebody had a Great Idea.

    I've measured speed-ups just a few percent above the noise level
    (below 5% for the best case), but no slowdows. Chris Wilson measured
    quite a bit more (10-20% above the usual snb variance) on a more
    recent and better tuned version of sna, but also recorded a few
    slow-downs on benchmarks know for uglier amounts of snb-induced
    variance.

    v2: Incorporate Ben Widawsky's preliminary review comments and
    elaborate a bit about the performance impact in the changelog.

    v3: Add a comment as to why we don't need to check the 3rd memory
    channel.

    v4: Fixup whitespace.

    Acked-by: Chris Wilson <email address hidden>
    Reviewed-by: Ben Widawsky <email address hidden>
    Reviewed-by: Eric Anholt <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 172975aa746e155533cb386c7159c2d6510e2bc8
Author: Chris Wilson <email address hidden>
Date: Wed Dec 14 13:57:25 2011 +0100

    drm/i915: Handle unmappable buffers during error state capture

    As the buffer is not necessarily accessible through the GTT at the time
    of a GPU hang, and capturing some of its contents is far more valuable
    than skipping it, provide a clflushed fallback read path. We still
    prefer to read through the GTT as that is more consistent with the GPU
    access of the same buffer. So example it will demonstrate any errorneous
    tiling or swizzling of the command buffer as seen by the GPU.

    This becomes necessary with use of CPU relocations and lazy GTT binding,
    but could potentially happen anyway as a result of a pathological error.

    Signed-off-by: Chris Wilson <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 8461d2267726dddcb9b5d6ae6b32769b38a326cc
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:32 2011 +0100

    drm/i915: rewrite shmem_pread_slow to use copy_to_user

    Like for shmem_pwrite_slow. The only difference is that because we
    read data, we can leave the fetched cachelines in the cpu: In the case
    that the object isn't in the cpu read domain anymore, the clflush for
    the next cpu read domain invalidation will simply drop these
    cachelines.

    slow_shmem_bit17_copy is now ununsed, so kill it.

    With this patch tests/gem_mmap_gtt now actually works.

    v2: add __ to copy_to_user_swizzled as suggested by Chris Wilson.

    v3: Fixup the swizzling logic, it swizzled the wrong pages.

    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38115
    Reviewed-by: Chris Wilson <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 8c59967c448af5d77fe5189d0e73f32cd3dbe439
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:31 2011 +0100

    drm/i915: rewrite shmem_pwrite_slow to use copy_from_user

    ... instead of get_user_pages, because that fails on non page-backed
    user addresses like e.g. a gtt mapping of a bo.

    To get there essentially copy the vfs read path into pagecache. We
    can't call that right away because we have to take care of bit17
    swizzling. To not deadlock with our own pagefault handler we need
    to completely drop struct_mutex, reducing the atomicty-guarantees
    of our userspace abi. Implications for racing with other gem ioctl:

    - execbuf, pwrite, pread: Due to -EFAULT fallback to slow paths there's
      already the risk of the pwrite call not being atomic, no degration.
    - read/write access to mmaps: already fully racy, no degration.
    - set_tiling: Calling set_tiling while reading/writing is already
      pretty much undefined, now it just got a bit worse. set_tiling is
      only called by libdrm on unused/new bos, so no problem.
    - set_domain: When changing to the gtt domain while copying (without any
      read/write access, e.g. for synchronization), we might leave unflushed
      data in the cpu caches. The clflush_object at the end of pwrite_slow
      takes care of this problem.
    - truncating of purgeable objects: the shmem_read_mapping_page call could
      reinstate backing storage for truncated objects. The check at the end
      of pwrite_slow takes care of this.

    v2:
    - add missing intel_gtt_chipset_flush
    - add __ to copy_from_user_swizzled as suggest by Chris Wilson.

    v3: Fixup bit17 swizzling, it swizzled the wrong pages.

    Reviewed-by: Chris Wilson <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 5c0480f21f9896c443b0e65d779c8e09a695da7b
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:30 2011 +0100

    drm/i915: fall through pwrite_gtt_slow to the shmem slow path

    The gtt_pwrite slowpath grabs the userspace memory with
    get_user_pages. This will not work for non-page backed memory, like a
    gtt mmapped gem object. Hence fall throuh to the shmem paths if we hit
    -EFAULT in the gtt paths.

    Now the shmem paths have exactly the same problem, but this way we
    only need to rearrange the code in one write path.

    v2: v1 accidentaly falls back to shmem pwrite for phys objects. Fixed.

    v3: Make the codeflow around phys_pwrite cleara as suggested by Chris
    Wilson.

    Reviewed-by: Chris Wilson <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit ea16a3cdb9218a2389fafc804356c1914c157654
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:16 2011 +0100

    drm/i915: add debugfs file for swizzling information

    This will also come handy for the gen6+ swizzling support, where the
    driver is supposed to control swizzling depending upon dram
    configuration.

    v2: CxDRB3 are 16 bit regs! Noticed by Chris Wilson.

    Reviewed-by: Chris Wilson <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit c9c4b6f6c28354f1df9bd288dc33ba7ae0e66aaa
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:15 2011 +0100

    drm/i915: fix swizzle detection for gen3

    It looks like the desktop variants of i915 and i945 also have the DCC
    register to control dram channel interleave and cpu side bit6
    swizzling.

    Unfortunately internal Cspec/ConfigDB documentation for these ancient chips
    have already been dropped and there seem to be no archives. Also
    somebody thought the swizzling behaviour is surely a worthy secret to
    keep and redacted any mention of these fields from the published Intel
    datasheets.

    I suspect the hw engineers were really proud of the page coloring
    they've achieved in their first dual channel dram controller with
    bit17 - after all Bspec explains in great length the optimal layout of
    page frame numbers modulo 4 for the color and depth buffers, too.
    Later on when they've started to work on VT-d they shamefully
    discoverd their stupidity and tried to cover the tracks ...

    Tested-by: Daniel Vetter <email address hidden> (i915g)
    Tested-by: Pavel Ondračka <email address hidden> (i945g)
    Tested-by: Chris Wilson <email address hidden>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=42625
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 068c6ff1cbbfc09eed2b892dd7b0572dd6737785
Author: Chris Wilson <email address hidden>
Date: Sun Jan 29 16:52:05 2012 +0000

    drm/i915: Remove the upper limit on the bo size for mapping into the CPU domain

    The original intention of comparing the bo against the mappable GTT
    limits was to prevent a subsequent faulting of the bo into the GTT from
    clearing the entire GTT in vain. However, that was clearly a cut'n'paste
    mistake as a CPU mapping never binds the bo into the aperture. Whilst
    there may be some merit to limiting the maximum size of the bo to
    something that can be utilized by the GPU, that limit itself does not
    belong as a safeguard to mmapping the bo, so remove the check entirely.

    Signed-off-by: Chris Wilson <email address hidden>
    Reviewed-by: Eric Anholt <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 33f3f518fbb65d86f163083b74823e8bbe561bfc
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:39 2011 +0100

    drm/i915: add per-ring fault reg to error_state

    This was pretty handy when figuring out what exactly went wrong with
    ppgtt and it might also be useful when we stop filling the entire gart
    with scratch page entries.

    Also add the gen6+ DONE reg while at it.

    v2: Chris Wilson suggested to allocate the error_state with kzalloc
    for better paranoia. Also kill existing spurious clears of the
    error_state while at it.

    Reviewed-by: Ben Widawsky <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 4ca4a250ac93d5538a2a5c98ee2bcf9195f38be4
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:27 2011 +0100

    drm/i915: reject GTT domain in relocations

    This confuses our domain tracking and can (for gtt write domains) lead
    to a subsequent oops.

    Tested by tests/gem_exec_bad_domains from i-g-t.

    Reviewed-by: Eric Anholt <email address hidden>
    Reviewed-by: Chris Wilson <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit ff865f79764ca43bc601ff5a2499738451fc96dd
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:26 2011 +0100

    drm/i915: remove the i915_batchbuffer_info debugfs file

    With the error_state facility in place, this has outlived it's
    usefulness. It also oopses with the lates llc-reloc patches because
    it directly access objects through the gtt without any checks.

    Reviewed-by: Chris Wilson <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 653d7bed26a0c298dee7d60f6ab4bb442acf8b82
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:21 2011 +0100

    drm/i915: capture error_state also for stuck rings

    Since quite a while we also the basic output configuration in the
    error_state, so it should contain enough information to diagnose
    these MI_WAIT hangs.

    Reviewed-and-tested-by: Chris Wilson <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 6a9c308de0332b873720c629cb88f58d154b4f1d
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:11 2011 +0100

    drm/i915: refactor debugfs create functions

    All r/w debugfs files are created equal.

    v2: Add some newlines to make the code easier on the eyes as requested
    by Ben Widawsky.

    Reviewed-by: Ben Widawsky <email address hidden>
    Reviewed-by: Kenneth Graunke <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 08e14e80d0229262063139a95209fa0dc354feaa
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:10 2011 +0100

    drm/i915: refactor debugfs open function

    Only forcewake has an open with special semantics, the other r/w
    debugfs only assign the file private pointer.

    Reviewed-by: Ben Widawsky <email address hidden>
    Reviewed-by: Kenneth Graunke <email address hidden>
    Reviewed-by: Chris Wilson <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 39965b376601314ba374b8fa3944f5957d4ff2de
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:09 2011 +0100

    drm/i915: don't trash the gtt when running out of fences

    With the fence accounting fixed up in the previous commit not finding
    enough fences is a fatal error and userspace bug. Trashing the entire
    gtt is not gonna turn up that missing fence, so don't to this by
    returning another error thatn ENOSPC.

    This has the added benefit that it's easier to distinguish fence
    accounting errors from gtt space accounting issues.

    TTM serves as precendence for the EDEADLK error code - it returns it
    when the reservation code needs resources already blocked by the
    current reservation.

    Reviewed-by: Chris Wilson <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 1690e1eb7a9021826853e181baa48dd77090da28
Author: Chris Wilson <email address hidden>
Date: Wed Dec 14 13:57:08 2011 +0100

    drm/i915: Separate fence pin counting from normal bind pin counting

    In order to correctly account for reserving space in the GTT and fences
    for a batch buffer, we need to independently track whether the fence is
    pinned due to a fenced GPU access in the batch or whether the buffer is
    pinned in the aperture. Currently we count the fenced as pinned if the
    buffer has already been seen in the execbuffer. This leads to a false
    accounting of available fence registers, causing frequent mass evictions.
    Worse, if coupled with the change to make i915_gem_object_get_fence()
    report EDADLK upon fence starvation, the batchbuffer can fail with only
    one fence required...

    Fixes intel-gpu-tools/tests/gem_fenced_exec_thrash

    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38735
    Signed-off-by: Chris Wilson <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Tested-by: Paul Neumann <email address hidden>
    [danvet: Resolve the functional conflict with Jesse Barnes sprite
    patches, acked by Chris Wilson on irc.]
    Signed-off-by: Daniel Vetter <email address hidden>

commit 6a233c78878d8795517d716544d045d5675b3061
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:07 2011 +0100

    drm/i915/ringbuffer: kill snb blt workaround

    This was just to facilitate product enablement with pre-production hw.
    Allows us to kill quite a bit of cruft.

    Signed-off-by: Kenneth Graunke <email address hidden>
    Reviewed-by: Eric Anholt <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit c1cd90ed7957d1dd8aa6138468d71003fbc095ce
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:02 2011 +0100

    drm/i915: collect more per ring error state

    Based on a patch by Ben Widawsky, but with different colors
    for the bikeshed.

    In contrast to Ben's patch this one doesn't add the fault regs.
    Afaics they're for the optional page fault support which
    - we're not enabling
    - and which seems to be unsupported by the hw team. Recent bspec
      lacks tons of information about this that the public docs released
      half a year back still contain.

    Also dump ring HEAD/TAIL registers - I've recently seen a few
    error_state where just guessing these is not good enough.

    v2: Also dump INSTPM for every ring.

    v3: Fix a few really silly goof-ups spotted by Chris Wilson.

    Reviewed-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Chris Wilson <email address hidden>
    Signed-off-by: Ben Widawsky <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit d27b1e0ec2a0a04770b2ebf70a2e01281ef93562
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:01 2011 +0100

    drm/i915: refactor ring error state capture to use arrays

    The code already got unwieldy and we want to dump more per-ring
    registers.

    Only functional change is that we now also capture the video
    ring registers on ilk.

    v2: fixup a refactor fumble spotted by Chris Wilson.

    Reviewed-by: Eugeni Dodonov <email address hidden>
    Reviewed-by: Chris Wilson <email address hidden>
    Signed-off-by: Ben Widawsky <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 96154f2faba540281073243d61108d1705d19c6d
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:00 2011 +0100

    drm/i915: switch ring->id to be a real id

    ... and add a helpr function for the places where we want a flag.

    This way we can use ring->id to index into arrays.

    v2: Resurrect the missing beautification-space Chris Wilson noted.
    I'm moving this space around because I'll reuse ring_str in the next
    patch.

    Reviewed-by: Chris Wilson <email address hidden>
    Reviewed-by: Ben Widawsky <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit b6daa025b1e1aebf276508eb2a5a9f730391aa84
Author: Wu Fengguang <email address hidden>
Date: Fri Jan 6 14:41:31 2012 -0600

    drm/i915: set AUD_CONFIG N_value_index for DisplayPort

    It should be programmed to "0" for HDMI or "1" for DisplayPort.

    This enables DisplayPort audio for

    - HP EliteBook 8460p
      (whose BIOS does not set the N_value_index bit for us)

    - DisplayPort monitor hot plugged after boot
      (otherwise most BIOS will fill the N_value_index bit for us)

    Tested-by: Robert Lemaire <email address hidden>
    Reviewed-by: Keith Packard <email address hidden>
    Signed-off-by: Wu Fengguang <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 6dc0e816bb7478fd4dfebddcc65257f9ef161f7a
Author: Ben Widawsky <email address hidden>
Date: Mon Jan 23 15:30:02 2012 -0800

    drm/i915: correct lock type in destroy

    This is only relevant when using module unloading, and really only helps
    get rid of a probably benign warning.

    I can't remember if I sent this out already, but it's not turning up in
    any of my searches.

    Signed-off-by: Ben Widawsky <email address hidden>
    Reviewed-by: Keith Packard <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 8436473a4b10243fd4c3009b97b6646c2ba642f7
Author: Ben Widawsky <email address hidden>
Date: Tue Jan 24 20:36:15 2012 -0800

    drm/i915: drm/i915: Fix recursive calls to unmap

    After the ILK vt-d workaround patches it became clear that we had
    introduced a bug. Chris Wilson tracked down the issue to recursive
    calls to unmap. This happens because we try to optimize waiting on
    requests by calling retire requests after the wait, which may drop the
    last reference on an object and end up freeing the object (and then
    unmap the object from the gtt).

    After the last patch we can now choose to defer processing the retire
    list.

    Kudos to Chris Wilson for tracking this one down.

    This patch fixes gem_unref_active_buffers from i-g-t. It was tested by
    forcing do_idle_maps to true.

    This also fixes tests/gem_linear_blits in intel-gpu-tools.

    Reported-by: <email address hidden>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=42180
    Reviewed-by: Keith Packard <email address hidden>
    Signed-off-by: Ben Widawsky <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit b93f9cf14e714c20ce9a544ed1a6070ee7604588
Author: Ben Widawsky <email address hidden>
Date: Wed Jan 25 15:39:34 2012 -0800

    drm/i915: argument to control retiring behavior

    Sometimes it may be the case when we idle the gpu or wait on something
    we don't actually want to process the retiring list. This patch allows
    callers to choose the behavior.

    Reviewed-by: Keith Packard <email address hidden>
    Reviewed-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Ben Widawsky <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit fc74d8e01165b567922921d110b6d16320a61fa6
Author: Eric Anholt <email address hidden>
Date: Thu Jan 19 10:50:06 2012 -0800

    drm/i915: Correct the bit number for the MI_FLUSH_ENABLE.

    Older specs claimed this was bit 11, but newer specs and the actual
    simulator code say it was bit 12. Regardless, we don't use MI_FLUSH,
    or try to enable it any more.

    Signed-off-by: Eric Anholt <email address hidden>
    Reviewed-by: Kenneth Graunke <email address hidden>
    Reviewed-by: Ben Widawsky <email address hidden>
    [danvet: Anyone trying to use this bit, please read all the relevant
    discussions, it's epic.]
    Signed-off-by: Daniel Vetter <email address hidden>

commit 8d79c3490aecfe6e51f0ba6f9780746fb1434954
Author: Eric Anholt <email address hidden>
Date: Thu Jan 19 10:50:05 2012 -0800

    drm/i915: Remove the MI_FLUSH_ENABLE setting.

    We have always been using the wrong bit -- it's bit 12. However, the
    bit also doesn't do anything -- hardware has always accepted the
    MI_FLUSH command even when it was specced not to.

    Given that there is only one MI_FLUSH emitted in all of the driver
    stack on gen6+ (in i965_video.c of the 2d driver, and it should be
    using other code to do its flush instead), just remove the MI_FLUSH
    enable instead of trying to fix it.

    Signed-off-by: Eric Anholt <email address hidden>
    Reviewed-by: Kenneth Graunke <email address hidden>
    Reviewed-by: Ben Widawsky <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 8e636784b6f76653d358d521af9c2a8c246df38b
Author: Daniel Vetter <email address hidden>
Date: Sun Jan 22 01:36:48 2012 +0100

    drm/i915: fixup assert_pipe to take the pipe A quirk into account

    This was completely spamming dmesg on my i855gm. This issue was just
    shortly introduced with:

    commit 931872fceabacf2d4f8b6fbd51611c167e83164c
    Author: Chris Wilson <email address hidden>
    Date: Mon Jan 16 23:01:13 2012 +0000

        drm/i915: Check that plane/pipe is disabled before removing the fb

    Reviewed-by: Jesse Barnes <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit aca258482ed7c600b5aeed03aa8727d94d8dd07e
Author: Eugeni Dodonov <email address hidden>
Date: Tue Jan 17 15:25:45 2012 -0200

    drm/i915: print out which pixel format we do not support

    Otherwise, we are left with pretty bogus message saying that the pixel
    format is not supported while leaving the details to the telepatic powers.

    v2: use DRM_DEBUG_KMS instead of DRM_ERROR

    Signed-off-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 47842649ef43ba4b81ac2486df8caa0934e01195
Author: Jesse Barnes <email address hidden>
Date: Mon Jan 16 11:57:54 2012 -0800

    drm/i915: properly mask and or watermark values for sprites

    Now that we're using the sprite WM fields, we need to take care not to
    clobber them in the main update_wm functions. While we're at it, make
    sure we mask out the old sprite wm value before or'ing in the new one
    when the sprite wm is updated.

    Signed-off-by: Jesse Barnes <email address hidden>
    Reviewed-by: Keith Packard <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit c6a32fcbbbc25d7d4e7178aa984e5ef186ee9589
Author: Daniel Vetter <email address hidden>
Date: Fri Jan 20 10:43:44 2012 +0100

    drm/i915: clarify gen2 pageflip cmd

    I've reviewed gen2 pageflip code to hunt down multiple prepare pageflip
    issues. The only thing I've found is a slight but functionally
    meaningless confusion about the length of the mi cmd.

    Fix it up and add a comment about what this dword should be (according
    to docs at least).

    Reviewed-by: Eric Anholt <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 3d29b842e58fbca2c13a9f458fddbaa535c6e578
Author: Eugeni Dodonov <email address hidden>
Date: Tue Jan 17 14:43:53 2012 -0200

    drm/i915: add a LLC feature flag in device description

    LLC is not SNB/IVB-specific, so we should check for it in a more generic
    way.

    Reviewed-by: Chris Wilson <email address hidden>
    Reviewed-by: Eric Anholt <email address hidden>
    Reviewed-by: Kenneth Graunke <email address hidden>
    Signed-off-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit b2c606fe1defd1fb79612b48b528b2568c97def7
Author: Daniel Vetter <email address hidden>
Date: Tue Jan 17 12:50:12 2012 +0100

    drm/i915: kill i915_mem.c

    Some decent history digging indicates that this was to be used for the
    GLX_MESA_allocate_memory extension but never actually implemented for
    any released i915 userspace code.

    So just rip it out.

    v2: Fixup the Makefile.

    Acked-by: Dave Airlie <email address hidden>
    Cc: Keith Whitwell <email address hidden>
    Reviewed-by: Eric Anholt <email address hidden>
    Signed-Off-by: Daniel Vetter <email address hidden>

commit 493dea2876df144ec57a6a9efbe55db43c7a729e
Author: Thomas Meyer <email address hidden>
Date: Tue Nov 29 22:08:00 2011 +0100

    drm/i915: Use kcalloc instead of kzalloc to allocate array

    The advantage of kcalloc is, that will prevent integer overflows which could
    result from the multiplication of number of elements and size and it is also
    a bit nicer to read.

    The semantic patch that makes this change is available
    in https://lkml.org/lkml/2011/11/25/107

    Signed-off-by: Thomas Meyer <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit d7e96feab83d29e27d14c60f1fa7c716ef7880cd
Author: Adam Jackson <email address hidden>
Date: Tue Jul 26 15:39:46 2011 -0400

    drm/i915/dp: Check for AUXCH error before checking for success

    This is paranoid, but I am entirely willing to believe the hardware
    could come up with a condition where I get a status with both the 'done'
    and 'receive error' bits set.

    Signed-off-by: Adam Jackson <email address hidden>
    Acked-by: Jesse Barnes <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 092945e11c5b84f66dd08f0b87fb729715d377bc
Author: Adam Jackson <email address hidden>
Date: Tue Jul 26 15:39:45 2011 -0400

    drm/i915/dp: Use auxch precharge value of 5 everywhere

    The default in the Sandybridge docs is 5, as on Ironlake, and I have no
    reason to believe 3 would work any better.

    Signed-off-by: Adam Jackson <email address hidden>
    Acked-by: Jesse Barnes <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 6919132e7a307b1f181d7655b3ef64cc7581a5ef
Author: Adam Jackson <email address hidden>
Date: Tue Jul 26 15:39:44 2011 -0400

    drm/i915/dp: Tweak auxch clock divider for PCH

    Matches the advice in the Sandybridge documentation.

    Signed-off-by: Adam Jackson <email address hidden>
    Acked-by: Jesse Barnes <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 1f182b27d50ae9f5efeb28be5b65302c8a81e711
Author: Adam Jackson <email address hidden>
Date: Fri Oct 7 14:38:46 2011 -0400

    drm/i915: Remove a comment about PCH from the non-PCH path

    Signed-off-by: Adam Jackson <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 23c99e775d14f01ba45a5affd2fb51af4328359c
Author: Adam Jackson <email address hidden>
Date: Fri Oct 7 14:38:43 2011 -0400

    drm/i915: Fix assert_pch_hdmi_disabled to mention HDMI (not DP)

    Signed-off-by: Adam Jackson <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 28c057945ef5d164925db4fccc64207ee58c8681
Author: Adam Jackson <email address hidden>
Date: Fri Oct 7 14:38:42 2011 -0400

    drm/i915: Implement plane-disabled assertion for PCH too

    Signed-off-by: Adam Jackson <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 2aded1b6bb83cabe3ee5763e5c3834e36bf4a61f
Author: Simon Que <email address hidden>
Date: Thu Nov 10 17:50:26 2011 -0800

    drivers: i915: Fix BLC PWM register setup

    There is an error in i915_read_blc_pwm_ctl, where the register values
    are not being copied correctly. BLC_PWM_CTL and BLC_PWM_CTL2 are
    getting mixed up. This patch fixes that so that saveBLC_PWM_CTL2 and
    not saveBLC_PWM_CTL is copied to the BLC_PWM_CTL2 register.

    Signed-off-by: Simon Que <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 931872fceabacf2d4f8b6fbd51611c167e83164c
Author: Chris Wilson <email address hidden>
Date: Mon Jan 16 23:01:13 2012 +0000

    drm/i915: Check that plane/pipe is disabled before removing the fb

    Staring at an error state such as:

    PGTBL_ER: 0x00000400
        Display B: Invalid tiling
    fence[0] = 05001001
        valid, x-tiled, pitch: 512, start: 0x05000000, size: 1048576
    Pinned [2]:
      00000000 131072 0001 0001 00000000 P uncached
      00020000 4096000 0041 0000 00000000 P uncached (name: 1)
    Plane [1]:
      CNTR: c0000000 # enabled | gamma
      STRIDE: 00001400
      SIZE: 03ff04ff
      POS: 00000000
      ADDR: 05000000

    Suggests that we did not clear the DSPBCNTR prior to unpinning the
    framebuffer and reusing the GTT space. Impossible! Unless our DPMS
    bookkeeping ran afoul again...

    In the meantime add an assertion that the plane is decoupled from the
    framebuffer prior to release.

    Signed-off-by: Chris Wilson <email address hidden>
    Acked-by: Jesse Barnes <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit f3953dcb98bad1c3badf451bcf41bf83ae2ce542
Author: Eugeni Dodonov <email address hidden>
Date: Mon Nov 28 16:15:17 2011 -0200

    drm/i915: fix typo in function name

    Fix function name in comments, a left-over from when i965_reset was
    renamed to i915_reset.

    Signed-off-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit a7516a05311d0e2deb8ce8ae8b8c12a513ca8ca2
Author: Jesse Barnes <email address hidden>
Date: Thu Dec 15 12:30:37 2011 -0800

    drm/i915: split out pll divider code

    This cleans up the mode set path a little further, making it easier to
    extend for future platforms.

    Signed-off-by: Jesse Barnes <email address hidden>
    [danvet: shut up stupid gcc warning about potential use of
    un-initlized fp2]
    Signed-off-by: Daniel Vetter <email address hidden>

commit c65d77d83ccffc60f8729b2e7806cac2564ee1b1
Author: Jesse Barnes <email address hidden>
Date: Thu Dec 15 12:30:36 2011 -0800

    drm/i915: split 9xx refclk & sdvo tv code out

    Makes the mode set routine a little cleaner and easier to extend.

    Signed-off-by: Jesse Barnes <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 6b2d590540d219064a53638f485b75203131dfce
Author: Ben Widawsky <email address hidden>
Date: Wed Jan 4 14:04:33 2012 -0800

    agp/intel: Add pci id for hostbridge from has/qemu

    This is needed to run the simulator.

    Cc: Jesse Barnes <email address hidden>
    Signed-off-by: Ben Widawsky <email address hidden>
    [danvet: added a comment in case people wonder what it's for.]
    Signed-off-by: Daniel Vetter <email address hidden>

commit 5a117db77e47e3946d1aaa7ce8deafafd9d76746
Author: Eugeni Dodonov <email address hidden>
Date: Thu Jan 5 09:34:29 2012 -0200

    drm/i915: there is no pipe CxSR on ironlake

    After checking the specs and discussing with Jesse, turns out CxSR is not
    available on Ironlake and gen5, and its advertisement on the device
    description is misleading.

    Acked-by: Jesse Barnes <email address hidden>
    Signed-off-by: Eugeni Dodonov <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit cec2f356d59d9e070413e5966a3c5a1af136d948
Author: Sean Paul <email address hidden>
Date: Tue Jan 10 15:09:36 2012 -0800

    drm/i915: Only look for matching clocks for LVDS downclock

    This patch enforces that the downclock clock source is the same as the preferred
    clock source for LVDS. This fixes a bug where the driver chooses a downclock
    clock source with a different P than the preferred mode clock source. This
    happened even if the preferred clock source implemented an acceptable rate for
    the downclock. The result of this bug is that downclock is disabled.

    Signed-off-by: Sean Paul <email address hidden>
    Reviewed-by: Jesse Barnes <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit 0b8ecdda1943a05c8e7896f0b5f1addf39269927
Author: Adam Jackson <email address hidden>
Date: Tue Sep 13 14:11:09 2011 -0400

    drm/i915: Silence _DSM errors

    <@ajax> mjg59: how concerned should i be about [drm:intel_dsm_pci_probe]
            *ERROR* failed to get supported _DSM functions ?
    <@mjg59> ajax: Entirely unconcerned

    Signed-off-by: Adam Jackson <email address hidden>
    Acked-by: Jesse Barnes <email address hidden>
    Signed-off-by: Daniel Vetter <email address hidden>

commit ff626cc8fffc59cafe7ab49acc55780e4513be47
Merge: 98b4483 cb1ecf2
Author: Sumit Semwal <email address hidden>
Date: Sun Mar 18 15:08:18 2012 +0530

    Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into for-next

commit 98b4483c9bebaad5944c7788ef6a60d154e4ef0f
Author: Rob Clark <email address hidden>
Date: Fri Mar 16 11:04:41 2012 -0500

    dma-buf: add get_dma_buf()

    Works in a similar way to get_file(), and is needed in cases such as
    when the exporter needs to also keep a reference to the dmabuf (that
    is later released with a dma_buf_put()), and possibly other similar
    cases.

    Signed-off-by: Rob Clark <email address hidden>
    Reviewed-by: Dave Airlie <email address hidden>
    Reviewed-by: Kyungmin Park <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit 3f543446953d92dba5caa271296760399fc9c16b
Author: Dave Airlie <email address hidden>
Date: Fri Mar 16 10:34:02 2012 +0000

    dma-buf: pass flags into dma_buf_fd.

    We need to pass the flags into dma_buf_fd at this point,
    so the flags end up doing the right thing for O_CLOEXEC.

    Signed-off-by: Dave Airlie <email address hidden>
    Signed-off-by: Rob Clark <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit ab006e704d13f9db502b62e04d761e28540959e3
Author: Sumit Semwal <email address hidden>
Date: Fri Jan 27 15:09:27 2012 +0530

    dma-buf: add dma_data_direction to unmap dma_buf_op

    Some exporters may use DMA map/unmap APIs in dma-buf ops, which require
    enum dma_data_direction for both map and unmap operations.

    Thus, the unmap dma_buf_op also needs to have enum dma_data_direction as
    a parameter.

    Reported-by: Tomasz Stanislawski <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>

commit 27f730ae85cf43cbacf4f81103f987db3d5679a2
Author: Laurent Pinchart <email address hidden>
Date: Thu Jan 26 12:27:25 2012 +0100

    dma-buf: Move code out of mutex-protected section in dma_buf_attach()

    Some fields can be set without mutex protection. Initialize them before
    locking the mutex.

    Signed-off-by: Laurent Pinchart <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit 615103add715717a1cc17e237d64dec38e622610
Author: Laurent Pinchart <email address hidden>
Date: Thu Jan 26 12:27:24 2012 +0100

    dma-buf: Return error instead of using a goto statement when possible

    Remove an error label in dma_buf_attach() that just returns an error
    code.

    Signed-off-by: Laurent Pinchart <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit 53448da53090cc686ac2938ee88297c0dd37ee1b
Author: Laurent Pinchart <email address hidden>
Date: Thu Jan 26 12:27:23 2012 +0100

    dma-buf: Remove unneeded sanity checks

    ops, ops->map_dma_buf and ops->unmap_dma_buf are guaranteed to be
    non-NULL by a check in dma_buf_export(). Remove NULL checks on those
    variables in the other API functions.

    Signed-off-by: Laurent Pinchart <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit 3eb6701ea04a3525f2f218ecc924cd14fa78b643
Author: Laurent Pinchart <email address hidden>
Date: Thu Jan 26 12:27:22 2012 +0100

    dma-buf: Constify ops argument to dma_buf_export()

    This allows drivers to make the dma buf operations structure constant.

    Signed-off-by: Laurent Pinchart <email address hidden>
    Reviewed-by: Daniel Vetter <email address hidden>
    Signed-off-by: Sumit Semwal <email address hidden>

commit ae927777447fa62a7195cee1760c6ea35d427382
Merge: 88de86e a8e8195
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:23 2012 +0400

    Merge branch 'tracking-exynos_thermal_framework_V2' into linux-linaro

commit a8e8195749ad1696afb4aa40f749b6ea567a6ed2
Author: Amit Daniel Kachhap <email address hidden>
Date: Sun Mar 18 19:56:32 2012 +0530

    ARM: exynos4: Add thermal sensor driver platform device support

    This patch adds necessary source definations needed for TMU driver and
    the platform device support.

    Signed-off-by: Amit Daniel Kachhap <email address hidden>

commit 85135b5f37cee94dadabb864f21f75173c2aff4e
Author: Amit Daniel Kachhap <email address hidden>
Date: Sun Mar 18 19:51:08 2012 +0530

    thermal: exynos4: Register the tmu sensor with the kernel thermal layer

    This code added creates a link between temperature sensors, linux thermal
    framework and cooling devices for samsung exynos platform. This layer
    monitors the temperature from the sensor and informs the generic thermal
    layer to take the necessary cooling action.

    Signed-off-by: Amit Daniel Kachhap <email address hidden>

commit c910e9790b8e9a3ec62c5f7b197c50cdf1956d4f
Author: Amit Daniel Kachhap <email address hidden>
Date: Thu Mar 15 11:37:19 2012 +0530

    hwmon: exynos4: Move thermal sensor driver to driver/thermal directory

    This movement is needed because the hwmon entries and corresponding
    sysfs interface is a duplicate of utilities already provided by
    driver/thermal/thermal_sys.c. The goal is to place it in thermal folder
    and add necessary functions to use the in-kernel thermal interfaces.

    Signed-off-by: Amit Daniel Kachhap <email address hidden>
    Signed-off-by: Donggeun Kim <email address hidden>

commit b00ba63608caa947a0c01a2fbd0bc8a452458c03
Author: Amit Daniel Kachhap <email address hidden>
Date: Sun Mar 18 18:05:10 2012 +0530

    thermal: Add generic cpuhotplug cooling implementation

    This patch adds support for generic cpu thermal cooling low level
    implementations using cpuhotplug based on the thermal level requested
    from user. Different cpu related cooling devices can be registered by the
    user and the binding of these cooling devices to the corresponding
    trip points can be easily done as the registration APIs return the
    cooling device pointer. The user of these APIs are responsible for
    passing the cpumask.

    Signed-off-by: Amit Daniel Kachhap <email address hidden>

commit 0457845da7dfe2125aa8795ae4e9aad83a6277e8
Author: Amit Daniel Kachhap <email address hidden>
Date: Sun Mar 18 18:10:15 2012 +0530

    thermal: Add generic cpufreq cooling implementation

    This patch adds support for generic cpu thermal cooling low level
    implementations using frequency scaling up/down based on the registration
    parameters. Different cpu related cooling devices can be registered by the
    user and the binding of these cooling devices to the corresponding
    trip points can be easily done as the registration APIs return the
    cooling device pointer. The user of these APIs are responsible for
    passing clipping frequency . The drivers can also register to recieve
    notification about any cooling action called. Even the driver can effect
    the cooling action by modifying the default data such as freq_clip_max if
    needed.

    Signed-off-by: Amit Daniel Kachhap <email address hidden>

commit a9bec4490a2b08fefb39e3967f5b6df2772e2a3e
Author: Amit Daniel Kachhap <email address hidden>
Date: Sun Mar 18 16:48:12 2012 +0530

    thermal: Add a new trip type to use cooling device instance number

    This patch adds a new trip type THERMAL_TRIP_STATE_INSTANCE. This
    trip behaves same as THERMAL_TRIP_ACTIVE but also passes the cooling
    device instance number. This helps the cooling device registered as
    different instances to perform appropriate cooling action decision in
    the set_cur_state call back function.

    Also since the trip temperature's are in ascending order so some logic
    is put in place to skip the un-necessary checks.

    Signed-off-by: Amit Daniel Kachhap <email address hidden>

commit 88de86ec98bce1c4269cbd8f130c02f65dbe7edc
Merge: 8dc7cdf b6e497d
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:22 2012 +0400

    Merge branch 'tracking-emmc' into linux-linaro

commit b6e497deb81d56183288936e6e95d3e46319ee9b
Author: Saugata Das <email address hidden>
Date: Wed Dec 21 13:09:17 2011 +0530

    mmc: MMC-4.5 Data Tag Support

    MMC-4.5 data tag feature will be used to store the file system meta-data
    in the tagged region of eMMC. This will improve the write and subsequent
    read transfer time for the meta data.

    Signed-off-by: Saugata Das <email address hidden>
    Tested-by: Venkatraman S <email address hidden>
    Signed-off-by: Chris Ball <email address hidden>

commit d9078fb59c20dff158a1a8a99ce961245c33817e
Author: Saugata Das <email address hidden>
Date: Fri Mar 2 18:15:09 2012 +0530

    REQ_META set during meta data write

    Today, storage devices like eMMC has special features like data tagging
    (introduced in MMC-4.5 version) in order to improve performance of some
    specific writes. On MMC stack, data tagging is used for all writes which has
    REQ_META flag set. On EXT4, however, currently REQ_META is set only for read.
    This patch adds the capability to add REQ_META flag during meta data write.
    This patch adds new function set_buffer_meta, which is used to set a bit
    BH_Meta in the b_state field when meta data and super block is made dirty.

    Signed-off-by: Saugata Das <email address hidden>
    Acked-by: Arnd Bergmann <email address hidden>

    Changelog v2:
     - Removed check for WRITE when setting REQ_META in submit_bh
    Changelog v1:
     - Introduction of REQ_META during write

commit 8dc7cdf843817de6af2839df284b2aa11f26102b
Merge: d1ea0e9 20362d5
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:21 2012 +0400

    Merge branch 'tracking-ufs' into linux-linaro

commit 20362d5791fc0c0d3138b20f8ef8ed58e9c60b8d
Author: Santosh Yaraganavi <email address hidden>
Date: Wed Feb 29 12:11:54 2012 +0530

    Documentation: UFS Host Controller Driver

    The document provides Universal Flash Storage(UFS) and
    UFS host controller driver overview.

    Signed-off-by: Santosh Yaraganavi <email address hidden>
    Reviewed-by: Vishak G <email address hidden>
    Reviewed-by: Namjae Jeon <email address hidden>

commit 01667557f6b0e3aafcc88917388bf3aea1dae161
Author: Santosh Yaraganavi <email address hidden>
Date: Wed Feb 29 12:11:53 2012 +0530

    ufshcd: SCSI error handling

    UFSHCD SCSI error handling includes following implementations,
     - Abort task
     - Device reset
     - Host reset

    Signed-off-by: Santosh Yaraganavi <email address hidden>
    Signed-off-by: Vinayak Holikatti <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>
    Reviewed-by: Vishak G <email address hidden>
    Reviewed-by: Girish K S <email address hidden>
    Reviewed-by: Namjae Jeon <email address hidden>

commit 6dbda8b398b21bfb81035378e5ed66013d14f848
Author: Santosh Yaraganavi <email address hidden>
Date: Wed Feb 29 12:11:52 2012 +0530

    ufshcd: UFSHCI error handling

    UFSHCI error handling includes support for:
     - UFS host controller errors
     - System bus errors
     - Unipro errors

    Signed-off-by: Santosh Yaraganavi <email address hidden>
    Signed-off-by: Vinayak Holikatti <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>
    Reviewed-by: Vishak G <email address hidden>
    Reviewed-by: Girish K S <email address hidden>
    Reviewed-by: Namjae Jeon <email address hidden>

commit e97660f2cbb2f0e8604b5ff3530a52ffadc4c6e0
Author: Santosh Yaraganavi <email address hidden>
Date: Wed Feb 29 12:11:51 2012 +0530

    ufshcd: UFS UTP Transfer requests handling

    This patch adds support for Transfer request handling.

    ufshcd includes following implementations:
     - SCSI queuecommand
     - Compose UPIU(UFS Protocol information unit)
     - Issue commands to UFS host controller
     - Handle completed commands

    Signed-off-by: Santosh Yaraganavi <email address hidden>
    Signed-off-by: Vinayak Holikatti <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>
    Reviewed-by: Vishak G <email address hidden>
    Reviewed-by: Girish K S <email address hidden>
    Reviewed-by: Namjae Jeon <email address hidden>

commit 9ce11cbad1b4feea387a6db2000d1ca30665bffe
Author: Santosh Yaraganavi <email address hidden>
Date: Wed Feb 29 12:11:50 2012 +0530

    ufshcd: UFS Host controller driver

    This patch adds support for Universal Flash Storage(UFS)
    host controllers. The UFS host controller driver
    includes host controller initialization method.

    The Initialization process involves following steps:
     - Initiate UFS Host Controller initialization process by writing
       to Host controller enable register
     - Configure UFS Host controller registers with host memory space
       datastructure offsets.
     - Unipro link startup procedure
     - Check for connected device
     - Configure UFS host controller to process requests
     - Enable required interrupts
     - Configure interrupt aggregation

    Signed-off-by: Santosh Yaraganavi <email address hidden>
    Signed-off-by: Vinayak Holikatti <email address hidden>
    Reviewed-by: Arnd Bergmann <email address hidden>
    Reviewed-by: Vishak G <email address hidden>
    Reviewed-by: Girish K S <email address hidden>
    Reviewed-by: Namjae Jeon <email address hidden>

commit d1ea0e9ebe0d8c1a6d6b64db0b1fb03a609cb17b
Merge: 3676d8b 85141dd
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:20 2012 +0400

    Merge branch 'tracking-linaro_cpuidle' into linux-linaro

commit 85141dd3025c5c41d921220ddac6fdb8e2393040
Author: Daniel Lezcano <email address hidden>
Date: Tue Mar 20 00:16:40 2012 +0100

    disable the cpuidle for the db5500 board

    As the different prcmu routines are not supporting the db5500
    board and will return EINVAL, it is pointless to use the other
    states than WFI.

    Signed-off-by: Daniel Lezcano <email address hidden>

commit 6f67c47532b20be74f2201589a98ceec2209ea09
Author: Daniel Lezcano <email address hidden>
Date: Tue Mar 20 00:16:39 2012 +0100

    ux500 : add cpuidle for WFI and ARM retention

    This patch adds the cpuidle driver for the ux500 SoC.
    The boards saves 12mA with these states. It is based on the latest
    cpuidle consolidation from Robert Lee.

    The cpu can go to retention only if the other core is in WFI.

    If the other cpu is in WFI and we decoupled the gic from the cores,
    then we have the guarantee, it won't be wake up.

    It is up to the prcmu firmware to recouple the gic automatically
    after the power state mode is selected.

    Signed-off-by: Daniel Lezcano <email address hidden>

commit 569aa60b8a69618517202fb3490c08e716327395
Author: Daniel Lezcano <email address hidden>
Date: Tue Mar 20 00:16:38 2012 +0100

    fix compilation error with CONFIG_DB550 and CONFIG_CPU_IDLE

     * db5500_prcmu_set_power_state
     * db5500_prcmu_enable_wakeups

    are called from prcmu_set_power_state and prcmu_enable_wakeups but
    they are not defined.

    When applying the cpuidle patch, the code invokes both functions
    and that leads to an undefined functions compilation error.

    So let's do like the other functions and return EINVAL.

    Signed-off-by: Daniel Lezcano <email address hidden>

commit 5587dae019fae5ed313599954895a330a2f58457
Author: Daniel Lezcano <email address hidden>
Date: Tue Mar 20 00:16:37 2012 +0100

    fix prcmu routine backport from mfd-2.6

    The mfd-2.6 kernel tree use the cpu_is_u5500 function
    while this version use machine_is_u5500.

    An error was introduced by backporting prcmu_is_cpu_in_wfi function
    from the mfd-2.6 kernel tree.

    Signed-off-by: Daniel Lezcano <email address hidden>

commit 3e4e9a48c8057d76bc5d45a2337c0406c2a77b90
Author: Daniel Lezcano <email address hidden>
Date: Mon Mar 19 20:15:53 2012 -0500

    mfd : ux500 - check if the other core is in WFI

    This patch allows to check if the other core is in WFI
    mode. It is the last check the idle routine has to do before
    entering into the retention state.

    Signed-off-by: Daniel Lezcano <email address hidden>

commit c20703f92b21c9c77caa9beffc2506a31ba3db10
Author: Daniel Lezcano <email address hidden>
Date: Mon Mar 19 20:15:53 2012 -0500

    mfd : ux500 - check pending irq on the prcmu

    Signed-off-by: Daniel Lezcano <email address hidden>

commit e2e23afdc93d569c9bb9947c6794098920dc02a0
Author: Daniel Lezcano <email address hidden>
Date: Mon Mar 19 20:15:53 2012 -0500

    mfd : ux500 - copy gic settings

    Signed-off-by: Daniel Lezcano <email address hidden>

commit 01d9ee53ab2c4f6088ac8a2661f5ce5977e57d10
Author: Daniel Lezcano <email address hidden>
Date: Mon Mar 19 20:15:52 2012 -0500

    mfd : ux500 : check pending irq on gic

    Signed-off-by: Daniel Lezcano <email address hidden>

commit 324ae6098c81213ab7de035dcd0cbabf29029b1f
Author: Daniel Lezcano <email address hidden>
Date: Mon Mar 19 20:15:52 2012 -0500

    mfd : ux500 - fix redefined includes

    Signed-off-by: Daniel Lezcano <email address hidden>

commit f3197067dc7d046a6540bf7890d965958d0f2ae9
Author: Daniel Lezcano <email address hidden>
Date: Mon Mar 19 20:15:52 2012 -0500

    mfd : ux500 - decouple/recouple gic from the PRCMU

    This patch allows to decouple and recouple the gic from the PRCMU.
    This is needed to put the A9 core in retention mode with the cpuidle
    driver.

    Signed-off-by: Daniel Lezcano <email address hidden>

commit bd19e7dbf88fcec83c81f8042047a284e6f90566
Author: Robert Lee <email address hidden>
Date: Mon Mar 19 20:15:52 2012 -0500

    ARM: exynos: Consolidate time keeping and irq enable

    Enable core cpuidle timekeeping and irq enabling and remove that
    handling from this code.

    Signed-off-by: Robert Lee <email address hidden>

commit dabc71e521bc8be46926a9eafcb7bd9453f44152
Author: Robert Lee <email address hidden>
Date: Mon Mar 19 20:15:52 2012 -0500

    ARM: imx: Add imx6q cpuidle driver

    Add basic imx6q cpuidle driver. For now, only basic WFI state is
    supported. Deeper idle will be added in the future.

    Signed-off-by: Robert Lee <email address hidden>

commit 1dfe2d069e719d7714389454cab4599aafe41dbc
Author: Robert Lee <email address hidden>
Date: Mon Mar 19 20:15:51 2012 -0500

    ARM: imx: Add imx5 cpuidle driver

    Add imx5 cpuidle driver.

    Signed-off-by: Robert Lee <email address hidden>

commit d030a8b5e4c9d696bf5410300504f278773e01b0
Author: Robert Lee <email address hidden>
Date: Mon Mar 19 20:15:51 2012 -0500

    ARM: imx: Add common imx cpuidle init functionality.

    Add common cpuidle init functionality that can be used by various
    imx platforms.

    Signed-off-by: Robert Lee <email address hidden>

commit b53662cb0a3b150f301a7e5e233cc8de1f892645
Author: Robert Lee <email address hidden>
Date: Mon Mar 19 20:15:51 2012 -0500

    cpuidle: Add common time keeping and irq enabling

    Make necessary changes to implement time keeping and irq enabling
    in the core cpuidle code. This will allow the removal of these
    functionalities from various platform cpuidle implementations whose
    timekeeping and irq enabling follows the form in this common code.

    Signed-off-by: Robert Lee <email address hidden>
    Tested-by: Jean Pihet<email address hidden>
    Tested-by: Amit Daniel<email address hidden>
    Tested-by: Robert Lee<email address hidden>
    Reviewed-by: Kevin Hilman <email address hidden>
    Reviewed-by: Daniel Lezcano <email address hidden>
    Reviewed-by: Deepthi Dharwar<email address hidden>
    Acked-by: Jean Pihet<email address hidden>

commit 10491ab20450c7548b6e590a7aba2260c40661c7
Author: Amit Daniel Kachhap <email address hidden>
Date: Mon Mar 19 20:15:51 2012 -0500

    ARM: EXYNOS: Enable l2 configuration through device tree

    This patch enables calling generic l2 setup functions if device tree is used.

    Signed-off-by: Amit Daniel Kachhap <email address hidden>
    Signed-off-by: Kukjin Kim <email address hidden>

commit 8005472caf15d54415f6715223167e1474381afa
Author: Amit Daniel Kachhap <email address hidden>
Date: Mon Mar 19 20:15:51 2012 -0500

    ARM: EXYNOS: remove useless code to save/restore L2

    Following the merge of CPU PM notifiers and L2 resume code, this patch
    removes useless code to save and restore L2 registers.

    This is now automatically covered by suspend calls which integrated
    CPU PM notifiers and new sleep code that allows to resume L2 before MMU
    is turned on.

    Signed-off-by: Lorenzo Pieralisi <email address hidden>
    Signed-off-by: Amit Daniel Kachhap <email address hidden>
    Signed-off-by: Kukjin Kim <email address hidden>

commit 0f34107d88b8c07ee70331ef4f20d36c6a720dc2
Author: Amit Daniel Kachhap <email address hidden>
Date: Mon Mar 19 20:15:50 2012 -0500

    ARM: EXYNOS: save L2 settings during bootup

    This patch adds code to save L2 register configuration at boot, and
    later used to resume L2 before MMU is enabled in suspend and cpuidle
    resume paths.

    Signed-off-by: Lorenzo Pieralisi <email address hidden>
    Signed-off-by: Amit Daniel Kachhap <email address hidden>
    Signed-off-by: Kukjin Kim <email address hidden>

commit ad393c1fd8e28dcbba6d29f0eea2b4a261c4696c
Author: Amit Daniel Kachhap <email address hidden>
Date: Mon Mar 19 20:15:50 2012 -0500

    ARM: S5P: add L2 early resume code

    This patch adds code to resume L2 before MMU is enabled in
    suspend and cpuidle resume paths. s3c_cpu_resume is moved to the
    data section with appropriate comments.

    Signed-off-by: Lorenzo Pieralisi <email address hidden>
    Signed-off-by: Amit Daniel Kachhap <email address hidden>
    Signed-off-by: Kukjin Kim <email address hidden>

commit 4d75833447deecd29d73eaca82ecb7838d49f558
Author: Amit Daniel Kachhap <email address hidden>
Date: Mon Mar 19 20:15:50 2012 -0500

    ARM: EXYNOS: Add support AFTR mode on EXYNOS4210

    This patch adds support AFTR(ARM OFF TOP RUNNING) mode in
    cpuidle driver. L2 cache keeps their data in this mode.
    This patch ports the code to the latest interfaces to
    save/restore CPU state inclusive of CPU PM notifiers, l2
    resume and cpu_suspend/resume.

    Signed-off-by: Jaecheol Lee <email address hidden>
    Signed-off-by: Lorenzo Pieralisi <email address hidden>
    Signed-off-by: Amit Daniel Kachhap <email address hidden>
    [<email address hidden>: fixed for non-smp as per Tushar's pointing out]
    Signed-off-by: Kukjin Kim <email address hidden>

commit 3676d8bb4d4d2ce8bb32d7c3ead59d1758431fce
Merge: 4695ea3 648ec27
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:19 2012 +0400

    Merge branch 'tracking-armlt-gator' into linux-linaro

commit 648ec275cc53a16f7ae503314bfd4fd9bd525dd0
Author: Jon Medhurst <email address hidden>
Date: Fri Mar 16 17:52:01 2012 +0000

    gator/driver: Add config for building the module in-tree

    Signed-off-by: Jon Medhurst <email address hidden>

commit 587f10a737e32807821b8bd438853f0c215cf0e5
Author: Jon Medhurst <email address hidden>
Date: Fri Mar 16 17:49:42 2012 +0000

    gator/driver: Makefile fixes for building in-tree

    Signed-off-by: Jon Medhurst <email address hidden>

commit 3f6e6ef41f2946737532eaf5fcc9b03320649a49
Author: Jon Medhurst <email address hidden>
Date: Fri Mar 16 17:48:46 2012 +0000

    gator/driver: Makefile fix for output path of generated file gator_events.h

    Signed-off-by: Jon Medhurst <email address hidden>

commit 7cad876d059cd1b86990b799850f9596ad68c8fb
Author: Wade Cherry <email address hidden>
Date: Mon Mar 5 09:22:16 2012 +0000

    gator/driver: Fix build failure on Linux 3.3

    Some meminfo tracepoint APIs were renamed in commit b413d48a
    (mm-tracepoint: rename page-free events)

    Signed-off-by: Wade Cherry <email address hidden>
    Signed-off-by: Jon Medhurst <email address hidden>

commit 18f88ad877a9d3c8bc21ceb0b565e6a32a7a07cc
Author: Jon Medhurst <email address hidden>
Date: Fri Mar 16 17:36:42 2012 +0000

    gator/driver: Version 5.9

    Signed-off-by: Jon Medhurst <email address hidden>

commit 1acaa28b2098f7e2aa8eca492c569e894e1a4b79
Author: Wade Cherry <email address hidden>
Date: Thu Feb 23 09:56:29 2012 +0000

    gator/daemon: Fix counters initialisation

    In certain circumstances counter were not enabled correctly. Fixed.

    Signed-off-by: Wade Cherry <email address hidden>
    Signed-off-by: Pawel Moll <email address hidden>
    Signed-off-by: Jon Medhurst <email address hidden>

commit 685fec4d4f4fb6bca850be6659e795e8368ce613
Author: Jon Medhurst <email address hidden>
Date: Sat Mar 17 10:25:47 2012 +0000

    gator/daemon: Version 5.9

    Signed-off-by: Jon Medhurst <email address hidden>

commit 4695ea361dd18108684d875c337e768d5371f869
Merge: e854823 e7cc3ac
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:18 2012 +0400

    Merge branch 'tracking-gcl-irqdomain-next' into linux-linaro

commit e7cc3aca0f6a36b018934264ee20bee45dc13e29
Author: Grant Likely <email address hidden>
Date: Fri Mar 2 21:05:31 2012 -0700

    dt: fix twl4030 for non-dt compile on x86

    twl4030 still doesn't build correctly for x86 allmodconfig. This
    fix solves the missing symbol errors.

    Signed-off-by: Grant Likely <email address hidden>
    Acked-by: Benoit Cousson <email address hidden>

commit 280ad7fda5f95211857fda38960f2b6fdf6edd3e
Author: Grant Likely <email address hidden>
Date: Fri Feb 24 14:58:54 2012 -0700

    mfd: twl-core: Add IRQ_DOMAIN dependency

    TWL4030 depends on IRQ_DOMAIN support, so this patch selects it in Kconfig.
    It used to be that CONFIG_IRQ_DOMAIN must only be selected by the architecture,
    but recent cleanups have fixed it so that it is safe to select from anywhere.

    Signed-off-by: Benoit Cousson <email address hidden>
    [grant.likely: Changed from a depends to a select]
    Signed-off-by: Grant Likely <email address hidden>
    Cc: Samuel Ortiz <email address hidden>

commit 964dba283439a4db50dae61d3afe6e438b7fc30f
Author: Grant Likely <email address hidden>
Date: Fri Feb 24 14:58:34 2012 -0700

    devicetree: Add empty of_platform_populate() for !CONFIG_OF_ADDRESS (sparc)

    Sparc has its own helpers for translating address ranges when the device
    tree is parsed at boot time, and it isn't able to use of_platform_populate().
    However, there are some device drivers that want to use that function on
    other DT enabled platforms (ie. TWL4030). This patch adds an empty
    of_platform_populate() implementation that returns an error when
    CONFIG_OF_ADDRESS is not selected.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Benoit Cousson <email address hidden>
    Cc: Samuel Ortiz <email address hidden>

commit d593f25ff263b1a7752b7380f8b7d57809206c40
Author: Grant Likely <email address hidden>
Date: Fri Feb 24 08:24:17 2012 -0700

    irq_domain: Centralize definition of irq_dispose_mapping()

    Several architectures define their own empty irq_dispose_mapping(). Since
    the irq_domain code is centralized now, there is little need to do so. This
    patch removes them and creates a new empty copy when !CONFIG_IRQ_DOMAIN is
    selected.

    The patch also means that IRQ_DOMAIN becomes selectable on all architectures.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: "David S. Miller" <email address hidden>
    Cc: Jonas Bonn <email address hidden>
    Cc: <email address hidden>
    Cc: <email address hidden>

commit abd2363f6a5f1030b935e0bdc15cf917313b3b10
Author: Grant Likely <email address hidden>
Date: Fri Feb 24 08:07:06 2012 -0700

    irq_domain/mips: Allow irq_domain on MIPS

    This patch makes IRQ_DOMAIN usable on MIPS. It uses an ugly workaround
    to preserve current behaviour so that MIPS has time to add irq_domain
    registration to the irq controller drivers. The workaround will be
    removed in Linux v3.6

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Ralf Baechle <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: <email address hidden>

commit b4e518547da042fdc65bd4bdafd046fed13337d5
Author: Grant Likely <email address hidden>
Date: Fri Dec 16 15:50:17 2011 -0700

    irq_domain/x86: Convert x86 (embedded) to use common irq_domain

    This patch removes the x86-specific definition of irq_domain and replaces
    it with the common implementation.

    Signed-off-by: Grant Likely <email address hidden>
    Acked-by: Sebastian Andrzej Siewior <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Thomas Gleixner <email address hidden>

commit 6d166fec12967063e0e709a935bba8c48fcde99e
Author: Paul Gortmaker <email address hidden>
Date: Wed Feb 22 18:35:03 2012 -0500

    ppc-6xx: fix build failure in flipper-pic.c and hlwd-pic.c

    The commit bae1d8f19983fbfa25559aa3cb6a81a84aa82a18 (linux-next)

      "irq_domain/powerpc: Use common irq_domain structure instead of irq_host"

    made this change:

       -static struct irq_host *flipper_irq_host;
       +static struct irq_domain *flipper_irq_host;

    and this change:

       -static struct irq_host *hlwd_irq_host;
       +static struct irq_domain *hlwd_irq_host;

    The intent was to change the type, and not the name, but then in a
    couple of instances, it looks like the sed to change the irq_domain_ops
    name inadvertently also changed the irq_host name where it was not
    supposed to, causing build failures.

    Signed-off-by: Paul Gortmaker <email address hidden>
    Signed-off-by: Grant Likely <email address hidden>

commit 2462bacd0334d918f9fcd79fc59c403b76b36f8a
Author: Grant Likely <email address hidden>
Date: Thu Jan 26 14:10:13 2012 -0700

    irq_domain/microblaze: Convert microblaze to use irq_domains

    This patch converts Microblaze to use the irq_domain remapper and get
    away from hard coding the offset between hwirq number and the linux irq
    number space. This also paves the way for multiple interrupt controllers.

    v2: Don't enable SPARSE_IRQ and keep NR_IRQS set to 33

    Signed-off-by: Grant Likely <email address hidden>
    Signed-off-by: Michal Simek <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: John Williams <email address hidden>
    Cc: John Linn <email address hidden>

commit ff8c3ab8161d0df52858966e0347e05791da40df
Author: Grant Likely <email address hidden>
Date: Tue Jan 24 17:09:13 2012 -0700

    irq_domain/powerpc: Replace custom xlate functions with library functions

    This patch converts a number of the powerpc drivers to use the common library
    of irq_domain xlate functions, dropping a bunch of lines in the process.

    v5: - Remove tsi108 changes from patch

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 9f70b8eb3cd37c6ef3371f972db799250e3eb86e
Author: Grant Likely <email address hidden>
Date: Thu Jan 26 12:24:34 2012 -0700

    irq_domain/powerpc: constify irq_domain_ops

    Make all the irq_domain_ops structures in powerpc 'static const'

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit c1e572e6506082ed120a13454b2cc2f525ee7aa6
Author: Grant Likely <email address hidden>
Date: Thu Jan 26 08:40:09 2012 -0700

    irq_domain/c6x: Use library of xlate functions

    The c6x irq controllers don't need to define custom .xlate hooks

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Mark Salter <email address hidden>
    Cc: Thomas Gleixner <email address hidden>

commit 15a25980d450c81e514c2a8724b575461961a30d
Author: Grant Likely <email address hidden>
Date: Thu Jan 26 12:25:18 2012 -0700

    irq_domain/c6x: constify irq_domain structures

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Mark Salter <email address hidden>
    Cc: Thomas Gleixner <email address hidden>

commit 0bd761e1b6d909d3fd08841be7d5035f9fde8a53
Author: Mark Salter <email address hidden>
Date: Thu Jan 26 09:26:21 2012 -0500

    irq_domain/c6x: Convert c6x to use generic irq_domain support.

    The C6X IRQ support was copied almost verbatim from the PowerPC virtual IRQ
    code. The PowerPC code was used as the basis for generic irq_domain support,
    so this patch mostly copies what what done to arch/powerpc by Grant Likely
    in his irq_domain patch series.

    Signed-off-by: Mark Salter <email address hidden>
    Signed-off-by: Grant Likely <email address hidden>
    Cc: Aurelien Jacquiot <email address hidden>
    Cc: Thomas Gleixner <email address hidden>

commit a18dc81bf58258ac0920bec26b91656cb0140d2a
Author: Grant Likely <email address hidden>
Date: Thu Jan 26 12:12:14 2012 -0700

    irq_domain: constify irq_domain_ops

    Make irq_domain_ops pointer a constant to make it safer for multiple
    instances to share the same ops pointer and change the irq_domain code
    so that it does not modify the ops.

    v4: Fix mismatched type reference in powerpc code

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 16b2e6e2f31dda41f114aa0acade04f7e10f67c9
Author: Grant Likely <email address hidden>
Date: Thu Jan 26 11:26:52 2012 -0700

    irq_domain: Create common xlate functions that device drivers can use

    Rather than having each interrupt controller driver creating its own barely
    unique .xlate function for irq_domain, create a library of translators which
    any driver can use directly.

    v5: - Remove irq_domain_xlate_pci(). It was incorrect.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Mark Salter <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 6b783f7c5dde2648fa0bbe7fc8ac80d78699e67f
Author: Grant Likely <email address hidden>
Date: Tue Jan 10 17:09:30 2012 -0700

    irq_domain: Remove irq_domain_add_simple()

    irq_domain_add_simple() was a stop-gap measure until complete irq_domain
    support was complete. This patch removes the irq_domain_add_simple()
    interface.

    This patch also drops the explicit irq_domain initialization performed
    by the mach-versatile code because the versatile interrupt controller
    already has irq_domain support built into it. This was a bug that was
    hanging around quietly for a while, but with the full irq_domain which
    actually verifies that irq_domain ranges are available it would cause
    the registration to fail and the system wouldn't boot.

    v4: Fixed number of irqs in mx5 gpio code
    v2: Updated to pass in host_data pointer on irq_domain allocation.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Cc: Russell King <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 75294957be1dee7d22dd7d90bd31334ba410e836
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:57 2012 -0700

    irq_domain: Remove 'new' irq_domain in favour of the ppc one

    This patch removes the simplistic implementation of irq_domains and enables
    the powerpc infrastructure for all irq_domain users. The powerpc
    infrastructure includes support for complex mappings between Linux and
    hardware irq numbers, and can manage allocation of irq_descs.

    This patch also converts the few users of irq_domain_add()/irq_domain_del()
    to call irq_domain_add_legacy() instead.

    v3: Fix bug that set up too many irqs in translation range.
    v2: Fix removal of irq_alloc_descs() call in gic driver

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 5769089ac72569d024817270ab79fdf0b9046dde
Author: Benoit Cousson <email address hidden>
Date: Tue Feb 14 14:06:56 2012 -0700

    mfd: twl-core.c: Fix the number of interrupts managed by twl4030

    TWL4030 does handle 3 different interrupts ranges: 8 for the core, 8 for
    the power events and 18 for the GPIOs.

    Change the total number of interrupts managed by TWL4030 from 8 to 34.

    Signed-off-by: Benoit Cousson <email address hidden>
    Signed-off-by: Grant Likely <email address hidden>

commit a850a7554442f08d3e910c6eeb4ee216868dda1e
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:55 2012 -0700

    of/address: add empty static inlines for !CONFIG_OF

    As the title says, this patch adds empty implementations for the address
    translation functions so that they can be used when CONFIG_OF is disabled.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>

commit 1bc04f2cf8c2a1feadbd994f50c40bb145bf2989
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:55 2012 -0700

    irq_domain: Add support for base irq and hwirq in legacy mappings

    Add support for a legacy mapping where irq = (hwirq - first_hwirq + first_irq)
    so that a controller driver can allocate a fixed range of irq_descs and use
    a simple calculation to translate back and forth between linux and hw irq
    numbers. This is needed to use an irq_domain with many of the ARM interrupt
    controller drivers that manage their own irq_desc allocations. Ultimately
    the goal is to migrate those drivers to use the linear revmap, but doing it
    this way allows each driver to be converted separately which makes the
    migration path easier.

    This patch generalizes the IRQ_DOMAIN_MAP_LEGACY method to use
    (first_irq-first_hwirq) as the offset between hwirq and linux irq number,
    and adds checks to make sure that the hwirq number does not exceed range
    assigned to the controller.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit a8db8cf0d894df5f1dcfd4bce9894e0dbcc01c96
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:54 2012 -0700

    irq_domain: Replace irq_alloc_host() with revmap-specific initializers

    Each revmap type has different arguments for setting up the revmap.
    This patch splits up the generator functions so that each revmap type
    can do its own setup and the user doesn't need to keep track of how
    each revmap type handles the arguments.

    This patch also adds a host_data argument to the generators. There are
    cases where the host_data pointer will be needed before the function returns.
    ie. the legacy map calls the .map callback for each irq before returning.

    v2: - Add void *host_data argument to irq_domain_add_*() functions
        - fixed failure to compile
        - Moved IRQ_DOMAIN_MAP_* defines into irqdomain.c

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 68700650e71b6bb6636673f4f9c8ec807353d8d6
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:53 2012 -0700

    irq_domain: Remove references to old irq_host names

    No functional changes. Replaces non-exported references to 'host' with domain.
    Does not change any symbol names referenced by other .c files.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 03848373ea741caafab952fb62405ed7fc0c279c
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:52 2012 -0700

    irq_domain: remove NO_IRQ from irq domain code

    zero always means no irq when using irq domains. Get rid of the NO_IRQ
    references.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit cc79ca691c292e9fd44f589c7940b9654e22f2f6
Author: Grant Likely <email address hidden>
Date: Thu Feb 16 01:37:49 2012 -0700

    irq_domain: Move irq_domain code from powerpc to kernel/irq

    This patch only moves the code. It doesn't make any changes, and the
    code is still only compiled for powerpc. Follow-on patches will generalize
    the code for other architectures.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 6d9285b00f776eebe459a858ebf07b56c36c60d2
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:51 2012 -0700

    irq_domain/powerpc: Eliminate virq_is_host()

    There is only one user, and it is trivial to open-code.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 4bbdd45afdae208a7c4ade89cf602f89a6397cff
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:51 2012 -0700

    irq_domain/powerpc: eliminate irq_map; use irq_alloc_desc() instead

    This patch drops the powerpc-specific irq_map table and replaces it with
    directly using the irq_alloc_desc()/irq_free_desc() interfaces for allocating
    and freeing irq_desc structures.

    This patch is a preparation step for generalizing the powerpc-specific virq
    infrastructure to become irq_domains.

    As part of this change, the irq_big_lock is changed to a mutex from a raw
    spinlock. There is no longer any need to use a spin lock since the irq_desc
    allocation code is now responsible for the critical section of finding
    an unused range of irq numbers.

    The radix lookup table is also changed to store the irq_data pointer instead
    of the irq_map entry since the irq_map is removed. This should end up being
    functionally equivalent since only allocated irq_descs are ever added to the
    radix tree.

    v5: - Really don't ever allocate virq 0. The previous version could still
          do it if hint == 0
        - Respect irq_virq_count setting for NOMAP. Some NOMAP domains cannot
          use virq values above irq_virq_count.
        - Use numa_node_id() when allocating irq_descs. Ideally the API should
          obtain that value from the caller, but that touches a lot of call sites
          so will be deferred to a follow-on patch.
        - Fix irq_find_mapping() to include irq numbers lower than
          NUM_ISA_INTERRUPTS. With the switch to irq_alloc_desc*(), the lowest
          possible allocated irq is now returned by arch_probe_nr_irqs().
    v4: - Fix incorrect access to irq_data structure in debugfs code
        - Don't ever allocate virq 0

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit bae1d8f19983fbfa25559aa3cb6a81a84aa82a18
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:50 2012 -0700

    irq_domain/powerpc: Use common irq_domain structure instead of irq_host

    This patch drops the powerpc-specific irq_host structures and uses the common
    irq_domain strucutres defined in linux/irqdomain.h. It also fixes all
    the users to use the new structure names.

    Renaming irq_host to irq_domain has been discussed for a long time, and this
    patch is a step in the process of generalizing the powerpc virq code to be
    usable by all architecture.

    An astute reader will notice that this patch actually removes the irq_host
    structure instead of renaming it. This is because the irq_domain structure
    already exists in include/linux/irqdomain.h and has the needed data members.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 644bd954313254b54e08b69077e16831b6e04dfa
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:49 2012 -0700

    irq_domain: convert microblaze from irq_host to irq_domain

    Trivial change, microblaze doesn't use irq remapping yet.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Michal Simek <email address hidden>
    Cc: Thomas Gleixner <email address hidden>

commit 7bb69bade0d41715bdf1b24f5ef0b8f798769fe9
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:48 2012 -0700

    irq_domain: Make irq_domain structure match powerpc's irq_host

    Part of the series to unify the irq remapping mechanisms in the
    kernel. A follow up patch will copy the powerpc implementation into
    kernel/irq/irqdomain.c, which will be a lot easier if the structures
    are identical.

    Where they differ, I've chose to use the powerpc names since there is
    a lot more code using those names.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit e1964c50a83d1ce53731c88271d12ac92292a880
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:48 2012 -0700

    irq_domain: Be less verbose

    irq_domain printk's too much. Drop some output.

    Signed-off-by: Grant Likely <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit 7ab3a837adfc502913e0101d83bd3f4692b690b6
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:47 2012 -0700

    irq_domain: add documentation and MAINTAINERS entry.

    Documentation for irq_domain library which will be created in subsequent
    patches.

    v4: editorial changes

    Signed-off-by: Grant Likely <email address hidden>
    Reviewed-by: Randy Dunlap <email address hidden>
    Cc: Benjamin Herrenschmidt <email address hidden>
    Cc: Thomas Gleixner <email address hidden>
    Cc: Rob Herring <email address hidden>
    Cc: Milton Miller <email address hidden>
    Tested-by: Olof Johansson <email address hidden>

commit e8548239735dc23864a7ade7061ed9d7a060e2c7
Merge: 7a8d137 7143d3d
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:17 2012 +0400

    Merge branch 'tracking-armlt-ubuntu-config' into linux-linaro

commit 7143d3dbeef5480370c8cc6e3313ddacb13d269c
Author: Jon Medhurst <email address hidden>
Date: Fri Mar 16 16:03:00 2012 +0000

    Ubuntu: vexpress defconfig

    Signed-off-by: Jon Medhurst <email address hidden>

commit 7a8d1373b87d1085beb9924b439e52a312908d3c
Merge: e929c2d 19b45d9
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:16 2012 +0400

    Merge branch 'tracking-armlt-arm-arch-fixes' into linux-linaro

commit 19b45d92a9bd07de334ba2ccdc6060aa5495cd07
Author: Catalin Marinas <email address hidden>
Date: Tue Feb 14 12:09:09 2012 +0000

    ARMv7: Flush the vectors page using the base address

    With the domains removal patch, the vectors page is populated using the
    kernel linear mapping address. However, the flush_icache_range()
    function must be called on the high vectors address because the I-cache
    is allowed to have aliases (or can even be ASID-tagged VIVT). Note that
    on ARMv7 processors the D-cache is non-aliasing.

    Signed-off-by: Catalin Marinas <email address hidden>
    Cc: <email address hidden>

commit 088e82eaee80e14a71d35d5f915395ca36530823
Author: Catalin Marinas <email address hidden>
Date: Tue Feb 14 12:09:08 2012 +0000

    ARM: Set bit 22 in the PL310 (cache controller) AuxCtlr register

    Clearing bit 22 in the PL310 Auxiliary Control register (shared
    attribute override enable) has the side effect of transforming Normal
    Shared Non-cacheable reads into Cacheable no-allocate reads.

    Coherent DMA buffers in Linux always have a Cacheable alias via the
    kernel linear mapping and the processor can speculatively load cache
    lines into the PL310 controller. With bit 22 cleared, Non-cacheable
    reads would unexpectedly hit such cache lines leading to buffer
    corruption.

    This patch ensures that bit 22 is set in the l2x0_init() function if
    PL310 and not rely on the platform code to specify it. It also modifies
    the 'aux' variable only if the actual register is written so that the
    final printk displays the real hardware value.

    Signed-off-by: Catalin Marinas <email address hidden>
    Tested-by: Kyungmin Park <email address hidden>

commit e78a6de95d3cc32dcf4362c6ce20f3257b53cb58
Author: Will Deacon <email address hidden>
Date: Thu May 26 11:24:25 2011 +0100

    ARM: Allow ASID 0 to be allocated to tasks

    Now that ASID 0 is no longer used as a reserved value, allow it to be
    allocated to tasks.

    Reviewed-by: Frank Rowand <email address hidden>
    Tested-by: Marc Zyngier <email address hidden>
    Cc: Russell King <email address hidden>
    Signed-off-by: Will Deacon <email address hidden>
    Signed-off-by: Catalin Marinas <email address hidden>

commit 55d05d0a4c08385851fb4c4b31339308985f4b60
Author: Will Deacon <email address hidden>
Date: Tue May 31 15:38:43 2011 +0100

    ARM: Use TTBR1 instead of reserved context ID

    On ARMv7 CPUs that cache first level page table entries (like the
    Cortex-A15), using a reserved ASID while changing the TTBR or flushing
    the TLB is unsafe.

    This is because the CPU may cache the first level entry as the result of
    a speculative memory access while the reserved ASID is assigned. After
    the process owning the page tables dies, the memory will be reallocated
    and may be written with junk values which can be interpreted as global,
    valid PTEs by the processor. This will result in the TLB being populated
    with bogus global entries.

    This patch avoids the use of a reserved context ID in the v7 switch_mm
    and ASID rollover code by temporarily using the swapper_pg_dir pointed
    at by TTBR1, which contains only global entries that are not tagged
    with ASIDs.

    Reviewed-by: Frank Rowand <email address hidden>
    Tested-by: Marc Zyngier <email address hidden>
    Cc: Russell King <email address hidden>
    Signed-off-by: Will Deacon <email address hidden>
    Signed-off-by: Catalin Marinas <email address hidden>

commit e929c2dfe477869f38fefd060b2d0d465b0c26ed
Merge: ac3034f 6af36d8
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:15 2012 +0400

    Merge branch 'tracking-armlt-mmc' into linux-linaro

commit 6af36d89e14e31a1e75c9c020a26a309b3031924
Author: Jon Medhurst <email address hidden>
Date: Tue Dec 20 15:03:38 2011 +0000

    mmc: block: Make multi-block write errors retry as single block writes

    The current mmc block code retries i/o errors on multi-block reads by
    using single block reads. For platforms with unreliable multi-block
    operations, like the ARM Versatile Express board, this is a valuable
    error recovery path.

    This patch extends the single block retry to also include write
    operations.

    Signed-off-by: Jon Medhurst <email address hidden>

commit ac3034ff903beedc4490b4bec2d2cb54d033bf5b
Author: Jon Medhurst <email address hidden>
Date: Wed Feb 29 05:08:09 2012 +0000

    ARM: vexpress: Add support for HDLCD on V2P-CA15-TC1

    This is a temporary solution to get everything running.

    Signed-off-by: Jon Medhurst <email address hidden>

commit 61275682a44b5aa2b4b75bdfec6c939773218dfa
Author: Jon Medhurst <email address hidden>
Date: Wed Feb 29 05:08:44 2012 +0000

    ARM: vexpress: Reduce A5 screen resolution to aid performance.

    Signed-off-by: Jon Medhurst <email address hidden>

commit 84e74c1c837349a9bc4e989384f019dc66cd5a9b
Author: Pawel Moll <email address hidden>
Date: Wed Dec 14 16:50:21 2011 +0000

    ARM: vexpress: Add support for HDLCD on V2P-CA5s

    This is a temporary solution to get everything running.

    Signed-off-by: Pawel Moll <email address hidden>

    Conflicts:

     arch/arm/boot/dts/vexpress-v2p-ca5s.dts
     arch/arm/mach-vexpress/v2m.c

    Change-Id: I805deceba0a33476e77cffa2bdfa3bc86efc7ffb

commit bb41b9275264eea5ba705f808f88c9ec480fafc4
Author: Liviu Dudau <email address hidden>
Date: Wed Jan 18 16:52:04 2012 +0000

    ARM HDLCD: Add support for ARM High Definition LCD.

    The ARM HDLCD device is now found in various new Versatile Express coretiles.

    Signed-off-by: Liviu Dudau <email address hidden>

commit 2c3c374fe9d4f049a96947172f3245be0913dd2b
Author: Pawel Moll <email address hidden>
Date: Thu Dec 15 10:57:28 2011 +0000

    ARM: vexpress: Add Device Tree for V2P-CA15 core tile (TC1 variant)

    This patch adds Device Tree file for the CoreTile Express A15x2
    (V2P-CA15) with Test Chip 1.

    As the chip's GIC has 160 interrupt inputs and equivalent SMM
    (FPGA) has GIC synthesised with 256 interrupts, NR_IRQS is
    increased.

    Signed-off-by: Pawel Moll <email address hidden>

commit 88432424043a5b121494354937a6d4d590842d57
Author: Pawel Moll <email address hidden>
Date: Fri Dec 9 18:40:31 2011 +0000

    ARM: vexpress: Add Device Tree for V2P-CA9 core tile

    This patch adds Device Tree file for the CoreTile Express A9x4 (V2P-CA9).

    Signed-off-by: Pawel Moll <email address hidden>

commit 94ddc3135ef09e11503e24b1980d3f20243b7347
Author: Pawel Moll <email address hidden>
Date: Fri Dec 9 18:41:27 2011 +0000

    ARM: vexpress: Add Device Tree for V2P-CA5s core tile

    This patch adds Device Tree file for the CoreTile Express A5x2 (V2P-CA5s).

    Signed-off-by: Pawel Moll <email address hidden>

commit f2a40a9f0c753ff7031fb9e75359917c21bf888c
Author: Pawel Moll <email address hidden>
Date: Fri Dec 9 18:47:39 2011 +0000

    ARM: vexpress: Motherboard RS1 memory map support

    This patch adds support for RS1 memory map based Versatile Express
    motherboard.

    Signed-off-by: Pawel Moll <email address hidden>

commit 600e4ff55bb844a49662aadc910fb67d8cc7eca2
Author: Pawel Moll <email address hidden>
Date: Thu Feb 23 13:04:51 2012 +0000

    ARM: vexpress: Add Device Tree support

    This patch adds generic Versatile Express DT machine description,
    Device Tree description for the motherboard and documentation for
    the bindings.

    Signed-off-by: Pawel Moll <email address hidden>

commit 1a1dca870bf21eba148153b3d2eae3b964085f23
Author: Pawel Moll <email address hidden>
Date: Mon Feb 20 15:17:11 2012 +0000

    ARM: vexpress: Use FDT data in platform SMP calls

    Scan flatten device looking for A5/A9 SCU node and initialize
    it using base address in "reg" property. If nothing is found,
    assume that there is no special SCU initialization required
    and initialize CPUs basing on numbers of "cpu" type devices
    in "cpus" node of the Device Tree.

    All this happens only if the board was booted with FDT,
    otherwise ct_desc callbacks are used.

    Signed-off-by: Pawel Moll <email address hidden>

    SMP update (change commit log!)

commit e5de166b3cd2a3e491c9959f85a59ccf697cd58f
Author: Pawel Moll <email address hidden>
Date: Thu Feb 23 14:57:11 2012 +0000

    ARM: versatile: Map local timers using Device Tree when possible

    Try to map TWD registers basing on a "arm,*-twd-timer" Device Tree
    node. This overrides existing twd_base value.

    Signed-off-by: Pawel Moll <email address hidden>

commit 655774bcf249cf68130785206cfb919a8767c61b
Author: Pawel Moll <email address hidden>
Date: Wed Jan 25 15:37:29 2012 +0000

    ARM: vexpress: Get rid of MMIO_P2V

    This patch gets rid of the MMIO_P2V and __MMIO_P2V macros,
    defining constant virtual base for motherboard and tile
    peripherals instead.

    Additionally, in preparation for the new motherboard memory
    map, the motherboard peripherals are using base pointers
    calculated in runtime, instead of compile-time calculated
    values.

    Signed-off-by: Pawel Moll <email address hidden>

9 blueprints and 0 bugs targeted

Blueprint Priority Assignee Delivery
android upstreaming: Lowmem android upstreaming: Lowmem (some work for this milestone) 4 High Anton Vorontsov  9 Needs Code Review
pinctrl pinprops work in 2012-03 pinctrl pinprops work in 2012-03 4 High Linus Walleij  11 Implemented
OMAP Pinctrl Support OMAP Pinctrl Support (some work for this milestone) 4 High Rajendra Nayak  0 Unknown
android upstreaming: Ashmem android upstreaming: Ashmem (some work for this milestone) 3 Medium John Stultz  6 Slow progress
Migrate Android Alarmtimer driver over to using the upstreamed Alarmtimers Migrate Android Alarmtimer driver over to using the upstreamed Alarmtimers (some work for this milestone) 3 Medium John Stultz  10 Deployment
Android evdev change upstreaming Android evdev change upstreaming (some work for this milestone) 3 Medium John Stultz  11 Implemented
Kconfig fragment based config managment Kconfig fragment based config managment (some work for this milestone) 1 Undefined John Stultz  11 Implemented
android upstreaming: Wake Locks android upstreaming: Wake Locks (some work for this milestone) 1 Undefined John Stultz  11 Implemented
Implement DT support for iMX platforms Implement DT support for iMX platforms (some work for this milestone) 1 Undefined Shawn Guo  7 Good progress
This milestone contains Public information
Everyone can see this information.