07 Sep, 2009
1 commit
-
This patch modifies the support of AC97 on the at91sam9263 ek board, so it would
share the code with AVR32.
Plus it removes a typo in at91sam9263_devices.c.Signed-off-by: Sedji Gaouaou
Signed-off-by: Russell King
01 Aug, 2009
2 commits
-
This patch adds board-specific data for IDE support on afeb9260.
Depends on #5631/1
Tested-by: Sergey Matyukevich
Signed-off-by: Sergey Matyukevich
Acked-by: Andrew Victor
Acked-by: Sergey Lapin
Signed-off-by: Russell King -
This patch adds platform data for CF/IDE support
and SMC init code for AT91SAM9260 SoC.Tested-by: Sergey Matyukevich
Signed-off-by: Sergey Matyukevich
Acked-by: Andrew Victor
Signed-off-by: Russell King
31 Jul, 2009
2 commits
-
CPUAT91 is based on Atmel's AT91RM9200 with up to 16MB Strataflash,
up to 128MB SDRAM and an ethernet PHY in RMII mode.Signed-off-by: Eric Benard
Acked-by: Andrew Victor
Signed-off-by: Russell King -
CPU9260 and CPU9G20 share the same PCB populated with either
Atmel's AT91SAM9260B or AT91SAM9G20B with up to 64MB Strataflash,
up to 128MB SDRAM, up to 2GB NAND and an ethernet PHY in RMII mode.Signed-off-by: Eric Benard
Acked-by: Andrew Victor
Signed-off-by: Russell King
26 Jul, 2009
1 commit
-
It adds DMA peripheral identifiers for hardware handshaking interface. It will
be used in platform code.Signed-off-by: Nicolas Ferre
Acked-by: Andrew Victor
Signed-off-by: Russell King
23 Jul, 2009
1 commit
-
Modify atmel LCD driver: atmel_lcdfb for at91sam9g10. This add a clock
management equivalent to at91sam9261.Signed-off-by: Hong Xu
Signed-off-by: Nicolas Ferre
Acked-by: Andrew Victor
Signed-off-by: Russell King
10 Jul, 2009
1 commit
-
The WM8731 driver has been updated to allow registration via normal
device model methods rather than from within the ASoC driver probe
so update the AT91SAM9G20-EK to make use of this.Signed-off-by: Mark Brown
Acked-by: Andrew Victor
Signed-off-by: Russell King
02 Jul, 2009
3 commits
-
From: Hong Xu
Here are the modification to at91sam9261 files dedicated to the support of
at91sam9g10. This direction has been adopted to minimize code duplication.All at91sam9261 drivers are enabled in _devices and board- files. Modificaton
to peripherals that support at91sam9g10 will be added in future patches.Signed-off-by: Hong Xu
Signed-off-by: Nicolas Ferre
Acked-by: Andrew Victor
Signed-off-by: Russell King -
From: Hong Xu
AT91sam9g10 is an ARM 926ej-s SOC. It is an evolution of the at91sam9261 with a
faster clock speed: 266/133MHz.Here is the basic header file support for this product.
Signed-off-by: Hong Xu
Signed-off-by: Nicolas Ferre
Acked-by: Andrew Victor
Signed-off-by: Russell King -
From: Hong Xu
Add the at91sam9g10 support to the AT91 generic clock file. It takes
advantage of the management by functionalities of those PLLs and clocks.Signed-off-by: Hong Xu
Signed-off-by: Nicolas Ferre
Acked-by: Andrew Victor
Signed-off-by: Russell King
27 Jun, 2009
5 commits
-
Here are the at91 specific files dedicated to the at91sam9g45 series. They
mimic the traditional at91 way of managing chips & boards.The first board that embeds at91sam9g45 chip is the AT91SAM9G45-EKES. In
the future, the main board for this 9g45 series will be the
AT91SAM9M10G45-EK (I choose this last name for the board file).Simple drivers are enabled in _devices and board- files. Newer peripheral
support will be added in future patches.Incuded peripherals support (for now):
- USART
- SPI
- Ethernet
- NAND flash
- LCD
- gpio/joystick/buttons
- leds and pwmSigned-off-by: Nicolas Ferre
Acked-by: Andrew Victor
Signed-off-by: Russell King -
AT91sam9g45 series is an ARM 926ej-s SOC family clocked at 400/133MHz.
It embedds USB high speed host and device, LCD, DDR2 RAM, and a full set of
peripherals.Here is the basic header file support for this product series.
Signed-off-by: Nicolas Ferre
Acked-by: Andrew Victor
Signed-off-by: Russell King -
Add the at91sam9g45 series support to the AT91 generic clock file.
This takes care of the particularities of the PMC for this series.
It also takes advantage of the management by functionalities of
those PLLs and clocks.Signed-off-by: Nicolas Ferre
Acked-by: Andrew Victor
Signed-off-by: Russell King -
Remove at91_gpiolib_request. It returns -EPERM if a request pin is not
in GPIO mode, however we want to be able to gpio_request alternative
function pins to reserve them, and in some cases we need to be able to
use the gpiolib functions on alternative function pins.Signed-off-by: Ryan Mallon
Acked-by: David Brownell
Signed-off-by: Russell King -
This adds input keyboard gpio support on at91sam9rlek board. It adds button 1
and 2 (left and right click).
It also adds gpio leds ds1, ds2 and ds3.Signed-off-by: Nicolas Ferre
Acked-by: Andrew Victor
Signed-off-by: Russell King
25 Jun, 2009
24 commits
-
This reverts commit 9e9f46c44e487af0a82eb61b624553e2f7118f5b.
Quoting from the commit message:
"At this point, it seems to solve more problems than it causes, so let's
try using it by default. It's an easy revert if it ends up causing
trouble."And guess what? The _CRS code causes trouble.
Signed-off-by: Linus Torvalds
-
* git://git.infradead.org/battery-2.6:
da9030_battery: Fix race between event handler and monitor
Add MAX17040 Fuel Gauge driver
w1: ds2760_battery: add support for sleep mode feature
w1: ds2760: add support for EEPROM read and write
ds2760_battery: cleanups in ds2760_battery_probe() -
…/{vfs-2.6,audit-current}
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
another race fix in jfs_check_acl()
Get "no acls for this inode" right, fix shmem breakage
inline functions left without protection of ifdef (acl)* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:
audit: inode watches depend on CONFIG_AUDIT not CONFIG_AUDIT_SYSCALL -
Signed-off-by: Al Viro
-
Signed-off-by: Al Viro
-
Even though one cannot make use of the audit watch code without
CONFIG_AUDIT_SYSCALL the spaghetti nature of the audit code means that
the audit rule filtering requires that it at least be compiled.Thus build the audit_watch code when we build auditfilter like it was
before cfcad62c74abfef83762dc05a556d21bdf3980a2Clearly this is a point of potential future cleanup..
Reported-by: Frans Pop
Signed-off-by: Eric Paris
Signed-off-by: Al Viro -
Signed-off-by: Al Viro
-
* 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
futex: Fix the write access fault problem for real -
commit 64d1304a64 (futex: setup writeable mapping for futex ops which
modify user space data) did address only half of the problem of write
access faults.The patch was made on two wrong assumptions:
1) access_ok(VERIFY_WRITE,...) would actually check write access.
On x86 it does _NOT_. It's a pure address range check.
2) a RW mapped region can not go away under us.
That's wrong as well. Nobody can prevent another thread to call
mprotect(PROT_READ) on that region where the futex resides. If that
call hits between the get_user_pages_fast() verification and the
actual write access in the atomic region we are toast again.The solution is to not rely on access_ok and get_user() for any write
access related fault on private and shared futexes. Instead we need to
fault it in with verification of write access.There is no generic non destructive write mechanism which would fault
the user page in trough a #PF, but as we already know that we will
fault we can as well call get_user_pages() directly and avoid the #PF
overhead.If get_user_pages() returns -EFAULT we know that we can not fix it
anymore and need to bail out to user space.Remove a bunch of confusing comments on this issue as well.
Signed-off-by: Thomas Gleixner
Cc: stable@kernel.org -
SLUB uses higher order allocations by default but falls back to small
orders under memory pressure. Make sure the GFP mask used in the initial
allocation doesn't include __GFP_NOFAIL.Signed-off-by: Pekka Enberg
Signed-off-by: Linus Torvalds -
Traditionally, we never failed small orders (even regardless of any
__GFP_NOFAIL flags), and slab will allocate order-1 allocations even for
small allocations that could fit in a single page (in order to avoid
excessive fragmentation).Maybe we should remove this warning entirely, but before making that
judgement, at least limit it to bigger allocations.Acked-by: Pekka Enberg
Cc: Andrew Morton
Signed-off-by: Linus Torvalds -
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
Staging: octeon-ethernet: Fix race freeing transmit buffers.
Staging: octeon-ethernet: Convert to use net_device_ops.
MIPS: Cavium: Add CPU hotplugging code.
MIPS: SMP: Allow suspend and hibernation if CPU hotplug is available
MIPS: Add arch generic CPU hotplug
DMA: txx9dmac: use dma_unmap_single if DMA_COMPL_{SRC,DEST}_UNMAP_SINGLE set
MIPS: Sibyte: Fix build error if CONFIG_SERIAL_SB1250_DUART is undefined.
MIPS: MIPSsim: Fix build error if MSC01E_INT_BASE is undefined.
MIPS: Hibernation: Remove SMP TLB and cacheflushing code.
MIPS: Build fix - include into all smp_processor_id() users.
MIPS: bug.h Build fix - include . -
The existing code had the following race:
Thread-1 Thread-2
inc/read in_use
inc/read in_use
inc tx_free_list[qos].len
inc tx_free_list[qos].lenThe actual in_use value was incremented twice, but thread-1 is going
to free memory based on its stale value, and will free one too many
times. The result is that memory is freed back to the kernel while
its packet is still in the transmit buffer. If the memory is
overwritten before it is transmitted, the hardware will put a valid
checksum on it and send it out (just like it does with good packets).
If by chance the TCP flags are clobbered but not the addresses or
ports, the result can be a broken TCP stream.The fix is to track the number of freed packets in a single location
(a Fetch-and-Add Unit register). That way it can never get out of sync
with itself.We try to free up to MAX_SKB_TO_FREE (currently 10) buffers at a time.
If fewer are available we adjust the free count with the difference.
The action of claiming buffers to free is atomic so two threads cannot
claim the same buffers.Signed-off-by: David Daney
Signed-off-by: Ralf Baechle -
Convert the driver to use net_device_ops as it is now mandatory.
Also compensate for the removal of struct sk_buff's dst field.
The changes are mostly mechanical, the content of ethernet-common.c
was moved to ethernet.c and ethernet-common.{c,h} are removed.Signed-off-by: David Daney
Signed-off-by: Ralf Baechle -
Thanks to Cavium Inc. for the code contribution and help.
Signed-off-by: Ralf Baechle
-
The SMP implementation of suspend and hibernate depends on CPU hotplugging.
In the past we didn't have CPU hotplug so suspend and hibernation were not
possible on SMP systems.Signed-off-by: Ralf Baechle
-
Each platform has to add support for CPU hotplugging itself by providing
suitable definitions for the cpu_disable and cpu_die of the smp_ops
methods and setting SYS_SUPPORTS_HOTPLUG_CPU. A platform should only set
SYS_SUPPORTS_HOTPLUG_CPU once all it's smp_ops definitions have the
necessary changes. This patch contains the changes to the dummy smp_ops
definition for uni-processor systems.Parts of the code contributed by Cavium Inc.
Signed-off-by: Ralf Baechle
-
This patch does not change actual behaviour since dma_unmap_page is just
an alias of dma_unmap_single on MIPS.Signed-off-by: Atsushi Nemoto
Cc: Ralf Baechle
Acked-by: Dan Williams
Signed-off-by: Andrew Morton
Signed-off-by: Ralf Baechle -
This fixes kernel.org bugzilla 13596, see
http://bugzilla.kernel.org/show_bug.cgi?id=13596Reported-by: dvice_null@yahoo.com
Signed-off-by: Ralf Baechle
-
This fixes kernel.org bugzilla 13595, see
http://bugzilla.kernel.org/show_bug.cgi?id=13595Reported-by: dvice_null@yahoo.com
Signed-off-by: Ralf Baechle
-
We can't perform any flushes on SMP from swsusp_arch_resume because
interrupts are disabled. A cross-CPU flush is unnecessary anyway
because all but the local CPU have already been disabled. A local
flush is not needed either because we didn't change any mappings. So
just delete the code.Signed-off-by: Ralf Baechle
-
Some of the were relying into smp.h being dragged in by another header
which of course is fragile. uses smp_processor_id()
only in macros and including smp.h there leads to an include loop, so
don't change cpu-info.h.Signed-off-by: Ralf Baechle
-
In the past this file somehow used to be dragged in.
Signed-off-by: Ralf Baechle