FUJITA Tomonori [Wed, 11 Aug 2010 01:03:22 +0000 (18:03 -0700)]
dma-mapping: unify dma_get_cache_alignment implementations
dma_get_cache_alignment returns the minimum DMA alignment. Architectures
defines it as ARCH_DMA_MINALIGN (formally ARCH_KMALLOC_MINALIGN). So we
can unify dma_get_cache_alignment implementations.
Note that some architectures implement dma_get_cache_alignment wrongly.
dma_get_cache_alignment() should return the minimum DMA alignment. So
fully-coherent architectures should return 1. This patch also fixes this
issue.
Signed-off-by: FUJITA Tomonori <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
FUJITA Tomonori [Wed, 11 Aug 2010 01:03:22 +0000 (18:03 -0700)]
dma-mapping: rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN
Now each architecture has the own dma_get_cache_alignment implementation.
dma_get_cache_alignment returns the minimum DMA alignment. Architectures
define it as ARCH_KMALLOC_MINALIGN (it's used to make sure that malloc'ed
buffer is DMA-safe; the buffer doesn't share a cache with the others). So
we can unify dma_get_cache_alignment implementations.
This patch:
dma_get_cache_alignment() needs to know if an architecture defines
ARCH_KMALLOC_MINALIGN or not (needs to know if architecture has DMA
alignment restriction). However, slab.h define ARCH_KMALLOC_MINALIGN if
architectures doesn't define it.
Let's rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN.
ARCH_KMALLOC_MINALIGN is used only in the internals of slab/slob/slub
(except for crypto).
Signed-off-by: FUJITA Tomonori <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Anton Vorontsov [Wed, 11 Aug 2010 01:03:21 +0000 (18:03 -0700)]
edac: mpc85xx: add support for new MPCxxx/Pxxxx EDAC controllers
Simply add proper IDs into the device table.
Signed-off-by: Anton Vorontsov <[email protected]>
Cc: Scott Wood <[email protected]>
Cc: Peter Tyser <[email protected]>
Cc: Dave Jiang <[email protected]>
Cc: Doug Thompson <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Kulikov Vasiliy [Wed, 11 Aug 2010 01:03:20 +0000 (18:03 -0700)]
edac: i5400: improve handling of pci_enable_device() return value
-EIO is not the only error code that pci_enable_device() may return, also
the set of errors can be enhanced in future. We should compare return
code with zero, not with concrete error value.
Signed-off-by: Kulikov Vasiliy <[email protected]>
Acked-by: Mauro Carvalho Chehab <[email protected]>
Cc: Jeff Roberson <[email protected]>
Cc: Doug Thompson <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Kulikov Vasiliy [Wed, 11 Aug 2010 01:03:19 +0000 (18:03 -0700)]
edac: i5000: improve handling of pci_enable_device() return value
-EIO is not the only error code that pci_enable_device() may return, also
the set of errors can be enhanced in future. We should compare return
code with zero, not with concrete error value.
Signed-off-by: Kulikov Vasiliy <[email protected]>
Acked-by: Mauro Carvalho Chehab <[email protected]>
Cc: Jeff Roberson <[email protected]>
Cc: Doug Thompson <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Christoph Egger [Wed, 11 Aug 2010 01:03:18 +0000 (18:03 -0700)]
edac: add wissing pieces from MPC85xx -> FSL_SOC_BOOKE
In
5753c082f66eca5be81f6bda85c1718c5eea6ada ("powerpc/85xx: Kconfig
cleanup") menuconfig MPC85xx was replaced by FSL_SOC_BOOKE but some
references insider the code were not adjusted accordingly. This patch
adresses these missing pieces.
Signed-off-by: Christoph Egger <[email protected]>
Cc: Doug Thompson <[email protected]>
Cc: Peter Tyser <[email protected]>
Cc: Kumar Gala <[email protected]>
Cc: Scott Wood <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Oleg Nesterov [Wed, 11 Aug 2010 01:03:17 +0000 (18:03 -0700)]
pids: alloc_pidmap: remove the unnecessary boundary checks
alloc_pidmap() calculates max_scan so that if the initial offset != 0 we
inspect the first map->page twice. This is correct, we want to find the
unused bits < offset in this bitmap block. Add the comment.
But it doesn't make any sense to stop the find_next_offset() loop when we
are looking into this map->page for the second time. We have already
already checked the bits >= offset during the first attempt, it is fine to
do this again, no matter if we succeed this time or not.
Remove this hard-to-understand code. It optimizes the very unlikely case
when we are going to fail, but slows down the more likely case.
Signed-off-by: Oleg Nesterov <[email protected]>
Cc: Salman Qazi <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Sukadev Bhattiprolu <[email protected]>
Cc: "Eric W. Biederman" <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Salman [Wed, 11 Aug 2010 01:03:16 +0000 (18:03 -0700)]
pids: fix a race in pid generation that causes pids to be reused immediately
A program that repeatedly forks and waits is susceptible to having the
same pid repeated, especially when it competes with another instance of
the same program. This is really bad for bash implementation.
Furthermore, many shell scripts assume that pid numbers will not be used
for some length of time.
Race Description:
A B
// pid == offset == n // pid == offset == n + 1
test_and_set_bit(offset, map->page)
test_and_set_bit(offset, map->page);
pid_ns->last_pid = pid;
pid_ns->last_pid = pid;
// pid == n + 1 is freed (wait())
// Next fork()...
last = pid_ns->last_pid; // == n
pid = last + 1;
Code to reproduce it (Running multiple instances is more effective):
#include <errno.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
// The distance mod 32768 between two pids, where the first pid is expected
// to be smaller than the second.
int PidDistance(pid_t first, pid_t second) {
return (second + 32768 - first) % 32768;
}
int main(int argc, char* argv[]) {
int failed = 0;
pid_t last_pid = 0;
int i;
printf("%d\n", sizeof(pid_t));
for (i = 0; i <
10000000; ++i) {
if (i % 32786 == 0)
printf("Iter: %d\n", i/32768);
int child_exit_code = i % 256;
pid_t pid = fork();
if (pid == -1) {
fprintf(stderr, "fork failed, iteration %d, errno=%d", i, errno);
exit(1);
}
if (pid == 0) {
// Child
exit(child_exit_code);
} else {
// Parent
if (i > 0) {
int distance = PidDistance(last_pid, pid);
if (distance == 0 || distance > 30000) {
fprintf(stderr,
"Unexpected pid sequence: previous fork: pid=%d, "
"current fork: pid=%d for iteration=%d.\n",
last_pid, pid, i);
failed = 1;
}
}
last_pid = pid;
int status;
int reaped = wait(&status);
if (reaped != pid) {
fprintf(stderr,
"Wait return value: expected pid=%d, "
"got %d, iteration %d\n",
pid, reaped, i);
failed = 1;
} else if (WEXITSTATUS(status) != child_exit_code) {
fprintf(stderr,
"Unexpected exit status %x, iteration %d\n",
WEXITSTATUS(status), i);
failed = 1;
}
}
}
exit(failed);
}
Thanks to Ted Tso for the key ideas of this implementation.
Signed-off-by: Salman Qazi <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Theodore Ts'o <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Sukadev Bhattiprolu <[email protected]>
Cc: "Eric W. Biederman" <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Alexey Dobriyan [Wed, 11 Aug 2010 01:03:14 +0000 (18:03 -0700)]
partitions: fix sometimes unreadable partition strings
Fix this garbage happening quite often:
==> sda:
scsi 3:0:0:0: CD-ROM TOSHIBA
==> sda1 sda2 sda3 sda4 <sr0: scsi3-mmc drive: 24x/24x writer dvd-ram cd/rw xa/form2 cdda tray
^^^
Uniform CD-ROM driver Revision: 3.20
sr 3:0:0:0: Attached scsi CD-ROM sr0
==> sda5 sda6 sda7 >
Make "sda: sda1 ..." lines actually lines.
Signed-off-by: Alexey Dobriyan <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Jens Rottmann [Wed, 11 Aug 2010 01:03:12 +0000 (18:03 -0700)]
cs5535-mfgpt: reuse timers that have never been set up
The MFGPT hardware may be set up only once, therefore
cs5535_mfgpt_free_timer() didn't re-set the timer's "avail" bit. However
if a timer is freed before it has actually been in use then it may be made
available again.
Signed-off-by: Jens Rottmann <[email protected]>
Acked-by: Andres Salomon <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Jordan Crouse <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Julia Lawall [Wed, 11 Aug 2010 01:03:12 +0000 (18:03 -0700)]
drivers/char/n_gsm.c: add missing spin_unlock_irqrestore
Add a spin_unlock_irqrestore missing on the error path. Converting the
return to break leads to the spin_unlock_irqrestore at the end of the
function.
The semantic match that finds this problem is as follows:
(http://coccinelle.lip6.fr/)
// <smpl>
@@
expression E1;
@@
* spin_lock_irqsave(E1,...);
<+... when != E1
if (...) {
... when != E1
* return ...;
}
...+>
* spin_unlock_irqrestore(E1,...);
// </smpl>
Signed-off-by: Julia Lawall <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
Cc: Alan Cox <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Yinghai Lu [Wed, 11 Aug 2010 01:03:10 +0000 (18:03 -0700)]
ipmi: print info for spmi and smbios paths like acpi and pci
Print out the reg spacing and size for spmi and smbios so BIOS developers
can make them consistent.
Also remove extra PFX on the duplicating path.
Signed-off-by: Yinghai Lu <[email protected]>
Cc: Corey Minyard <[email protected]>
Cc: Matthew Garrett <[email protected]>
Cc: Len Brown <[email protected]>
Cc: Myron Stowe <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Yinghai Lu [Wed, 11 Aug 2010 01:03:10 +0000 (18:03 -0700)]
ipmi: fix memleaking for add_smi when duplicating happen
Free the temporary info struct when we have duplicated ones.
Signed-off-by: Yinghai Lu <[email protected]>
Cc: Corey Minyard <[email protected]>
Cc: Matthew Garrett <[email protected]>
Cc: Len Brown <[email protected]>
Cc: Myron Stowe <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Justin P. Mattock [Wed, 11 Aug 2010 01:03:09 +0000 (18:03 -0700)]
drivers/char/ipmi/ipmi_si_intf.c: fix warning: variable 'addr_space' set but not used
Fix a warning message generated by GCC, and also updates a web address
pointing to a pdf containing information.
CC [M] drivers/char/ipmi/ipmi_si_intf.o
drivers/char/ipmi/ipmi_si_intf.c: In function 'try_init_spmi':
drivers/char/ipmi/ipmi_si_intf.c:2016:8: warning: variable 'addr_space' set but not used
Signed-off-by: Sergey V. <[email protected]>
Signed-off-by: Justin P. Mattock <[email protected]>
Acked-by: Corey Minyard <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Robert P. J. Day [Wed, 11 Aug 2010 01:03:08 +0000 (18:03 -0700)]
procfs: simplify conditional processing of fs/proc.o.
Since the entire fs/proc directory is conditionally included based on
CONFIG_PROC_FS, it's redundant to check that same variable within that
directory.
Signed-off-by: Robert P. J. Day <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Nathan Lynch [Wed, 11 Aug 2010 01:03:08 +0000 (18:03 -0700)]
signalfd: fill in ssi_int for posix timers and message queues
If signalfd is used to consume a signal generated by a POSIX interval
timer or POSIX message queue, the ssi_int field does not reflect the data
(sigevent->sigev_value) supplied to timer_create(2) or mq_notify(3). (The
ssi_ptr field, however, is filled in.)
This behavior differs from signalfd's treatment of sigqueue-generated
signals -- see the default case in signalfd_copyinfo. It also gives
results that differ from the case when a signal is handled conventionally
via a sigaction-registered handler.
So, set signalfd_siginfo->ssi_int in the remaining cases (__SI_TIMER,
__SI_MESGQ) where ssi_ptr is set.
akpm: a non-back-compatible change. Merge into -stable to minimise the
number of kernels which are in the field and which miss this feature.
Signed-off-by: Nathan Lynch <[email protected]>
Acked-by: Davide Libenzi <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Oleg Nesterov [Wed, 11 Aug 2010 01:03:07 +0000 (18:03 -0700)]
ptrace: optimize exit_ptrace() for the likely case
exit_ptrace() takes tasklist_lock unconditionally. We need this lock to
avoid the race with ptrace_traceme(), it acts as a barrier.
Change its caller, forget_original_parent(), to call exit_ptrace() under
tasklist_lock. Change exit_ptrace() to drop and reacquire this lock if
needed.
This allows us to add the fastpath list_empty(ptraced) check. In the
likely no-tracees case exit_ptrace() just returns and we avoid the lock()
+ unlock() sequence.
"Zhang, Yanmin" <
[email protected]> suggested to add this
check, and he reports that this change adds about 11% improvement in some
tests.
Suggested-and-tested-by: "Zhang, Yanmin" <[email protected]>
Signed-off-by: Oleg Nesterov <[email protected]>
Acked-by: Roland McGrath <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
KOSAKI Motohiro [Wed, 11 Aug 2010 01:03:06 +0000 (18:03 -0700)]
memcg: convert to use zone_to_nid() from bare zone->zone_pgdat->node_id
We have zone_to_nid(). this patch convert all existing users of
zone->zone_pgdat->node_id.
Signed-off-by: KOSAKI Motohiro <[email protected]>
Acked-by: Balbir Singh <[email protected]>
Cc: KAMEZAWA Hiroyuki <[email protected]>
Cc: Mel Gorman <[email protected]>
Cc: Nishimura Daisuke <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
KOSAKI Motohiro [Wed, 11 Aug 2010 01:03:05 +0000 (18:03 -0700)]
memcg: remove nid and zid argument from mem_cgroup_soft_limit_reclaim()
mem_cgroup_soft_limit_reclaim() has zone, nid and zid argument. but nid
and zid can be calculated from zone. So remove it.
Signed-off-by: KOSAKI Motohiro <[email protected]>
Acked-by: KAMEZAWA Hiroyuki <[email protected]>
Acked-by: Mel Gorman <[email protected]>
Cc: Balbir Singh <[email protected]>
Cc: Nishimura Daisuke <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
KOSAKI Motohiro [Wed, 11 Aug 2010 01:03:05 +0000 (18:03 -0700)]
memcg: mem_cgroup_shrink_node_zone() doesn't need sc.nodemask
Currently mem_cgroup_shrink_node_zone() call shrink_zone() directly. thus
it doesn't need to initialize sc.nodemask because shrink_zone() doesn't
use it at all.
Signed-off-by: KOSAKI Motohiro <[email protected]>
Acked-by: KAMEZAWA Hiroyuki <[email protected]>
Acked-by: Mel Gorman <[email protected]>
Cc: Balbir Singh <[email protected]>
Cc: Nishimura Daisuke <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
KOSAKI Motohiro [Wed, 11 Aug 2010 01:03:04 +0000 (18:03 -0700)]
memcg: kill unnecessary initialization in mem_cgroup_shrink_node_zone()
sc.nr_reclaimed and sc.nr_scanned have already been initialized few lines
above "struct scan_control sc = {}" statement.
So, This patch remove this unnecessary code.
Signed-off-by: KOSAKI Motohiro <[email protected]>
Acked-by: KAMEZAWA Hiroyuki <[email protected]>
Cc: Balbir Singh <[email protected]>
Cc: Mel Gorman <[email protected]>
Cc: Nishimura Daisuke <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
KOSAKI Motohiro [Wed, 11 Aug 2010 01:03:02 +0000 (18:03 -0700)]
memcg: sc.nr_to_reclaim should be initialized
Currently, mem_cgroup_shrink_node_zone() initialize sc.nr_to_reclaim as 0.
It mean shrink_zone() only scan 32 pages and immediately return even if
it doesn't reclaim any pages.
This patch fixes it.
Signed-off-by: KOSAKI Motohiro <[email protected]>
Acked-by: KAMEZAWA Hiroyuki <[email protected]>
Acked-by: Mel Gorman <[email protected]>
Cc: Balbir Singh <[email protected]>
Cc: Nishimura Daisuke <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
KAMEZAWA Hiroyuki [Wed, 11 Aug 2010 01:03:02 +0000 (18:03 -0700)]
memcg: avoid css_get()
Now, memory cgroup increments css(cgroup subsys state)'s reference count
per a charged page. And the reference count is kept until the page is
uncharged. But this has 2 bad effect.
1. Because css_get/put calls atomic_inc()/dec, heavy call of them
on large smp will not scale well.
2. Because css's refcnt cannot be in a state as "ready-to-release",
cgroup's notify_on_release handler can't work with memcg.
3. css's refcnt is atomic_t, it means smaller than 32bit. Maybe too small.
This has been a problem since the 1st merge of memcg.
This is a trial to remove css's refcnt per a page. Even if we remove
refcnt, pre_destroy() does enough synchronization as
- check res->usage == 0.
- check no pages on LRU.
This patch removes css's refcnt per page. Even after this patch, at the
1st look, it seems css_get() is still called in try_charge().
But the logic is.
- If a memcg of mm->owner is cached one, consume_stock() will work.
At success, return immediately.
- If consume_stock returns false, css_get() is called and go to
slow path which may be blocked. At the end of slow path,
css_put() is called and restart from the start if necessary.
So, in the fast path, we don't call css_get() and can avoid access to
shared counter. This patch can make the most possible case fast.
Here is a result of multi-threaded page fault benchmark.
[Before]
25.32% multi-fault-all [kernel.kallsyms] [k] clear_page_c
9.30% multi-fault-all [kernel.kallsyms] [k] _raw_spin_lock_irqsave
8.02% multi-fault-all [kernel.kallsyms] [k] try_get_mem_cgroup_from_mm <=====(*)
7.83% multi-fault-all [kernel.kallsyms] [k] down_read_trylock
5.38% multi-fault-all [kernel.kallsyms] [k] __css_put
5.29% multi-fault-all [kernel.kallsyms] [k] __alloc_pages_nodemask
4.92% multi-fault-all [kernel.kallsyms] [k] _raw_spin_lock_irq
4.24% multi-fault-all [kernel.kallsyms] [k] up_read
3.53% multi-fault-all [kernel.kallsyms] [k] css_put
2.11% multi-fault-all [kernel.kallsyms] [k] handle_mm_fault
1.76% multi-fault-all [kernel.kallsyms] [k] __rmqueue
1.64% multi-fault-all [kernel.kallsyms] [k] __mem_cgroup_commit_charge
[After]
28.41% multi-fault-all [kernel.kallsyms] [k] clear_page_c
10.08% multi-fault-all [kernel.kallsyms] [k] _raw_spin_lock_irq
9.58% multi-fault-all [kernel.kallsyms] [k] down_read_trylock
9.38% multi-fault-all [kernel.kallsyms] [k] _raw_spin_lock_irqsave
5.86% multi-fault-all [kernel.kallsyms] [k] __alloc_pages_nodemask
5.65% multi-fault-all [kernel.kallsyms] [k] up_read
2.82% multi-fault-all [kernel.kallsyms] [k] handle_mm_fault
2.64% multi-fault-all [kernel.kallsyms] [k] mem_cgroup_add_lru_list
2.48% multi-fault-all [kernel.kallsyms] [k] __mem_cgroup_commit_charge
Then, 8.02% of try_get_mem_cgroup_from_mm() disappears because this patch
removes css_tryget() in it. (But yes, this is an extreme case.)
Signed-off-by: Daisuke Nishimura <[email protected]>
Signed-off-by: KAMEZAWA Hiroyuki <[email protected]>
Cc: Daisuke Nishimura <[email protected]>
Cc: Balbir Singh <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
KAMEZAWA Hiroyuki [Wed, 11 Aug 2010 01:03:00 +0000 (18:03 -0700)]
memcg: use find_lock_task_mm() in memory cgroups oom
When the OOM killer scans task, it check a task is under memcg or
not when it's called via memcg's context.
But, as Oleg pointed out, a thread group leader may have NULL ->mm
and task_in_mem_cgroup() may do wrong decision. We have to use
find_lock_task_mm() in memcg as generic OOM-Killer does.
Signed-off-by: KAMEZAWA Hiroyuki <[email protected]>
Cc: Oleg Nesterov <[email protected]>
Cc: Daisuke Nishimura <[email protected]>
Cc: Balbir Singh <[email protected]>
Reviewed-by: Minchan Kim <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Daisuke Nishimura [Wed, 11 Aug 2010 01:02:59 +0000 (18:02 -0700)]
memcg: remove mem from arg of charge_common
mem_cgroup_charge_common() is always called with @mem = NULL, so it's
meaningless. This patch removes it.
Signed-off-by: Daisuke Nishimura <[email protected]>
Cc: Balbir Singh <[email protected]>
Acked-by: KAMEZAWA Hiroyuki <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Daisuke Nishimura [Wed, 11 Aug 2010 01:02:59 +0000 (18:02 -0700)]
memcg: remove redundant code
- try_get_mem_cgroup_from_mm() calls rcu_read_lock/unlock by itself, so we
don't have to call them in task_in_mem_cgroup().
- *mz is not used in __mem_cgroup_uncharge_common().
- we don't have to call lookup_page_cgroup() in mem_cgroup_end_migration()
after we've cleared PCG_MIGRATION of @oldpage.
- remove empty comment.
- remove redundant empty line in mem_cgroup_cache_charge().
Signed-off-by: Daisuke Nishimura <[email protected]>
Acked-by: Balbir Singh <[email protected]>
Acked-by: KAMEZAWA Hiroyuki <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
KAMEZAWA Hiroyuki [Wed, 11 Aug 2010 01:02:58 +0000 (18:02 -0700)]
memcg: clean up waiting move acct
Now, for checking a memcg is under task-account-moving, we do css_tryget()
against mc.to and mc.from. But this is just complicating things. This
patch makes the check easier.
This patch adds a spinlock to move_charge_struct and guard modification of
mc.to and mc.from. By this, we don't have to think about complicated
races arount this not-critical path.
[
[email protected]: don't crash on a null memcg being passed]
Signed-off-by: KAMEZAWA Hiroyuki <[email protected]>
Signed-off-by: Balbir Singh <[email protected]>
Cc: Daisuke Nishimura <[email protected]>
Cc: Balbir Singh <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
KAMEZAWA Hiroyuki [Wed, 11 Aug 2010 01:02:57 +0000 (18:02 -0700)]
memcg: clean up try_charge main loop
mem_cgroup_try_charge() has a big loop in it and seems to be hard to read.
Most of routines are for slow path. This patch moves codes out from the
loop and make it clear what's done.
Summary:
- refactoring a function to detect a memcg is under acccount move or not.
- refactoring a function to wait for the end of moving task acct.
- refactoring a main loop('s slow path) as a function and make it clear
why we retry or quit by return code.
- add fatal_signal_pending() check for bypassing charge loops.
Signed-off-by: KAMEZAWA Hiroyuki <[email protected]>
Cc: Daisuke Nishimura <[email protected]>
Cc: Balbir Singh <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
KAMEZAWA Hiroyuki [Wed, 11 Aug 2010 01:02:56 +0000 (18:02 -0700)]
memcg: remove experimental from swap account config
It's 11 months since we changed swap_map[] to indicates SWAP_HAS_CACHE.
Since that, memcg's swap accounting has been very stable and it seems
it can be maintained.
So, I'd like to remove EXPERIMENTAL from the config.
Acked-by: Balbir Singh <[email protected]>
Acked-by: Daisuke Nishimura <[email protected]>
Signed-off-by: KAMEZAWA Hiroyuki <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Chris Wright [Wed, 11 Aug 2010 01:02:55 +0000 (18:02 -0700)]
blkdev: cgroup whitelist permission fix
The cgroup device whitelist code gets confused when trying to grant
permission to a disk partition that is not currently open. Part of
blkdev_open() includes __blkdev_get() on the whole disk.
Basically, the only ways to reliably allow a cgroup access to a partition
on a block device when using the whitelist are to 1) also give it access
to the whole block device or 2) make sure the partition is already open in
a different context.
The patch avoids the cgroup check for the whole disk case when opening a
partition.
Addresses https://bugzilla.redhat.com/show_bug.cgi?id=589662
Signed-off-by: Chris Wright <[email protected]>
Acked-by: Serge E. Hallyn <[email protected]>
Tested-by: Serge E. Hallyn <[email protected]>
Reported-by: Vivek Goyal <[email protected]>
Cc: Al Viro <[email protected]>
Cc: Christoph Hellwig <[email protected]>
Cc: "Daniel P. Berrange" <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Dan Carpenter [Wed, 11 Aug 2010 01:02:54 +0000 (18:02 -0700)]
cgroups: save space for the terminator
The original code didn't leave enough space for a NULL terminator. These
strings are copied with strcpy() into fixed length buffers in
cgroup_root_from_opts().
Signed-off-by: Dan Carpenter <[email protected]>
Acked-by: Serge E. Hallyn <[email protected]>
Reviewd-by: KAMEZAWA Hiroyuki <[email protected]>
Cc: Paul Menage <[email protected]>
Cc: Li Zefan <[email protected]>
Cc: Ben Blum <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Randy Dunlap [Wed, 11 Aug 2010 01:02:53 +0000 (18:02 -0700)]
Documentation/padata.txt: fix typos etc.
Fix typos & grammar.
Use CPU instead of cpu in text.
Signed-off-by: Randy Dunlap <[email protected]>
Acked-by: Steffen Klassert <[email protected]>
Cc: Herbert Xu <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Huang Shijie [Wed, 11 Aug 2010 01:02:52 +0000 (18:02 -0700)]
Documentation/00-INDEX: remove reference to exception.txt
The exception.txt has been removed from the Documentation directory. So
update the index file for it.
Signed-off-by: Huang Shijie <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Ben Hutchings [Wed, 11 Aug 2010 01:02:51 +0000 (18:02 -0700)]
docbook: need xmldoclinks for all doc types
$ rm -rf build
$ mkdir build
$ cp .config build
$ make O=build htmldocs
...
xmlto: linux-2.6/build/Documentation/DocBook/media.xml
does not validate (status 3)
xmlto: Fix document syntax or use --skip-validation option
linux-2.6/build/Documentation/DocBook/media.xml:4:
warning: failed to load external entity
"linux-2.6/build/Documentation/DocBook/media-entities.tmpl"
We need the xmldoclinks built for any document types built from the
XML sources.
Signed-off-by: Ben Hutchings <[email protected]>
Acked-by: Andy Whitcroft <[email protected]>
Cc: Randy Dunlap <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Joe Perches [Wed, 11 Aug 2010 01:02:50 +0000 (18:02 -0700)]
Documentation/networking/wavelan.txt: deleted, not in tree
Commit
1d794e3b353b ("Staging: wavelan: delete the driver") removed the
source, so remove the documentation as well.
Signed-off-by: Joe Perches <[email protected]>
Cc: Jean Tourrilhes <[email protected]>
Acked-by: Randy Dunlap <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Randy Dunlap [Wed, 11 Aug 2010 01:02:50 +0000 (18:02 -0700)]
mtd/nand_base: fix kernel-doc warnings & typos
Fix mtd/nand_base.c kernel-doc warnings and typos.
Warning(drivers/mtd/nand/nand_base.c:893): No description found for parameter 'mtd'
Warning(drivers/mtd/nand/nand_base.c:893): No description found for parameter 'ofs'
Warning(drivers/mtd/nand/nand_base.c:893): No description found for parameter 'len'
Warning(drivers/mtd/nand/nand_base.c:893): No description found for parameter 'invert'
Warning(drivers/mtd/nand/nand_base.c:930): No description found for parameter 'mtd'
Warning(drivers/mtd/nand/nand_base.c:930): No description found for parameter 'ofs'
Warning(drivers/mtd/nand/nand_base.c:930): No description found for parameter 'len'
Warning(drivers/mtd/nand/nand_base.c:987): No description found for parameter 'mtd'
Warning(drivers/mtd/nand/nand_base.c:987): No description found for parameter 'ofs'
Warning(drivers/mtd/nand/nand_base.c:987): No description found for parameter 'len'
Warning(drivers/mtd/nand/nand_base.c:2087): No description found for parameter 'len'
Signed-off-by: Randy Dunlap <[email protected]>
Cc: David Woodhouse <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Randy Dunlap [Wed, 11 Aug 2010 01:02:48 +0000 (18:02 -0700)]
fusion: fix kernel-doc warnings
Fix (delete) empty kernel-doc lines/warnings:
Warning(drivers/message/fusion/mptbase.c:6916): bad line:
Warning(drivers/message/fusion/mptbase.c:7060): bad line:
Signed-off-by: Randy Dunlap <[email protected]>
Cc: Eric Moore <[email protected]>
Cc: James Bottomley <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Changli Gao [Wed, 11 Aug 2010 01:02:48 +0000 (18:02 -0700)]
reiserfs: remove unused local `wait'
Signed-off-by: Changli Gao <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Andrew Morton [Wed, 11 Aug 2010 01:02:47 +0000 (18:02 -0700)]
drivers/video/igafb.c: make igafb_setup() and igafb_init() static
Cc: Kulikov Vasiliy <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Kulikov Vasiliy [Wed, 11 Aug 2010 01:02:47 +0000 (18:02 -0700)]
drivers/video/igafb.c: introduce lost 'return'
If iga_init() fails, code releases resources and continues to use it. It
seems that after releasing resources 'return' should be.
Signed-off-by: Kulikov Vasiliy <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Daniel De Graaf [Wed, 11 Aug 2010 01:02:45 +0000 (18:02 -0700)]
fbmem: VM_IO set, but not propagated
When we setup up the VMA flags for the mmap flag and we end up using the
fallback mmap functionality we set the vma->vm_flags |= VM_IO. However we
neglect to propagate the flag to the vma->vm_page_prot.
This bug was found when Linux kernel was running under Xen. In that
scenario, any page that has VM_IO flag to it, means that it MUST be a
MMIO/VRAM backend memory , _not_ System RAM. That is what the fbmem.c
does: sets VM_IO, ioremaps the region - everything is peachy.
Well, not exactly. The vm_page_prot does not get the relevant PTE flags
set (_PAGE_IOMAP) which under Xen is a death-kneel to pages that are
referencing real physical devices but don't have that flag set.
This patch fixes this.
Signed-off-by: Konrad Rzeszutek Wilk <[email protected]>
Signed-off-by: Daniel De Graaf <[email protected]>
Tested-by: Eamon Walsh <[email protected]>
Cc: Florian Tobias Schandinat <[email protected]>
Cc: Dave Airlie <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Maurus Cuelenaere [Wed, 11 Aug 2010 01:02:44 +0000 (18:02 -0700)]
arm: samsung: remove pixclock from several boards
Since "s3c-fb: Automatically calculate pixel clock when none is given",
there's no need for manually calculating the pixel clock anymore so remove
these lines and add the correct refresh rate where appropriately.
Signed-off-by: Maurus Cuelenaere <[email protected]>
Cc: Pawel Osciak <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Cc: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Russell King <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Maurus Cuelenaere [Wed, 11 Aug 2010 01:02:44 +0000 (18:02 -0700)]
s3c-fb: automatically calculate pixel clock when none is given
Add a simple algorithm which calculates the pixel clock based on the video
mode parameters. This is only done when no pixel clock is supplied
through the platform data.
This allows drivers to omit the pixel clock data and thus share the
algorithm used for calculating it.
Signed-off-by: Maurus Cuelenaere <[email protected]>
Cc: Pawel Osciak <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Cc: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Russell King <[email protected]>
Tested-by: Donghwa Lee <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:43 +0000 (18:02 -0700)]
s3c-fb: add support for DMA channel control on S5PV210
S5PV210 SoCs allow enabling/disabling DMA channels per window. For a
window to display data from framebuffer memory, its channel has to be
enabled.
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Marek Szyprowski <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Marek Szyprowski [Wed, 11 Aug 2010 01:02:42 +0000 (18:02 -0700)]
s3c-fb: fix section mismatch
This patch fixes the following section mismatch errors:
WARNING: vmlinux.o(.data+0x20b40): Section mismatch in reference from the variable s3c_fb_driver_ids to the (unknown reference) .devinit.data:(unknown)
The variable s3c_fb_driver_ids references
the (unknown reference) __devinitdata (unknown)
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,
WARNING: vmlinux.o(.data+0x20b58): Section mismatch in reference from the variable s3c_fb_driver_ids to the (unknown reference) .devinit.data:(unknown)
The variable s3c_fb_driver_ids references
the (unknown reference) __devinitdata (unknown)
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,
WARNING: vmlinux.o(.data+0x20b70): Section mismatch in reference from the variable s3c_fb_driver_ids to the (unknown reference) .devinit.data:(unknown)
The variable s3c_fb_driver_ids references
the (unknown reference) __devinitdata (unknown)
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,
Signed-off-by: Marek Szyprowski <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:41 +0000 (18:02 -0700)]
s3c-fb: protect window-specific registers during updates
Newer hardware (S3C6410, S5P) have the ability to block updates from
shadow registers during reconfiguration. Add protect calls for set_par
and clear protection when resetting.
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:40 +0000 (18:02 -0700)]
s3c-fb: correct window osd size and alpha register handling
S3C64xx and S5P OSD registers for OSD size and alpha are as follows:
VIDOSDC: win 0 - size, win 1-4: alpha
VIDOSDD: win 1-2 - size; not present for windows 0, 3 and 4
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:40 +0000 (18:02 -0700)]
s3c-fb: add SHADOWCON shadow register locking support for S5PV210
S5PV210 allows per-window locking of register value updates from shadow
registers.
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:39 +0000 (18:02 -0700)]
s3c-fb: window 3 of 64xx+ does not have an osd_d register
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:38 +0000 (18:02 -0700)]
s3c-fb: add wait for VSYNC ioctl
Add VSYNC interrupt support and an ioctl that allows waiting for it.
Interrupts are turned on only when needed.
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:38 +0000 (18:02 -0700)]
s3c-fb: add support for display panning
Supports all bpp modes.
The PRTCON register is used to disable in-hardware updates of registers
that store start and end addresses of framebuffer memory. This prevents
display corruption in case we do not make it before VSYNC with updating
them atomically. With this feature there is no need to wait for a VSYNC
interrupt before each such update.
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:37 +0000 (18:02 -0700)]
s3c-fb: add device name initialization
Add framebuffer device name initialization calls for S3C2443, S3C64xx and
S5P machines.
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:36 +0000 (18:02 -0700)]
s3c-fb: separate S5PC100 and S5PV210 framebuffer driver data structures
S5PC100 and S5PV210 framebuffer devices differ slightly in terms of
available registers and their driver data structures have to be separate.
Those differences include dissimilar ways to control shadow register
updates.
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:36 +0000 (18:02 -0700)]
s3c-fb: correct FRAMESEL1 bitfield defines for VIDINTCON0 register
FRAMESEL1 bitfield starts on 13th bit, not on 14th.
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Acked-by: Ben Dooks <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pawel Osciak [Wed, 11 Aug 2010 01:02:35 +0000 (18:02 -0700)]
s3c-fb: fix various null references on framebuffer memory alloc failure
The following problems were found in the above situation:
sfb->windows[win] was being assigned at the end of s3c_fb_probe_win only.
This resulted in passing a NULL to s3c_fb_release_win if probe_win
returned early and a memory leak.
dma_free_writecombine does not allow its third argument to be NULL.
fb_dealloc_cmap does not verify whether its argument is not NULL.
Signed-off-by: Pawel Osciak <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Ben Dooks [Wed, 11 Aug 2010 01:02:34 +0000 (18:02 -0700)]
s3c-fb: integrate palette setup code into main driver
Remove the palette setup code from the header files and put it into the
main driver.
Signed-off-by: Ben Dooks <[email protected]>
Signed-off-by: Pawel Osciak <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: KyungMin Park <kyungmin.park.samsung.com>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Ben Dooks [Wed, 11 Aug 2010 01:02:34 +0000 (18:02 -0700)]
s3c-fb: udpate to support s3c2416/s3c2443 style hardware
Update the variant and window variant structures with the necessary
changes to support the older style of hardware where these are not in the
same place.
Add the support for the s3c2443/s3c2416 hardware by using the
platform-device s3c2443 to cover both, and add the initialisation data for
these.
Also change to including just the v4 header files for the moment until the
last of the merging of these is sorted out.
Signed-off-by: Ben Dooks <[email protected]>
Signed-off-by: Pawel Osciak <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: KyungMin Park <kyungmin.park.samsung.com>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Ben Dooks [Wed, 11 Aug 2010 01:02:33 +0000 (18:02 -0700)]
s3c-fb: initial move to unifying the header files
Remove the various header files that configure this driver and use the
platform device name to select the correct configuration at probe time.
Currently this does not remove the header files, only updates the driver
and the relevant platform files.
Signed-off-by: Ben Dooks <[email protected]>
Signed-off-by: Pawel Osciak <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: KyungMin Park <kyungmin.park.samsung.com>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Ben Dooks [Wed, 11 Aug 2010 01:02:32 +0000 (18:02 -0700)]
s3c-fb: only init window colour key controls for windows with blending
The driver clears all windows, but also sets the windows' colour key
controls at the same time. However, the last window does not have these
registers as it is always blended into the previous window.
Move the colour key initialisation into the probe, and run it for only
nr_win-1 windows.
Signed-off-by: Ben Dooks <[email protected]>
Signed-off-by: Pawel Osciak <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: KyungMin Park <kyungmin.park.samsung.com>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
InKi Dae [Wed, 11 Aug 2010 01:02:32 +0000 (18:02 -0700)]
s3c-fb: fix distortedness situation for the mode more then 24bpp
It has been working fine at 16bpp but in case of pixel format more then
24bpp it would occur distortedness situation on that mode. so this patch
set the word swap control bit of WINCONx to 1 as default value. but it
should be set to 0 in case that each ENLOCAL bit of WINCON0 ~ 2 registers
is enabled. this issue would be solved with local path feature soon.
Signed-off-by: InKi Dae <[email protected]>
Reviewed-by: KyungMin Park <kyungmin.park.samsung.com>
Signed-off-by: Ben Dooks <[email protected]>
Signed-off-by: Pawel Osciak <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
InKi Dae [Wed, 11 Aug 2010 01:02:31 +0000 (18:02 -0700)]
s3c-fb: add default window feature.
s5pv210 has five window layers (window0 ~ 4), among them, window0 ~ 2
could be used for local path with fimc(capture device) and fimd writeback
feature so this patch makes default window layer for UI to be set at
machine code.
Signed-off-by: InKi Dae <[email protected]>
Reviewed-by: KyungMin Park <kyungmin.park.samsung.com>
Signed-off-by: Ben Dooks <[email protected]>
Signed-off-by: Pawel Osciak <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Ben Dooks [Wed, 11 Aug 2010 01:02:30 +0000 (18:02 -0700)]
s3c-fb: change to depending on CONFIG_S3C_FB_DEV
As suggested by Marek Szyprowski, we should make the driver depend on the
configuration currently being used to build the platform device into the
kernel.
Signed-off-by: Ben Dooks <[email protected]>
Signed-off-by: Pawel Osciak <[email protected]>
Cc: InKi Dae <[email protected]>
Cc: KyungMin Park <kyungmin.park.samsung.com>
Cc: Marek Szyprowski <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Denys Vlasenko [Wed, 11 Aug 2010 01:02:30 +0000 (18:02 -0700)]
drivers/video/fbmem.c: simplify strlen()==0 check in fb_get_options()
Replaced !strlen(str) check with !str[0]. Removed the variable which was
used solely to store strlen result.
Signed-off-by: Denys Vlasenko <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Denys Vlasenko [Wed, 11 Aug 2010 01:02:29 +0000 (18:02 -0700)]
fbcon: uninline four foo_update_attr() functions
This patch uninlines four similar functions, foo_update_attr(), in four
fbcon-related files.
These functions contain loops, two of theam have _nested_ loops, and they
have more than one callsite each. I think they should not be inlined.
Signed-off-by: Denys Vlasenko <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Denys Vlasenko [Wed, 11 Aug 2010 01:02:29 +0000 (18:02 -0700)]
fbcon: uninline large static function get_color()
This function's body is good two screenfuls and it has six callsites. No
apparent reason why it is marked inline.
Signed-off-by: Denys Vlasenko <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Henrik Kretzschmar [Wed, 11 Aug 2010 01:02:28 +0000 (18:02 -0700)]
fbdev: efifb: section fixes
Remove 43 section mismatches by moving the two structures efifb_defined
and efifb_fix from .init.data to .devinit.data.
Also the two structure arrays dmi_system_table[] and dmi_list[] have been
moved from .data to .init.rodata and .init.data, which saves, if built-in,
some space.
On x86_64 'size -A' showed that these sections changed size:
efifb.o:
section size-old size-new
.data 1200 688
.init.data 7840 512
.init.rodata 0 7568
.devinit.data 0 256
Total 11927 11911
Signed-off-by: Henrik Kretzschmar <[email protected]>
Cc: Peter Jones <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Gregory Bean [Wed, 11 Aug 2010 01:02:27 +0000 (18:02 -0700)]
gpio: sx150x: add Semtech I2C sx150x gpio expander driver
Add support for Semtech SX150-series I2C GPIO expanders. Compatible
models include:
8 bits: sx1508q
16 bits: sx1509q
Signed-off-by: Gregory Bean <[email protected]>
Cc: David Brownell <[email protected]>
Cc: Jean Delvare <[email protected]>
Cc: Trilok Soni <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Daniel Gl?ckner [Wed, 11 Aug 2010 01:02:26 +0000 (18:02 -0700)]
gpiolib: allow nested threaded irqs for poll(2)
The pca953x driver requires the use of threaded irqs as its irq
demultiplexer can sleep. Our irq handler can be called from any context,
so use request_any_context_irq to allow threaded irqs as well.
Signed-off-by: Daniel Gl?ckner <[email protected]>
Reported-by: Ian Jeffray <[email protected]>
Cc: David Brownell <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Daniel Gl?ckner [Wed, 11 Aug 2010 01:02:25 +0000 (18:02 -0700)]
gpiolib: get rid of struct poll_desc and worklet
As sysfs_notify_dirent has been made irq safe, there is no reason to not
call it directly from irq. With the work_struct removed, the remaining
element in poll_desc is a sysfs_dirent pointer which may not be NULL. We
can therefore store it directly in the idr and pass it as context to the
irq handler.
Most part of the patch deals with renaming defines and variables to
reflect their new use without functional change.
I also took the opportunity to initialize the idr statically.
Signed-off-by: Daniel Gl?ckner <[email protected]>
Cc: David Brownell <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
David Brownell [Wed, 11 Aug 2010 01:02:24 +0000 (18:02 -0700)]
gpiolib: decouple might_sleep_if() from DEBUG
Be more consistent about runtime programming interface abuse warnings,
which can reduce some confusion and trigger bugfixes. Based on an
observation and patch from Jani Nikula.
Also update doc to highlight some sleeping-call issues and to match some
recent changes.
Signed-off-by: David Brownell <[email protected]>
Cc: Jani Nikula <[email protected]>
Cc: "Ryan Mallon" <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Dmitry Eremin-Solenikov [Wed, 11 Aug 2010 01:02:24 +0000 (18:02 -0700)]
pcf857x: support working w/o platform data
Provide sane defaults for pcf857x, so the driver can be used w/o providing
platform data (and thus can be simply bound via OF tree).
Signed-off-by: Dmitry Eremin-Solenikov <[email protected]>
Cc: Jean Delvare <[email protected]>
Cc: David Brownell <[email protected]>
Cc: Grant Likely <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Marc Kleine-Budde [Wed, 11 Aug 2010 01:02:23 +0000 (18:02 -0700)]
gpio: max730x: make pullups configurable via platformdata
The gpios on the max730x chips have support for internal pullups while in
input mode.
This patch adds support for configuring these pullups via platform data.
A new member ("input_pullup_active") to the platform data struct is
introduced. A set bit in this variable activates the pullups while the
respective port is in input mode. This is a compatible enhancement since
unset bits lead to disables pullups which was the default in the original
driver.
_Note_: the 4 lowest bits in "input_pullup_active" are unused because the
first 4 ports of the controller are not used, too.
Signed-off-by: Marc Kleine-Budde <[email protected]>
Reviewed-by: Wolfram Sang <[email protected]>
Cc: David Brownell <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Geert Uytterhoeven [Wed, 11 Aug 2010 01:02:22 +0000 (18:02 -0700)]
rtc: rp5c01: add NVRAM support
The Ricoh RP5C01 RTC contains 26 x 4 bits of NVRAM. Provide access to it
via a sysfs "nvram" attribute file.
Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Christian Dietrich [Wed, 11 Aug 2010 01:02:22 +0000 (18:02 -0700)]
drivers/rtc: remove unneeded ifdef CONFIG_PM
Because CONFIG_PM is a precondition to CONFIG_ACPI, the ifdef CONFIG_PM
within ifdef CONFIG_ACPI is redundant.
Signed-off-by: Christian Dietrich <[email protected]>
Acked-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Roman Fietze [Wed, 11 Aug 2010 01:02:21 +0000 (18:02 -0700)]
rtc-isl12022: properly handle military hour format
Mask out PM flag when reading the hour, always set MIL bit when
writing the hour.
Signed-off-by: Roman Fietze <[email protected]>
Acked-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Roy Zang [Wed, 11 Aug 2010 01:02:20 +0000 (18:02 -0700)]
rtc: add support for DS3232 RTC
Add a driver for the DS3232 RTC chip via the I2C bus. Alarms are not
supported in this version of the driver.
[
[email protected]: fix Kconfig help text]
Signed-off-by: Mingkai Hu <[email protected]>
Signed-off-by: Jingchang Lu <[email protected]>
Signed-off-by: Srikanth Srinivasan <[email protected]>
Signed-off-by: Roy Zang <[email protected]>
Acked-by: Wan ZongShun <[email protected]>
Cc: Kumar Gala <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:20 +0000 (18:02 -0700)]
rtc/nuc900: fix build warning
Remove unused local variable.
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:19 +0000 (18:02 -0700)]
rtc/nuc900: modify enable/disable IRQs and driver data setting location
This patch does two modifications:
(1) Adjust enable/disable IRQs location,enable it after rtc
registration and disable it prior to unregistration.
(2) Put 'platform_set_drvdata(pdev, nuc900_rtc)' in front of rtc
registration still be safety, though there is no need to do this, when
I move enable irq after rtc registration, I think still put
'platform_set_drvdata' before rtc registration that would be a good
habit.
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:18 +0000 (18:02 -0700)]
rtc/nuc900: make returning time checking function valid
Make returning time checking function valid. In spite of using the
'rtc_valid_tm', nevertheless, the read time function omits its returning
value, that means the 'rtc_valid_tm' is useless here.
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:17 +0000 (18:02 -0700)]
rtc/m48t86: use rtc_valid_tm() to check returned tm
Use rtc_valid_tm() to check the returned struct rtc_time *tm, to avoid
returning a wrong tm value.
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Paul Gortmaker <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:17 +0000 (18:02 -0700)]
rtc/m48t59: use rtc_valid_tm() to check returned tm
Use rtc_valid_tm to check the returned struct rtc_time *tm, to avoid
returning a wrong tm value.
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Paul Gortmaker <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:16 +0000 (18:02 -0700)]
rtc/max6900: use rtc_valid_tm() to check returning tm
Use rtc_valid_tm() to check returning tm for max6900, it can avoid
returning wrong tm value.
Signed-off-by: Wan ZongShun <[email protected]>
Acked-by: Dale Farnsworth <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:15 +0000 (18:02 -0700)]
rtc/m41t80: use rtc_valid_tm() to check returned tm
Use rtc_valid_tm() to check returned struct rtc_time *tm - it can avoid
returning wrong tm value.
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Roman Fietze [Wed, 11 Aug 2010 01:02:14 +0000 (18:02 -0700)]
rtc: add Intersil ISL12022 RTC driver
- derived from rtc-pcf8563
- no SRAM driver
Signed-off-by: Roman Fietze <[email protected]>
Cc: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Baruch Siach [Wed, 11 Aug 2010 01:02:13 +0000 (18:02 -0700)]
rtc: driver for the DryIce block found in i.MX25 chips
This driver is based on code from Freescale which accompanies their i.MX25
PDK board, with some cleanup.
Signed-off-by: Baruch Siach <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Cc: Sascha Hauer <[email protected]>
Acked-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Huang Weiyi [Wed, 11 Aug 2010 01:02:12 +0000 (18:02 -0700)]
drivers/rtc/rtc-pl031.c: remove unused #include <linux/version.h>
Signed-off-by: Huang Weiyi <[email protected]>
Acked-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:11 +0000 (18:02 -0700)]
rtc/pxa: remove unnecessary private ops->ioctl()
We shouldn't implement private ops->ioctl() unless absolutely necessary.
pxa series RTC driver's ioctl() is unnecessary, since RTC subsystem has
implement the ioctl() very well,so we can only use the API of
'.alarm_irq_enable' and '.update_irq_enable' to do enable irq action.
Signed-off-by: Wan ZongShun <[email protected]>
Acked-by: Robert Jarzmik <[email protected]>
Acked-by: Eric Miao <[email protected]>
Cc: Paul Gortmaker <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Sergey Matyukevich [Wed, 11 Aug 2010 01:02:10 +0000 (18:02 -0700)]
rtc: fixes and new functionality for fm3130
- add sanity check for alarm data in fm3130_probe
- fix fm3130_set_alarm.
According to the datasheet, setting match bit '0' indicates that the
corresponding alarm field will be used in the match process
- add operation alarm_irq_enable operation which is responsible for
handling RTC_AIE_ON, RTC_AIE_OFF ioctls
- remove clearing of AF bit after reading rtc/alarm control register:
according to datasheet this bit is cleared anyway when rtc/alarm control
register is read
[
[email protected]: make fm3130_alarm_irq_enable() static, fix comment layout]
Signed-off-by: Sergey Matyukevich <[email protected]>
Acked-by: Wan ZongShun <[email protected]>
Acked-by: Sergey Lapin <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:09 +0000 (18:02 -0700)]
rtc/rtc-mxc: remove six unused fields
Remove six unused fields from `struct rtc_plat_data'.
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Cc: Paul Gortmaker <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:09 +0000 (18:02 -0700)]
rtc/m48t59: kfree(NULL) is OK
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Cc: Paul Gortmaker <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:08 +0000 (18:02 -0700)]
rtc/pxa: remove unused field
pxa_rtc.rtc_alarm is unused.
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Eric Miao <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Graham Gower [Wed, 11 Aug 2010 01:02:08 +0000 (18:02 -0700)]
drivers/rtc/rtc-pcf8563.c: remove unused struct
Signed-off-by: Graham Gower <[email protected]>
Acked-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:07 +0000 (18:02 -0700)]
rtc/nuc900: fix checking of args during time-setting
When a user application wants to set the rtc time, the RTC subsystem takes
advantage of 'rtc_valid_tm(tm)' to check 'rtc_time *tm' value validity, it
make sure the 'tm->tm_year' is larger than 70,so if '70< tm_year < 100',
the '(settm->tm_year - 100)' will be negative. ' Setting the negative
value to hardware register will be invalid, so I add the 'if' condition to
make sure set a valid value to register.
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Wan ZongShun [Wed, 11 Aug 2010 01:02:05 +0000 (18:02 -0700)]
nuc900/rtc: change the waiting for device ready implement
- add an mdelay(1) to the polling loop to cause less frequent access to
the hardware register.
- change the return value from ENODEV to EPERM if the loop timed out. I
think the 'Operation not permitted' description is more suitable for the
meaning of 'check_rtc_access_enable()' function, it just be used to
judge rtc access operation is permitted or not.
Signed-off-by: Wan ZongShun <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Dan Carpenter [Wed, 11 Aug 2010 01:02:04 +0000 (18:02 -0700)]
autofs4: remove unneeded null check in try_to_fill_dentry()
After
97e7449a7ad: "autofs4: fix indirect mount pending expire race" we no
longer assumed that "ino" can be null. The other null checks got removed
but this was one was missed.
Signed-off-by: Dan Carpenter <[email protected]>
Cc: Ian Kent <[email protected]>
Cc: Al Viro <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Kulikov Vasiliy [Wed, 11 Aug 2010 01:02:04 +0000 (18:02 -0700)]
i2o: check return code from put_user()
Check return value of put_user() and return -EFAULT if it failed.
Original comment "We did a get user...so assuming mem is ok...is this
bad?" is incorrect because memory can be read only.
Signed-off-by: Kulikov Vasiliy <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Kulikov Vasiliy [Wed, 11 Aug 2010 01:02:03 +0000 (18:02 -0700)]
i2o: fix overflow of copy_to_user()
If (len > reslen) we must not call copy_to_user() since kernel buffer is
smaller than we want to copy. Similar code in this file is correct, so
this bug was a typo.
Signed-off-by: Kulikov Vasiliy <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Julia Lawall [Wed, 11 Aug 2010 01:02:03 +0000 (18:02 -0700)]
drivers/message/i2o/exec-osm.c: add missing mutex_unlock
Add a mutex_unlock missing on the error path.
The semantic match that finds this problem is as follows:
(http://coccinelle.lip6.fr/)
// <smpl>
@@
expression E1;
@@
* mutex_lock(E1,...);
<+... when != E1
if (...) {
... when != E1
* return ...;
}
...+>
* mutex_unlock(E1,...);
// </smpl>
Signed-off-by: Julia Lawall <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Pablo Castillo [Wed, 11 Aug 2010 01:02:01 +0000 (18:02 -0700)]
mmc: add ricoh e822 pci id
Signed-off-by: Pablo Castillo <[email protected]>
Signed-off-by: Stanislaw Gruszka <[email protected]>
Tested-by: Gregg Lebovitz <[email protected]>
Cc: Maxim Levitsky <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Roy Zang [Wed, 11 Aug 2010 01:02:01 +0000 (18:02 -0700)]
dts: add ESDHC weird voltage bits workaround
P4080 ESDHC controller does not support 1.8V and 3.0V voltage. but the
host controller capabilities register wrongly set the bits. This patch
adds the workaround to correct the weird voltage setting bits. Only 3.3V
voltage is supported for P4080 ESDHC controller.
Signed-off-by: Roy Zang <[email protected]>
Cc: Jerry Huang <[email protected]>
Cc: Benjamin Herrenschmidt <[email protected]>
Cc: Kumar Gala <[email protected]>
Cc: Grant Likely <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>