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.
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
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-
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:/
The source tarball is available at:
https:/
The kernel sources can also be accessed using git at:
git://
tag: linux-linaro-
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:/
High Priority Known Issues:
- ANDROID_RAM_CONSOLE must be disabled for the android kernel to boot.
Changelog
commit 0b7071f0561583d
Author: Tushar Behera <email address hidden>
Date: Mon Mar 26 17:00:24 2012 +0530
alarmtimer: Fix conflicting definitions of alarmtimer_
Both the implementation in kernel/
This fixes following compile-time error.
kernel/
kernel/
make[2]: *** [kernel/
Signed-off-by: Tushar Behera <email address hidden>
Signed-off-by: Andrey Konovalov <email address hidden>
commit b3d755383884f9c
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 fc46f3107d8b347
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 12e12c6292fe893
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 e5ddd60534f8ab2
Merge: 9c0d192 4bbdc68
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 22:15:11 2012 +0400
Merge branch 'tracking-
commit 4bbdc68a3ba52b2
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 9c0d19268593ac0
Merge: 4893b82 88bef40
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 22:14:47 2012 +0400
Merge branch 'tracking-
commit 88bef40b1205317
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/
This change makes /proc/last_kmsg require the same permissions as
dmesg.
Bug: 5555691
Signed-off-by: Nick Kralevich <email address hidden>
Change-Id: I50ecb74012ef2a
commit 91154555190c1d2
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 cd7bc93466877cb
Author: Colin Cross <email address hidden>
Date: Mon Mar 5 13:04:53 2012 -0800
android: staging: ram_console: fix crash in ram_console_
If the persistent ram buffer is not available, ram_console_
would crash when dereferencing ram_console_zone. Return early if
ram console was not initialized.
Change-Id: Idff0f690406cdb
Signed-off-by: Colin Cross <email address hidden>
commit 1ebd20c6af8dd5e
Author: Colin Cross <email address hidden>
Date: Mon Mar 5 13:29:45 2012 -0800
usb: gadget: adb: allow freezing in adb_read
wait_
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: I5a7baa013a9a3a
Signed-off-by: Colin Cross <email address hidden>
commit a5d2e61148fba0f
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 fbd94b86e411e6e
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/
drivers/
drivers/
Change-Id: I39ef9b27bb9feb
commit 293f64abe6006f6
Author: Colin Cross <email address hidden>
Date: Fri Aug 26 17:49:35 2011 -0700
android: persistent_trace: ftrace into persistent_ram
persistent_
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/
Change-Id: Ia6025ccc323599
Signed-off-by: Colin Cross <email address hidden>
commit 822a717286c1120
Author: Colin Cross <email address hidden>
Date: Mon Aug 29 11:52:57 2011 -0700
android: persistent_ram: add notrace to persistent_
Add the notrace attribute to persistent_
non-ecc functions that it calls to allow persistent_ram to
be used for ftracing (only when ecc is disabled).
Change-Id: I9c96039d9a6281
Signed-off-by: Colin Cross <email address hidden>
commit 8a512a1782f77e5
Author: Colin Cross <email address hidden>
Date: Fri Aug 26 14:49:41 2011 -0700
android: persistent_ram: make persistent_
Allow persistent_
the same time, as long as ecc is not in use. Uses atomics
for the buffer->start and buffer->size counters.
Change-Id: I49b70ec3bc7a65
Signed-off-by: Colin Cross <email address hidden>
commit b30c3717b6c9064
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: I12b018381a2ed5
Signed-off-by: Colin Cross <email address hidden>
commit 5934af0e38ac27a
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_
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: Ibc87ec27b70ed1
Signed-off-by: Colin Cross <email address hidden>
commit 26fbd61454e01c6
Author: Colin Cross <email address hidden>
Date: Sat Aug 20 19:04:13 2011 -0700
android: persistent_ram: refactor ecc support
Remove CONFIG_
#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: Ia710344b6c54fe
commit 9d0470c1b1ec46e
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: I8c7495e3a6a3dd
commit af8e872f1eb05a8
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: I977d70f3b72fd4
Signed-off-by: Colin Cross <email address hidden>
commit 95ec301716e0da3
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: Ifc306db9a8ccee
Signed-off-by: Colin Cross <email address hidden>
commit 9a53eaca1367762
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: I883bb6eec5bad5
Signed-off-by: Colin Cross <email address hidden>
commit 1aadd4eb5d16abe
Author: Colin Cross <email address hidden>
Date: Wed Feb 1 20:29:49 2012 -0800
Revert "HACK: android-alarm: wakelock workaround"
This reverts commit 1f1a4544e5196a8
Conflicts:
drivers/
drivers/
Change-Id: I5717b7736b10de
commit c9baaf8edf30ba0
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: Iebb8dd9beb60a8
Signed-off-by: Colin Cross <email address hidden>
commit ab4c5e585b56183
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 5cf73bb208983a8
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 47be93e1fb9fed8
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 9bb0edbc57c0620
Author: John Stultz <email address hidden>
Date: Tue Jun 21 17:01:27 2011 -0700
android-alarm: Convert ALARM_ELAPSED_
The ALARM_ELAPSED_
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_
instead of managing it itself.
Change-Id: I4867ed2823ebb2
Signed-off-by: John Stultz <email address hidden>
commit 1cc7ab39279fb73
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 44af2ea0876914b
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/
drivers/
drivers/
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 98c9209602d4d6f
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_
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: I919860cc712544
Signed-off-by: JP Abgrall <email address hidden>
[jstultz: Tweaked commit subject]
Signed-off-by: John Stultz <email address hidden>
commit 62b1ec65bf21021
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: If379f8dd92b0bd
Signed-off-by: Arve Hjønnevåg <email address hidden>
Signed-off-by: John Stultz <email address hidden>
commit b3aebc7313d340b
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: Iff8f7a65c4ecee
Signed-off-by: Praneeth Bajjuri <email address hidden>
[jstultz: tweaked commit subject & msg]
Signed-off-by: John Stultz <email address hidden>
commit afa7529ab0348c2
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 f7bc8ba108f4dbc
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 20bb505c2942a90
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 1de07df286400a7
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 b634b4c7bcde289
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: Iaefeca497de02f
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 cf7187dd9232df2
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 9fb2094ccfb16e7
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://
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 7acbc30084dfb1a
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 368fc61d8c0a570
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 6512cf21c5cab75
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/
echo rndis,acm > /sys/class/
echo 2 > /sys/class/
echo 2d01 > /sys/class/
echo 1 > /sys/class/
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 db59316f98f0d0f
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 0d0b055819b060e
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_
and allocate string ids when it is bound to the first configuration:
/* maybe allocate device-global string IDs */
if (rndis_
/* ... and setup RNDIS itself */
status = rndis_init();
if (status < 0)
return status;
rndis_
correctly initialized on the next composite_bind.
Signed-off-by: Benoit Goby <email address hidden>
commit e7521613d1ae86c
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 2be1bbd30d421b0
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 88ae7e96fe46f80
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 c1a9c6a9723ec9e
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_
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 9872d6b46341737
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: Ib0538ca569c9e0
Signed-off-by: Colin Cross <email address hidden>
commit b3b5e3974ff2680
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: If995d4af4adcb0
Signed-off-by: Todd Poynor <email address hidden>
commit 56697856e8a6a0d
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: Ib3fc0507e40911
Signed-off-by: Jaikumar Ganesh <email address hidden>
commit d6039d941c408a5
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: Ic3a0ff4fc056f5
Signed-off-by: Jaikumar Ganesh <email address hidden>
commit f4f47cda9f95436
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_
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: Idab6fb4f7b1e5e
Signed-off-by: Jaikumar Ganesh <email address hidden>
commit b5989152ac6a54f
Author: Todd Poynor <email address hidden>
Date: Thu Aug 25 19:29:45 2011 -0700
PM: Backoff suspend if repeated attempts fail
Change-Id: I32289676d95a30
Signed-off-by: Todd Poynor <email address hidden>
commit 1755ed4b3cbe6d4
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: Icefb7e4bbc718c
Signed-off-by: Todd Poynor <email address hidden>
commit 385a38dc03d246d
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_
Change-Id: I8c2d947929186f
Signed-off-by: <email address hidden>
commit 119823ad4d66dbb
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 36c417868678f9c
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: I910de95a4686b2
Signed-off-by: Ashish Sharma <email address hidden>
commit a2f3d15bfeaa7d7
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:
on a fragmented packet, thoff would be left with a random
value causing callers to read random memory offsets with:
Now we force ipv6_find_hdr() to return a failure in this case.
Calling:
ipv6_
will set fragoff as expected, and not return a failure.
Change-Id: Ib474e8a4267dd2
Signed-off-by: JP Abgrall <email address hidden>
commit e2259443b613ae4
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://
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: I021d3b743db3b2
Signed-off-by: JP Abgrall <email address hidden>
commit d6b8ed727301280
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://
at commit e84391ce665cef0
Change-Id: I19d49858840eff
Signed-off-by: JP Abgrall <email address hidden>
commit 0d7182be8b2802a
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/
Change-Id: I34974624c52ae2
Signed-off-by: Todd Poynor <email address hidden>
commit d25e821ee0c8961
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 bc6d40caf40b25e
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
For now it is enabled with CONFIG_
Change-Id: I649a4fd5940029
Signed-off-by: JP Abgrall <email address hidden>
commit 8585cf5bba9514f
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/
So whenever an skb belongs to a sock_fd, it will be accounted against
and matching stats will show up under the uid with the given
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/
ctrl
stats
iface_
The uid stats are obtainable in ./stats.
Change-Id: I01af4fd91c8de6
Signed-off-by: JP Abgrall <email address hidden>
commit a4d6a1e97442c92
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: I11c58f59087e7f
Signed-off-by: JP Abgrall <email address hidden>
commit 83dc69347210467
Author: Dmitry Shmidt <email address hidden>
Date: Fri Oct 28 10:35:37 2011 -0700
net: wireless: Skip connect warning for CONFIG_
Signed-off-by: Dmitry Shmidt <email address hidden>
commit 83cf0216e98084e
Author: Dmitry Shmidt <email address hidden>
Date: Tue Oct 18 12:30:02 2011 -0700
net: wireless: Fix CFG80211_
Signed-off-by: Dmitry Shmidt <email address hidden>
commit 19146a36dd14d94
Author: Dmitry Shmidt <email address hidden>
Date: Thu Sep 15 09:22:35 2011 -0700
net: wireless: Add CFG80211_
Signed-off-by: Dmitry Shmidt <email address hidden>
commit 7e1377fbf54d80b
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: I6e8d838d91bebc
Signed-off-by: jun.ho.lee <email address hidden>
Signed-off-by: Dmitry Shmidt <email address hidden>
commit e0ff4f32f3f29c6
Author: Dmitry Shmidt <email address hidden>
Date: Wed Jun 8 15:16:52 2011 -0700
net: wireless: Add CONFIG_
Signed-off-by: Dmitry Shmidt <email address hidden>
commit 7eaf839c7a921a5
Author: Colin Cross <email address hidden>
Date: Wed Feb 1 14:10:59 2012 -0800
wireless: bcmdhd: fix build for 3.3
ndo_
Add no_cck and dont_wait_for_ack parameters to mgmt_tx.
Change-Id: I56e0a924ee4417
Signed-off-by: Colin Cross <email address hidden>
commit a2d116668045dd4
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: I91012d9adf1d95
Signed-off-by: Dmitry Shmidt <email address hidden>
commit 060e2e47059fb66
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 e6e726512aec3fa
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 0aa3e8c9bc97775
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: I21bb5ecf1b7d29
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit 519432d188a7efc
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: I028657d5cf2bee
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit 102804cc017edff
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: Iaf21c2c329c605
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit 15de182469b60c3
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: I939f76a6ea7546
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit 41aaa01be4835a7
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: I9d04e3e1ea0d0b
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit 6602784b0d9d1f5
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/
everything by writing 0 0.
Change-Id: Ibb734ca820fedf
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit fe838c87a6e3ef7
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: I75256abe2556ad
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit 91516a10b488205
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: I098a0753e87485
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit e4374a790af1934
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: Ia0bf3f5391e94a
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit b0a4a0d3d51ed02
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 f66447a866d9042
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_
__cpufreq_
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: I87e55277272f5c
Signed-off-by: Colin Cross <email address hidden>
commit f1724765f84dffe
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
lowmemoryki
the parent process reaped the child or it died itself.
Change-Id: I709b1a4e1b1a19
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit 84a7bd81bc301b7
Author: Rabin Vincent <email address hidden>
Date: Thu Sep 9 10:48:21 2010 +0530
lowmemoryki
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_
atomic_
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: I1577b04e617bc2
Signed-off-by: Rabin Vincent <email address hidden>
Signed-off-by: Christian Bejram <email address hidden>
commit f06c513a97d15d3
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/
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/
The CPU load at which to ramp to max speed. Default is 85.
Change-Id: Ib2b362607c62f7
Signed-off-by: Mike Chan <email address hidden>
Signed-off-by: Todd Poynor <email address hidden>
Bug: 3152864
commit f175747e3062448
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: I5d8e4e85b17bba
Acked-by: Nicolas Pitre <email address hidden>
Signed-off-by: Todd Poynor <email address hidden>
commit 2ff98538277159d
Author: Todd Poynor <email address hidden>
Date: Wed Jun 15 17:44:50 2011 -0700
ARM: Call idle notifiers
Change-Id: Id833e61c13baa1
Acked-by: Nicolas Pitre <email address hidden>
Signed-off-by: Todd Poynor <email address hidden>
commit 2d3c750ee707c9b
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: Idf29cda15be151
Acked-by: Nicolas Pitre <email address hidden>
Signed-off-by: Todd Poynor <email address hidden>
commit 8244456a30e056d
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 1b548cd626018bd
Author: Iliyan Malchev <email address hidden>
Date: Sat Jun 5 17:36:24 2010 -0700
ARM: Add generic fiq serial debugger
Change-Id: Ibb536c88f0dbaf
Signed-off-by: Iliyan Malchev <email address hidden>
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit 0b7cd86476f30e1
Author: Arve Hjønnevåg <email address hidden>
Date: Mon Sep 27 17:50:00 2010 -0700
ARM: Add fiq_glue
Change-Id: I27d2554e07d9de
Signed-off-by: Arve Hjønnevåg <email address hidden>
Signed-off-by: Colin Cross <email address hidden>
commit 180b4c853abfba1
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: If8c21cd02feaf9
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit b2c9130f7eaa7c0
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 985c9208982a0b9
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: I4196913f15aec2
Signed-off-by: Dima Zavin <email address hidden>
commit 1656b680930561b
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/
output:
Min Bucket(sec) Count
1 7
2 0
4 1
8 0
16 0
32 2
64 1
128 0
Change-Id: I4c4cd8627b872a
Signed-off-by: Mike Chan <email address hidden>
commit 730c51b8da40df4
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 af0240f095a704f
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 f7983488cb4c691
Author: San Mehat <email address hidden>
Date: Mon Apr 26 15:11:04 2010 -0700
lowmemoryki
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_
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 667dffa787a87ef
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 e14ae279472248b
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 d6a41cd16c6e1e0
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 98ec37b666b3b0a
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 f521244ad0f238e
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: I8b676701e12e41
Signed-off-by: hyungseoung.yoo <email address hidden>
Signed-off-by: Jaikumar Ganesh <email address hidden>
commit 88cb72e1243df38
Author: Peter Hurley <peter@
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_
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: I6876ea5134e90d
Signed-off-by: Peter Hurley <peter@
commit aec7cfff7858438
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 fe43516a375dfe0
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: Ide1c89574fa4f6
Signed-off-by: Nick Pelly <email address hidden>
commit 7c786ce33a1b419
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 8cc0e2b58f7d0ca
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 de6f7a9fdb56f4c
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 909a364281388fb
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 34005c9288184a2
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: I42e0779b635f64
Signed-off-by: San Mehat <email address hidden>
commit 883130924a61ee2
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: I62a11630521c63
Signed-off-by: Nick Pelly <email address hidden>
commit 16f7492c95786bb
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 1bf723d8aa28f70
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_
Change-Id: I4b13c6a34bcbcb
Signed-off-by: Colin Cross <email address hidden>
commit 0cfa041818ccb83
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 a828919ab77fa1e
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 9a710981d766164
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 acff181d3574244
commit 10647800b773ca2
Author: Chia-chi Yeh <email address hidden>
Date: Tue Jun 30 11:23:04 2009 +0800
net: Replace AID_NET_RAW checks with capable(
Signed-off-by: Chia-chi Yeh <email address hidden>
commit b64107245dbade3
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 e7a8aa97bb9f443
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_
is used. In pppolac_release(), ppp_unregister_
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-
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 461d4adc1e7d3d8
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: I27e687667db5b4
Signed-off-by: Dima Zavin <email address hidden>
commit 1938688002071fe
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: I3ae3ee7520951a
Signed-off-by: Chia-chi Yeh <email address hidden>
ppolac: dont include px_proto define in if_pppolac.h
Change-Id: I55bc9cf91ea0e9
Signed-off-by: Dima Zavin <email address hidden>
commit 25397e9344a06fe
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: I9ddc676382d26a
Signed-off-by: Dima Zavin <email address hidden>
commit 5ea813fd8970de4
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 ddf33fed15c2376
Author: Timothy Manning <email address hidden>
Date: Thu Dec 23 13:31:37 2010 +1300
yaffs updated direct/
Change-Id: I5bbe5a05277bdf
Signed-off-by: Dima Zavin <email address hidden>
commit 6bbd5b121293756
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 dca1c7150aa84a2
Author: Dmitry Shmidt <email address hidden>
Date: Thu Dec 18 09:55:20 2008 -0800
tiwlan: Add abstract wifi control functions support
commit caa230ddee7e8ea
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 789f42190adca8d
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: Id33fd28d8b9778
Signed-off-by: Ken Sumrall <email address hidden>
commit 3663054dcf6f6be
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: I1e507a5f988489
Signed-off-by: Colin Cross <email address hidden>
commit f20721ec028a606
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 c92e3eb11fae82d
Author: Colin Cross <email address hidden>
Date: Fri Apr 8 22:20:53 2011 -0700
Recreate asm/mach/mmc.h include file
Change-Id: I9f10244b0603f7
Signed-off-by: Colin Cross <email address hidden>
commit 4744d50648b2a0f
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 5ac72c80ecc0b70
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 880857a6e6bf1de
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 fdb7587cf12bf9c
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 d431f5275f8033f
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 52d8a4d97afcdf1
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 b81bc9436fa7974
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_
Signed-off-by: San Mehat <email address hidden>
commit 399cb95d04f32e5
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 5255bb98a04d20d
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 70d371b3e583672
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 ce8cae08681cd50
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 6efc9dd9b7b8c92
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 8683060cda70237
Author: Dmitry Shmidt <email address hidden>
Date: Tue Nov 11 11:22:38 2008 -0800
trout: Add functions for WiFi
commit 9ee8858fe8b5588
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 b22fdab146fdf7b
Author: San Mehat <email address hidden>
Date: Tue Nov 11 09:35:36 2008 -0800
mmc: sd: Add new CONFIG_
Signed-off-by: San Mehat <email address hidden>
commit 42dd11907fff6a7
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 3b84b5cb3582039
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: I77266431ba5c26
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit d071815f3d56bd1
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: I911f13aeda4224
commit a2d364c55ad4cbf
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: I9d54283ca1fba4
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit f811f7f66c3ca00
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: I67f9dafe32fe32
Signed-off-by: Colin Cross <email address hidden>
commit 6cf80c7fbf27523
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: I5e921e6e3a1cc1
Signed-off-by: Arve Hjønnevåg <email address hidden>
Signed-off-by: Nick Pelly <email address hidden>
commit 404ed7fe2ee785c
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 aa98eb7a0ff0b11
Author: Mike Lockwood <email address hidden>
Date: Sat Mar 15 13:29:36 2008 -0400
FAT: Add new ioctl VFAT_IOCTL_
Signed-off-by: Brian Swetland <email address hidden>
commit afa58dd873439d3
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 80985f7e2d6d948
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/
/proc/
Sysfs, unlike sysctl, allows us to set and manage the files' permissions and
owners.
Signed-off-by: Robert Love <email address hidden>
commit 9fd1b8bf6d0990e
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: Idcdae072b48238
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 edafde808437a90
Author: Robert Love <email address hidden>
Date: Wed Oct 15 15:35:44 2008 -0400
Paranoid network.
With CONFIG_
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 d260ada6528933d
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 84b436d537be985
Author: Robert Love <email address hidden>
Date: Wed Oct 15 15:34:49 2008 -0400
Add android_aid.h
Add <linux/
Signed-off-by: Robert Love <email address hidden>
commit a147b2b5898c0df
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_
device_
Signed-off-by: Arve Hjønnevåg <email address hidden>
switch_gpio: Add missing #include <linux/interrupt.h>
Change-Id: I6c397e41bbe145
Signed-off-by: Mike Lockwood <email address hidden>
commit b2d895d9c53648b
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: I01def6d86ddece
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit 18504990f0df5ed
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 2f8f1b5814f65e8
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: I624d66ef30a0b3
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit 237323ce36a4adc
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 6e4b6932f7f1d7a
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: Ib2976e5b97a5ee
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit dce3610a81ec6ef
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 92e7a6e6a59c3cf
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/
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: I66c6e3fe6487d1
commit 596f2eedbddfce6
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 29da5497e11428c
Author: Arve Hjønnevåg <email address hidden>
Date: Fri Sep 26 22:10:56 2008 -0700
PM: Add wake lock api.
commit 635b74d95aa5bd9
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 e6b1a63d5329640
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_
be flushed if the requested range is larger than this limit.
Change-Id: I29277d645a9d67
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit bdae58317df5f1a
Author: Arve Hjønnevåg <email address hidden>
Date: Tue Feb 17 14:51:02 2009 -0800
mm: Add min_free_
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: I5efc1a0b50f41f
Signed-off-by: Arve Hjønnevåg <email address hidden>
commit ca4333c55419e8c
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 cbc3c4bdcb9c51d
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 665bf97ed8f73c4
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 0d545d47c2c5165
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_
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_
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/
Change-Id: I3b3f245c8f5e2e
commit 4bc55fc26751762
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: Icfa950aa9321d1
Original-
Signed-off-by: Colin Cross <email address hidden>
commit 6cccd363001a0cf
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 b5b7dd27b9a72e7
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_
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: I94fae337f882c2
Signed-off-by: Colin Cross <email address hidden>
commit 2c27087440fb7f3
Author: Colin Cross <email address hidden>
Date: Wed Feb 1 15:58:57 2012 -0800
binder: fix warning
Convert binder_
drivers/
pointer type
Change-Id: I3ce97c1394cff7
Signed-off-by: Colin Cross <email address hidden>
commit 845c038adc58e74
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: I1d2694d05ac941
Signed-off-by: Dima Zavin <email address hidden>
commit 06a809c0c16658a
Author: Dima Zavin <email address hidden>
Date: Tue Oct 18 16:59:54 2011 -0700
ARM: smp: implement arch_trigger_
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: I8b163c8cec05d5
Signed-off-by: Dima Zavin <email address hidden>
commit 963c34b26530058
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: I215055cbe5dc7e
Signed-off-by: Colin Cross <email address hidden>
commit a134394008368f3
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: I63ed100af1cf94
Signed-off-by: Colin Cross <email address hidden>
commit 1d3d549416a1e55
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: I193dcf7b968be1
Signed-off-by: Dima Zavin <email address hidden>
commit 31fd5c2fc00755f
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/
Change-Id: Ia6b9ebe4baa0f7
Signed-off-by: Colin Cross <email address hidden>
Signed-off-by: Todd Poynor <email address hidden>
commit f68f4c8dd669509
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: Id12cdda87b0cd2
Signed-off-by: Nishanth Menon <email address hidden>
commit dd1e2d7d3b95e53
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: I36f90735c75fb7
Signed-off-by: Todd Poynor <email address hidden>
commit 7d96f042b81c997
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 4e44768015de4ee
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_
VFP context of Thread 1 in the registers
Modify vfp_pm_suspend to save the VFP context whenever
vfp_
Change-Id: I91f29722d256a3
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 868fba1d755e967
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: I6d966887adc8ed
Signed-off-by: Colin Cross <email address hidden>
commit 0d382dca409e838
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_
This prevents the dump from taking pagefaults / external aborts.
Signed-off-by: San Mehat <email address hidden>
commit 5ded4f63f7f6c47
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: Ifd211c06b10486
Original-
Signed-off-by: Benoit Goby <email address hidden>
commit 5b45cdd3fc03b4f
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-
always be used to recover it.
Signed-off-by: Colin Cross <email address hidden>
commit a7b5afec648a754
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: I87e2fcb40b07b2
Signed-off-by: Dima Zavin <email address hidden>
commit 7b1e78d6051d4c2
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 f7d2d451f673ed3
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 ec89ae92433d743
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 78cd9e17ef5aad9
Author: Dima Zavin <email address hidden>
Date: Tue Apr 27 20:57:04 2010 -0700
[ARM] Do not call flush_cache_
We can't be holding the mmap_sem while calling flush_cache_
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_
in do_page_fault will deadlock.
Also, since we really can't be holding the mmap_sem while calling
flush_
get rid of vma as an argument.
Change-Id: If55409bde41ad1
Signed-off-by: Dima Zavin <email address hidden>
commit 4893b826a3b83f4
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 704e55b9b95d2a5
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 c17e143a4ace2c5
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 077ee355fefd5ff
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/
arch/
arch/
arch/
arch/
commit 89cd1705b33f806
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/
commit c7ab4d3da88f319
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/
arch/
arch/
arch/
commit 2a38ab0a255c81a
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 df1d2adf45d591a
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 fc6a2f3ad58f34a
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 42069610503807c
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/
commit 82d9b44532aaf13
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-
results in these messages:
/tmp/
/tmp/
/tmp/
/tmp/
/tmp/
/tmp/
/tmp/
/tmp/
/tmp/
/tmp/
/tmp/
[ 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 0f3d74603129a7a
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:/
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 057bdfdcbaed06f
Merge: ae92777 ba9d77c
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:24 2012 +0400
Merge branch 'tracking-
commit ba9d77cd2402fb3
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 8c0b7e760f2eefb
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 813cdca056f1b31
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 c84dadc00d155c1
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 d37c8fe4ce25fe5
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 0bcdcceef58806c
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 7871a33e0ee0479
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 260a394b2c89852
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 3286b0bbe5e8587
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 a65b87e28bd888d
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 a5bfa79cae6f4bd
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 c0e317f5f2a3558
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 837aa53400efafe
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_
- 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 ec02becbdd0ecc7
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 1343efd112d4966
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 d7a549e9ee7003b
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:/
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 f3d29bdc08fe60b
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 4cb45a0381809a0
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 768dbd6e9e0dd15
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 f8d19baa0f9c644
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 f883899b155e3e3
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 05afd25be6149fd
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 4ade7df83735f14
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 f2e8e61e1b0a5f7
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 a462ef64274026d
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 c6057839d81581a
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 4dd4f31bb4abd74
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 448e83b3da9ef58
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/
functions to use generic alloc/free/mmap methods from dma_map_ops
structure. A new DMA_ATTR_
introduced to implement writecombine methods.
Signed-off-by: Marek Szyprowski <email address hidden>
Signed-off-by: Kyungmin Park <email address hidden>
commit 14d01097c7480c1
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 6e1f7659e47fa6a
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 83f28bb24e1a9e1
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_
Signed-off-by: Marek Szyprowski <email address hidden>
Signed-off-by: Kyungmin Park <email address hidden>
commit 6cd73971b499fe5
Author: Marek Szyprowski <email address hidden>
Date: Fri Feb 10 19:55:20 2012 +0100
ARM: dma-mapping: use asm-generic/
This patch modifies dma-mapping implementation on ARM architecture to
use common dma_map_ops structure and asm-generic/
helpers.
Signed-off-by: Marek Szyprowski <email address hidden>
Signed-off-by: Kyungmin Park <email address hidden>
commit 28134fc1ed9a76f
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 8e91ccd4ef8ecb6
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 038982c4368e103
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 91dfa01835db617
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 04ae409fc999f89
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.
commit e749a9f707f1102
Author: Marek Szyprowski <email address hidden>
Date: Fri Dec 23 10:37:13 2011 +0100
common: DMA-mapping: add NON-CONSISTENT attribute
DMA_
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 13905d68bbe8a3f
Author: Marek Szyprowski <email address hidden>
Date: Fri Dec 23 09:30:47 2011 +0100
common: DMA-mapping: add WRITE_COMBINE attribute
DMA_
buffered to improve performance. It will be used by the replacement for
ARM/ARV32 specific dma_alloc_
Signed-off-by: Marek Szyprowski <email address hidden>
Signed-off-by: Kyungmin Park <email address hidden>
Reviewed-by: Arnd Bergmann <email address hidden>
commit 638ad497eece84a
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 3142381f981e4b7
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 3f2f7b32827cd84
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/
Signed-off-by: Marek Szyprowski <email address hidden>
Signed-off-by: Kyungmin Park <email address hidden>
Reviewed-by: Arnd Bergmann <email address hidden>
commit 8c91ba6a647954b
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/
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 cdd549989b6e850
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/
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 2d9d57833acc03a
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/
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 5cd3f01ad97767f
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/
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 baa1954924802ff
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/
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 a08c9b3b5894d77
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/
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 75ab645afcf3cf5
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/
Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
Signed-off-by: Marek Szyprowski <email address hidden>
[added missing changes to arch/powerpc/
Signed-off-by: Kyungmin Park <email address hidden>
Reviewed-by: David Gibson <email address hidden>
Reviewed-by: Arnd Bergmann <email address hidden>
commit 5a0ec54b355466b
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/
Signed-off-by: Andrzej Pietrasiewicz <email address hidden>
[added missing changes to arch/mips/
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 f0553cf4f64f0c1
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/
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 43581f8a23de713
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_
can be implemented using DMA_ATTR_
dma_
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 d4e888d27e89fbf
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.
commit 40a384ccbfe1001
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 3645c6c8ae3cac9
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 c325d7b87be9131
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 93f9460dc89fca5
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 d19a667eb951025
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.
Acknowledge
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 44f11fbc3fafe80
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 03182e93bccf8a5
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 753685a0c640f96
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 1ab43d0ff29dc51
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 bcbfdae6fccc0ff
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 447b27489eb2060
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 380c02d3aec6039
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 48e7d3eacedab24
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 99f508035cf93d6
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 drmModeGetConne
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 5320918b9a87865
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 2c07a21d6fb0be4
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 cbc7e22151d99ed
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 1828fe6c5f593b8
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 ce880cb860f3669
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/
add /devices/
add /devices/
remove /devices/
remove /devices/
remove /2-1.2:
After:
add /devices/
add /devices/
add /devices/
remove /devices/
remove /devices/
remove /devices/
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 8229c885fe361e5
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/
commit c3c50e8b651887b
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_
Signed-off-by: Ville Syrjälä <email address hidden>
Signed-off-by: Dave Airlie <email address hidden>
commit d63f5e6bf6f2a15
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 6bfc56aa89f963b
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_
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 93bbf6dbdadbb47
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:47 2012 +0200
drm: Make drm_crtc_
drm_
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 ac235dafb60d3ba
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:46 2012 +0200
drm: Fix drm_mode_
Change drm_mode_
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 5f61bb421f01023
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 90367bf6e983525
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 ee34ab5b01e6e7c
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 1dd6c8bda9aef72
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:42 2012 +0200
drm: Make drm_mode_
drm_
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 1d97e9154821d52
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 e36fae3889db38f
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 2fcfc75b112e897
Author: Ville Syrjälä <email address hidden>
Date: Tue Mar 13 12:35:39 2012 +0200
drm: Change drm_display_
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 6653cc8d3b8d1c6
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 09016a11fc738e8
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 50d44a523759c39
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 f1377998eede7a8
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 abd32008ff0b21e
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.
* 'drm-nouveau-next' of git://anongit.
drm/nouveau: map first page of mmio early and determine chipset earlier
drm/
drm/
drm/
drm/
drm/
drm/
drm/
drm/
drm/
drm/
drm/
drm/
drm/
drm/
drm/nv40/pm: fix fanspeed regression
drm/
drm/nvc0/pm: restrict pll mode to clocks that can actually use it
drm/
drm/
...
commit 2f5394c3ed573de
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 4cbb0f8d2b06c72
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 3488c57b983546e
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 6860dc8251eacd1
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 c674844bab6df08
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 6e83fda2c055f17
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 f14d9a4dda65439
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 e436d1bb0a3e5ff
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 8663bc7cde00c8e
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 8c1dcb6573ae71f
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 c11dd0da5277596
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 4489b9835a08676
Author: Ben Skeggs <email address hidden>
Date: Wed Mar 7 13:22:50 2012 +1000
drm/
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 05a7c15d48ff53b
Author: Ben Skeggs <email address hidden>
Date: Sun Mar 4 17:05:54 2012 +1000
drm/
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 7c5f6a87b2337cc
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 29181d2f7bec0f5
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 8b83d67c2e2b7e7
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 e6084257d07fffc
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 1ae73f2f16f1a90
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 44ab8cc56c45ca7
Author: Xi Wang <email address hidden>
Date: Fri Feb 3 11:13:55 2012 -0500
drm/nouveau/dp: fix bad comparison in dp_link_
The comparison (lpre == DP_TRAIN_
lpre is initialized as (lane & 0x0c) >> 2, which is at most 3, while
DP_
Signed-off-by: Xi Wang <email address hidden>
Signed-off-by: Ben Skeggs <email address hidden>
commit 84ddfda6d4765e4
Author: Ben Skeggs <email address hidden>
Date: Thu Feb 2 09:33:05 2012 +1000
drm/
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 7d3a766b6aa4e29
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 950c44b6ddc0dfb
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 df26bc9c3206025
Author: Christoph Bumiller <email address hidden>
Date: Sat Jan 21 23:13:26 2012 +0100
drm/
Signed-off-by: Christoph Bumiller <email address hidden>
Signed-off-by: Ben Skeggs <email address hidden>
commit 990449c77cafb77
Author: Ben Skeggs <email address hidden>
Date: Thu Jan 12 15:34:54 2012 +1000
drm/
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 4abb410a13eec3f
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 070be296b65d120
Author: Ben Skeggs <email address hidden>
Date: Tue Jan 24 18:30:10 2012 +1000
drm/
Signed-off-by: Ben Skeggs <email address hidden>
Signed-off-by: Martin Peres <email address hidden>
commit 25c53c1068a804c
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 8d7bb4006389060
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 b830973b6889581
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 a9bc247cbbc6310
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 0ce71415587b1fd
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 1a7287ea6f37c93
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 c57ebf5ef3588d2
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 496a73bbecb81e6
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 e495d0d7e36298f
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 6bdf68c9a427220
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 2d85bc8855d2734
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 085028ce3bf7136
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 fd99fd6100d3b7a
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 68a64cad07057c3
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 c7c039fd31be82e
Author: Roy Spliet <email address hidden>
Date: Mon Jan 9 15:23:07 2012 +1000
drm/nouveau/pm: implement DDR2/DDR3/
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 03ddf04bdb9cc4c
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 3d8a408c43828d5
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 1a5f985c17c3136
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 bfb314652430cec
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 b0103747094b622
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 b1aa5531cc74ea0
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 bc6389e4fa1a653
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 ddb2005516949dc
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 668b6c097dbaf19
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 f3298532f71f163
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 c70c41e89f0481f
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 1072856a1c60472
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 ff92a6cda74c0a5
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 d81c19e312a22bd
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 ddfd2da48421e6b
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 7ad2d31cb692597
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 83465324cb50e22
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}
gma500: mark psb_intel_
gma500: psb_intel_display: drop unused variables
gma500: mark psb_intel_
gma500: drop unused psb_intel_
gma500: oaktrail_
gma500: oaktrail_
gma500: mark oaktrail_
gma500: oaktrail_hdmi: fix -Wmissing-
gma500: oaktrail_hdmi: drop dead code
gma500: oaktrail_crtc: drop unused variables
gma500: oaktrail_crtc: mark few functions as static
gma500: mdfld_intel_
gma500: mdfld_dsi_
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 8e18db815c92f17
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:15:47 2012 +0000
gma500: psb_irq: mark mid_{enable, disable}
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 f42aaa6f7c35e0e
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:15:34 2012 +0000
gma500: mark psb_intel_
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 2e33d6b92ff3298
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 3c1d08d7af81b4d
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:14:44 2012 +0000
gma500: mark psb_intel_
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 412a3df1ce4203c
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:14:32 2012 +0000
gma500: drop unused psb_intel_
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 cc2e991c1564c95
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:14:18 2012 +0000
gma500: oaktrail_
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 1e30296a603812f
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:13:23 2012 +0000
gma500: oaktrail_
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 771f64d027db83f
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:13:10 2012 +0000
gma500: mark oaktrail_
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 6e7f45736e46f14
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:12:56 2012 +0000
gma500: oaktrail_hdmi: fix -Wmissing-
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 e1bb07cbe18b28d
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 4398e58c5fc2bcd
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 44332ddfeb07960
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 cbc5a1850d83bbf
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:11:50 2012 +0000
gma500: mdfld_intel_
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 c7a5ae2f232e77f
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:11:38 2012 +0000
gma500: mdfld_dsi_
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 e4b9ff716fd6b49
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 1c6a62680beeeb3
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 062d054eb359bf1
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_
cdv_
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 bc11da70aca6528
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 455b9e91f2a4206
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:10:38 2012 +0000
gma500: cdv_intel_hdmi: add missing include
drivers/
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 657da160cc22c69
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 0313c0de54ee241
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 a8ec6229651b36b
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 2acdc9fa7e0b6fa
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:09:45 2012 +0000
gma500: cdv_intel_crt: add missing include
drivers/
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 017350bcb065ba7
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:09:33 2012 +0000
gma500: fix cdv_intel_
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 aa53f5331c4ea15
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:09:19 2012 +0000
gma500: fix two -Wmissing-
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 15308e23fb1bbb4
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:08:45 2012 +0000
gma500: mark psb_driver_
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 1fc93332cd2ba59
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 699f0b45cef8259
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:04:47 2012 +0000
gma500: fix ioctl confict
Move DRM_GMA_
DRM_
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 670c044454a33ab
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 3afad3c2bc554d2
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_
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 b2d57b337f88229
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:04:08 2012 +0000
gma500: mmu: drop unused psb_get_
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 ffe94d9c754ebdc
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 bc7f2b0839fc0b8
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 4796001a7d5dfda
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:03:32 2012 +0000
gma500: drop unused psbfb_suspend(
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 a58df0ade953f19
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/
drivers/
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 89f58dcdf997ee2
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 fda95c2e7304c9d
Author: Kirill A. Shutemov <email address hidden>
Date: Thu Mar 8 16:02:50 2012 +0000
gma500: mdfld_dsi_
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 6aa1ead1b855819
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 026abc333205c1f
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 c6265ff593467d4
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 c715bc1bf422543
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 4578240b48ed33f
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 aa7c62af10b6ba7
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_
In psb_intel_
'psb_
'psb_
when we do 'psb_intel_
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_
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 05442e5e1ff1e75
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 648a8e342c5a754
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 933315acb6e223d
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 3df546be6b74c1e
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 b19c19afa880105
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:
this case as id 0.
Signed-off-by: Rob Clark <email address hidden>
Signed-off-by: Dave Airlie <email address hidden>
commit 966e0cdd5046573
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 81ffbbedc37c604
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 884a53ef43eb69d
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 54e88e065ef5e89
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 9e6f3d02c4d28e6
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 798bcf7341cd434
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 c79a49ca000ebcf
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 c5b3b8504f17003
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 f712812e1ba7f17
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 dfb276f098e0e90
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 b35ea4ab8884b36
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 27cd77694bfa2e1
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 293f9fd53aa1529
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 eb0c19c539f72d9
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 442f7cfa04afe73
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 cdac5504b298152
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 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 a02fa397b09cf1e
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 0f9e006c9a8b264
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 901ea57dc4a2792
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 89e5181f3f79fbe
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 3ae19b750bdc09c
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 e5bcf23443740f7
Merge: 019d96c ff5f4b0
Author: Dave Airlie <email address hidden>
Date: Thu Feb 23 14:11:53 2012 +0000
Merge tag 'drm-intel-
* tag 'drm-intel-
Revert "drivers/
drm/
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_
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 ff5f4b0585620e5
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/
Signed-Off-by: Daniel Vetter <email address hidden>
commit 019d96cb55ade38
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 466e69b8b03b8c1
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 42b923b587d055c
Author: Dan Carpenter <email address hidden>
Date: Tue Feb 14 10:38:11 2012 +0300
drm/
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 cdbe8b5426e71d0
Merge: 285484e 172975a
Author: Dave Airlie <email address hidden>
Date: Tue Feb 14 14:16:00 2012 +0000
Merge tag 'drm-intel-
* tag 'drm-intel-
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_batchbuffe
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/
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 285484e2d55e760
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 dd220a00e8bd5ad
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 51a59ac8739b333
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 ade510153ecb7d5
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 0a240ec43667c6e
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 f9cd8ec34f24088
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 67d4a87b0a6bf72
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 eb4f923b1ceac8a
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 b5ec427e8d8c66e
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 bd49ae46f8a24c0
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 bb1bd2f43ee1538
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 6b82ef50d8617f3
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 8b7de6aa84682a3
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 8bf42225dac8656
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 fb2a99e15ff0d34
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_
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 d9bc3c02e36d844
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 4a67d3919031555
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 198ceac09104900
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.
* 'for-airlied' of git://people.
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_
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 83b316fdafcc37e
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:37 2012 +0100
drm exynos: use drm_fb_
info-
info-
so drm_fb_
exynos_
Signed-off-by: Sascha Hauer <email address hidden>
Tested-by: Inki Dae <email address hidden>
Signed-off-by: Dave Airlie <email address hidden>
commit a1178ca06213ba9
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:30 2012 +0100
drm crtc_helper: use list_for_each_entry
list_
of entries. Here, no entries are removed, so use list_for_
Signed-off-by: Sascha Hauer <email address hidden>
Signed-off-by: Dave Airlie <email address hidden>
commit b20f38679fee704
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 4f988d132d2668b
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_
Signed-off-by: Sascha Hauer <email address hidden>
Signed-off-by: Dave Airlie <email address hidden>
commit e9ad318128aa858
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 3a8148c514b4567
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:24 2012 +0100
drm fb helper: use drm_helper_
drm_
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 4cae5b84628d5df
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:23 2012 +0100
drm: add proper return value for drm_mode_
drm_
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 a1b7736dac5f2d5
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_
Signed-off-by: Sascha Hauer <email address hidden>
Signed-off-by: Dave Airlie <email address hidden>
commit 554f1d7888d4a10
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_
which does a drm_mode_
Signed-off-by: Sascha Hauer <email address hidden>
Signed-off-by: Dave Airlie <email address hidden>
commit aefd330e694d5b7
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 59ce062ead2a7d1
Author: Sascha Hauer <email address hidden>
Date: Wed Feb 1 11:38:20 2012 +0100
drm crtc: add forgotten idr cleanup functions
drm_
add the missing counterparts in drm_mode_
Signed-off-by: Sascha Hauer <email address hidden>
Signed-off-by: Dave Airlie <email address hidden>
commit f2746f83d50287f
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 c9068eb296fc682
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_
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 9292f37e1f5c794
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_
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:/
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:/
Signed-off-by: Eugeni Dodonov <email address hidden>
Signed-off-by: Dave Airlie <email address hidden>
commit 30388c6e48e62b2
Author: Alex Deucher <email address hidden>
Date: Fri Jan 20 14:50:18 2012 -0500
drm/
Starting with DCE3 hardware, atom contains a general purpose
ProcessI2cC
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 9048955748aa14b
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 1849ecb22fb3b5d
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 6d75e83ee31c146
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_
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 86a4d69c0ad62ce
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 a14b1b42477c5ef
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 de67cba65944f26
Author: Danny Kukawka <email address hidden>
Date: Wed Feb 15 18:53:55 2012 +0100
Revert "drivers/
This reverts commit e167976ee7f5fe4
Since this was already fixed in commit
3bd3c932997
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 f3cfcba60fcfdce
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:/
Signed-off-by: Chris Wilson <email address hidden>
Reviewed-by: Eugeni Dodonov <email address hidden>
Signed-off-by: Daniel Vetter <email address hidden>
commit ee4f42b10bbc404
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 52d39a213505310
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_
Signed-off-by: Chris Wilson <email address hidden>
Signed-off-by: Daniel Vetter <email address hidden>
commit a71d8d94525e8fd
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_
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_
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-
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-
firefox-
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 7c26e5c6edaec70
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 8a8ed1f5143b3df
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-
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 b1d7e4b41fd0f72
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 8ac5a6d5b56700c
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 d3ae08109d628d2
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 99ffa1629d73729
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:/
Bugzilla: https:/
Tested-by: Nicolas Kalkhof nkalkhof(
Acked-by: Chris Wilson <email address hidden>
Signed-Off-by: Daniel Vetter <email address hidden>
commit 53d227f282eb9fa
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-
ring-
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 6f392d548658a17
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_
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_
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_
instead of ring->oustandin
refactoring more clearly correct. Also improve the commit message
with issues discussed on irc.
Bugzilla: https:/
Tested-by: Nicolas Kalkhof nkalkhof(
Reviewed-by: Chris Wilson <email address hidden>
Signed-Off-by: Daniel Vetter <email address hidden>
commit 5391d0cffeb15f4
Author: Daniel Vetter <email address hidden>
Date: Wed Jan 25 14:03:57 2012 +0100
drm/i915: outstanding_
So don't assign it false, that's just confusing ... No functional
change here.
Signed-Off-by: Daniel Vetter <email address hidden>
commit 67a3744f7515edd
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 ee64cbdbf617067
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 dd202c6dd612bee
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 5f7f726d2caf1e5
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 75c13993db59234
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 c3febcc438ba087
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 8f4839e21ea9a8f
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 0529a0d9f0e702f
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 dbb025757a30cd2
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_
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 5def474ec6e37fe
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 99fca60c76ffbdb
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 ca9bfa7eed20ea3
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_
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_
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_
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 d442ae181ba8608
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 9edd576d89a5b6d
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-
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 e21af88d39796c9
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:/
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 3cf17fc522ee081
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 5eb719cdbe47237
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 7bddb01fb9697af
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 1d2a314c97ceaf3
Author: Daniel Vetter <email address hidden>
Date: Thu Feb 9 17:15:46 2012 +0100
drm/i915: initialization/
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 428ccb21b740f60
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 50a4c4a94d24fe1
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 7e3b8737e719c4d
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
inconsisten
Reviewed-
Reviewed-by: Eugeni Dodonov <email address hidden>
Signed-Off-by: Daniel Vetter <email address hidden>
commit ff240199b6a3b0b
Author: Daniel Vetter <email address hidden>
Date: Tue Jan 31 21:08:14 2012 +0100
drm/i915: s/DRM_ERROR/
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-
leaves behind a dirty dmesg.
Reviewed-by: Chris Wilson <email address hidden>
Signed-Off-by: Daniel Vetter <email address hidden>
commit 3fa7d235440a188
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 11782b0233c06a3
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 f691e2f4cec334e
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 172975aa746e155
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 8461d2267726ddd
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_
With this patch tests/gem_mmap_gtt now actually works.
v2: add __ to copy_to_
v3: Fixup the swizzling logic, it swizzled the wrong pages.
Bugzilla: https:/
Reviewed-by: Chris Wilson <email address hidden>
Signed-off-by: Daniel Vetter <email address hidden>
commit 8c59967c448af5d
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_
reinstate backing storage for truncated objects. The check at the end
of pwrite_slow takes care of this.
v2:
- add missing intel_gtt_
- add __ to copy_from_
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 5c0480f21f9896c
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 ea16a3cdb9218a2
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 c9c4b6f6c28354f
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:/
Signed-Off-by: Daniel Vetter <email address hidden>
commit 068c6ff1cbbfc09
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 33f3f518fbb65d8
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 4ca4a250ac93d55
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_
Reviewed-by: Eric Anholt <email address hidden>
Reviewed-by: Chris Wilson <email address hidden>
Signed-Off-by: Daniel Vetter <email address hidden>
commit ff865f79764ca43
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:26 2011 +0100
drm/i915: remove the i915_batchbuffe
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 653d7bed26a0c29
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-
Reviewed-by: Eugeni Dodonov <email address hidden>
Signed-Off-by: Daniel Vetter <email address hidden>
commit 6a9c308de0332b8
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 08e14e80d022926
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 39965b376601314
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 1690e1eb7a90218
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_
report EDADLK upon fence starvation, the batchbuffer can fail with only
one fence required...
Fixes intel-gpu-
Bugzilla: https:/
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 6a233c78878d879
Author: Daniel Vetter <email address hidden>
Date: Wed Dec 14 13:57:07 2011 +0100
drm/
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 c1cd90ed7957d1d
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 d27b1e0ec2a0a04
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 96154f2faba5402
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-
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 b6daa025b1e1aeb
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 6dc0e816bb7478f
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 8436473a4b10243
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_
forcing do_idle_maps to true.
This also fixes tests/gem_
Reported-by: <email address hidden>
Bugzilla: https:/
Reviewed-by: Keith Packard <email address hidden>
Signed-off-by: Ben Widawsky <email address hidden>
Signed-off-by: Daniel Vetter <email address hidden>
commit b93f9cf14e714c2
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 fc74d8e01165b56
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 8d79c3490aecfe6
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 8e636784b6f7665
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 931872fceabacf2
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 aca258482ed7c60
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 47842649ef43ba4
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 c6a32fcbbbc25d7
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 3d29b842e58fbca
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 b2c606fe1defd1f
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_
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 493dea2876df144
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:/
Signed-off-by: Thomas Meyer <email address hidden>
Signed-off-by: Daniel Vetter <email address hidden>
commit d7e96feab83d29e
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 092945e11c5b84f
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 6919132e7a307b1
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 1f182b27d50ae9f
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 23c99e775d14f01
Author: Adam Jackson <email address hidden>
Date: Fri Oct 7 14:38:43 2011 -0400
drm/i915: Fix assert_
Signed-off-by: Adam Jackson <email address hidden>
Signed-off-by: Daniel Vetter <email address hidden>
commit 28c057945ef5d16
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 2aded1b6bb83cab
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_
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 931872fceabacf2
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 f3953dcb98bad1c
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 a7516a05311d0e2
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 c65d77d83ccffc6
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 6b2d590540d2190
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 5a117db77e47e39
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 cec2f356d59d9e0
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 0b8ecdda1943a05
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_
*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 ff626cc8fffc59c
Merge: 98b4483 cb1ecf2
Author: Sumit Semwal <email address hidden>
Date: Sun Mar 18 15:08:18 2012 +0530
Merge branch 'master' of git://git.
commit 98b4483c9bebaad
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 3f543446953d92d
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 ab006e704d13f9d
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 27f730ae85cf43c
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 615103add715717
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 53448da53090cc6
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 3eb6701ea04a352
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 ae927777447fa62
Merge: 88de86e a8e8195
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:23 2012 +0400
Merge branch 'tracking-
commit a8e8195749ad169
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 85135b5f37cee94
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 c910e9790b8e9a3
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/
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 b00ba63608caa94
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 0457845da7dfe21
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 a9bec4490a2b08f
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 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 88de86ec98bce1c
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 b6e497deb81d561
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 d9078fb59c20dff
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 8dc7cdf843817de
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 20362d5791fc0c0
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 01667557f6b0e3a
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 6dbda8b398b21bf
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 e97660f2cbb2f0e
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 9ce11cbad1b4fee
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
- 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 d1ea0e9ebe0d8c1
Merge: 3676d8b 85141dd
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:20 2012 +0400
Merge branch 'tracking-
commit 85141dd3025c5c4
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 6f67c47532b20be
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 569aa60b8a69618
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_
* db5500_
are called from prcmu_set_
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 5587dae019fae5e
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 3e4e9a48c8057d7
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 c20703f92b21c9c
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 e2e23afdc93d569
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 01d9ee53ab2c4f6
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 324ae6098c81213
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 f3197067dc7d046
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 bd19e7dbf88fcec
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 dabc71e521bc8be
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 1dfe2d069e719d7
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 d030a8b5e4c9d69
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 b53662cb0a3b150
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 10491ab20450c75
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 8005472caf15d54
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 0f34107d88b8c07
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 ad393c1fd8e28dc
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 4d75833447deecd
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 3676d8bb4d4d2ce
Merge: 4695ea3 648ec27
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:19 2012 +0400
Merge branch 'tracking-
commit 648ec275cc53a16
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 587f10a737e3280
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 3f6e6ef41f29467
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 7cad876d059cd1b
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 18f88ad877a9d3c
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 1acaa28b2098f7e
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 685fec4d4f4fb6b
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 4695ea361dd1810
Merge: e854823 e7cc3ac
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:18 2012 +0400
Merge branch 'tracking-
commit e7cc3aca0f6a36b
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 280ad7fda5f9521
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 964dba283439a4d
Author: Grant Likely <email address hidden>
Date: Fri Feb 24 14:58:34 2012 -0700
devicetree: Add empty of_platform_
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_
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_
CONFIG_
Signed-off-by: Grant Likely <email address hidden>
Cc: Benoit Cousson <email address hidden>
Cc: Samuel Ortiz <email address hidden>
commit d593f25ff263b1a
Author: Grant Likely <email address hidden>
Date: Fri Feb 24 08:24:17 2012 -0700
irq_domain: Centralize definition of irq_dispose_
Several architectures define their own empty irq_dispose_
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 abd2363f6a5f103
Author: Grant Likely <email address hidden>
Date: Fri Feb 24 08:07:06 2012 -0700
irq_
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 b4e518547da042f
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 6d166fec1296706
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 bae1d8f19983fbf
"
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 2462bacd0334d91
Author: Grant Likely <email address hidden>
Date: Thu Jan 26 14:10:13 2012 -0700
irq_
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 ff8c3ab8161d0df
Author: Grant Likely <email address hidden>
Date: Tue Jan 24 17:09:13 2012 -0700
irq_
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 9f70b8eb3cd37c6
Author: Grant Likely <email address hidden>
Date: Thu Jan 26 12:24:34 2012 -0700
irq_
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 c1e572e6506082e
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 15a25980d450c81
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 0bd761e1b6d909d
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 a18dc81bf58258a
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 16b2e6e2f31dda4
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_
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 6b783f7c5dde264
Author: Grant Likely <email address hidden>
Date: Tue Jan 10 17:09:30 2012 -0700
irq_domain: Remove irq_domain_
irq_
support was complete. This patch removes the irq_domain_
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 75294957be1dee7
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_
to call irq_domain_
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 5769089ac72569d
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 a850a7554442f08
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 1bc04f2cf8c2a1f
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_
(first_
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 a8db8cf0d894df5
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 68700650e71b6bb
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 03848373ea741ca
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 cc79ca691c292e9
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 6d9285b00f776ee
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:51 2012 -0700
irq_
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 4bbdd45afdae208
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:51 2012 -0700
irq_
This patch drops the powerpc-specific irq_map table and replaces it with
directly using the irq_alloc_
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
possible allocated irq is now returned by arch_probe_
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 bae1d8f19983fbf
Author: Grant Likely <email address hidden>
Date: Tue Feb 14 14:06:50 2012 -0700
irq_
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/
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 644bd954313254b
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 7bb69bade0d4171
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/
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 e1964c50a83d1ce
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 7ab3a837adfc502
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 e8548239735dc23
Merge: 7a8d137 7143d3d
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:17 2012 +0400
Merge branch 'tracking-
commit 7143d3dbeef5480
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 7a8d1373b87d108
Merge: e929c2d 19b45d9
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:16 2012 +0400
Merge branch 'tracking-
commit 19b45d92a9bd07d
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_
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 088e82eaee80e14
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 e78a6de95d3cc32
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 55d05d0a4c08385
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 e929c2dfe477869
Merge: ac3034f 6af36d8
Author: Andrey Konovalov <email address hidden>
Date: Thu Mar 22 20:34:15 2012 +0400
Merge branch 'tracking-
commit 6af36d89e14e31a
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 ac3034ff903beed
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 61275682a44b5aa
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 84e74c1c837349a
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/
arch/
Change-Id: I805deceba0a334
commit bb41b9275264eea
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 2c3c374fe9d4f04
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 88432424043a5b1
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 94ddc3135ef09e1
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 f2a40a9f0c753ff
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 600e4ff55bb844a
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 1a1dca870bf21eb
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 e5de166b3cd2a3e
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 655774bcf249cf6
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 |