mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
Merge branch 'sh/stable-updates'
Conflicts: arch/sh/mm/cache-sh4.c
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
What: /sys/class/usb_host/usb_hostN/wusb_chid
|
||||
What: /sys/class/uwb_rc/uwbN/wusbhc/wusb_chid
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: David Vrabel <david.vrabel@csr.com>
|
||||
@@ -9,7 +9,7 @@ Description:
|
||||
|
||||
Set an all zero CHID to stop the host controller.
|
||||
|
||||
What: /sys/class/usb_host/usb_hostN/wusb_trust_timeout
|
||||
What: /sys/class/uwb_rc/uwbN/wusbhc/wusb_trust_timeout
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: David Vrabel <david.vrabel@csr.com>
|
||||
@@ -64,14 +64,14 @@ be used to view the printk buffer of a remote machine, even with live update.
|
||||
|
||||
Bernhard Kaindl enhanced firescope to support accessing 64-bit machines
|
||||
from 32-bit firescope and vice versa:
|
||||
- ftp://ftp.suse.de/private/bk/firewire/tools/firescope-0.2.2.tar.bz2
|
||||
- http://halobates.de/firewire/firescope-0.2.2.tar.bz2
|
||||
|
||||
and he implemented fast system dump (alpha version - read README.txt):
|
||||
- ftp://ftp.suse.de/private/bk/firewire/tools/firedump-0.1.tar.bz2
|
||||
- http://halobates.de/firewire/firedump-0.1.tar.bz2
|
||||
|
||||
There is also a gdb proxy for firewire which allows to use gdb to access
|
||||
data which can be referenced from symbols found by gdb in vmlinux:
|
||||
- ftp://ftp.suse.de/private/bk/firewire/tools/fireproxy-0.33.tar.bz2
|
||||
- http://halobates.de/firewire/fireproxy-0.33.tar.bz2
|
||||
|
||||
The latest version of this gdb proxy (fireproxy-0.34) can communicate (not
|
||||
yet stable) with kgdb over an memory-based communication module (kgdbom).
|
||||
@@ -178,7 +178,7 @@ Step-by-step instructions for using firescope with early OHCI initialization:
|
||||
|
||||
Notes
|
||||
-----
|
||||
Documentation and specifications: ftp://ftp.suse.de/private/bk/firewire/docs
|
||||
Documentation and specifications: http://halobates.de/firewire/
|
||||
|
||||
FireWire is a trademark of Apple Inc. - for more information please refer to:
|
||||
http://en.wikipedia.org/wiki/FireWire
|
||||
|
||||
@@ -451,3 +451,33 @@ Why: OSS sound_core grabs all legacy minors (0-255) of SOUND_MAJOR
|
||||
will also allow making ALSA OSS emulation independent of
|
||||
sound_core. The dependency will be broken then too.
|
||||
Who: Tejun Heo <tj@kernel.org>
|
||||
|
||||
----------------------------
|
||||
|
||||
What: Support for VMware's guest paravirtuliazation technique [VMI] will be
|
||||
dropped.
|
||||
When: 2.6.37 or earlier.
|
||||
Why: With the recent innovations in CPU hardware acceleration technologies
|
||||
from Intel and AMD, VMware ran a few experiments to compare these
|
||||
techniques to guest paravirtualization technique on VMware's platform.
|
||||
These hardware assisted virtualization techniques have outperformed the
|
||||
performance benefits provided by VMI in most of the workloads. VMware
|
||||
expects that these hardware features will be ubiquitous in a couple of
|
||||
years, as a result, VMware has started a phased retirement of this
|
||||
feature from the hypervisor. We will be removing this feature from the
|
||||
Kernel too. Right now we are targeting 2.6.37 but can retire earlier if
|
||||
technical reasons (read opportunity to remove major chunk of pvops)
|
||||
arise.
|
||||
|
||||
Please note that VMI has always been an optimization and non-VMI kernels
|
||||
still work fine on VMware's platform.
|
||||
Latest versions of VMware's product which support VMI are,
|
||||
Workstation 7.0 and VSphere 4.0 on ESX side, future maintainence
|
||||
releases for these products will continue supporting VMI.
|
||||
|
||||
For more details about VMI retirement take a look at this,
|
||||
http://blogs.vmware.com/guestosguide/2009/09/vmi-retirement.html
|
||||
|
||||
Who: Alok N Kataria <akataria@vmware.com>
|
||||
|
||||
----------------------------
|
||||
|
||||
@@ -123,10 +123,18 @@ resuid=n The user ID which may use the reserved blocks.
|
||||
|
||||
sb=n Use alternate superblock at this location.
|
||||
|
||||
quota
|
||||
noquota
|
||||
grpquota
|
||||
usrquota
|
||||
quota These options are ignored by the filesystem. They
|
||||
noquota are used only by quota tools to recognize volumes
|
||||
grpquota where quota should be turned on. See documentation
|
||||
usrquota in the quota-tools package for more details
|
||||
(http://sourceforge.net/projects/linuxquota).
|
||||
|
||||
jqfmt=<quota type> These options tell filesystem details about quota
|
||||
usrjquota=<file> so that quota information can be properly updated
|
||||
grpjquota=<file> during journal replay. They replace the above
|
||||
quota options. See documentation in the quota-tools
|
||||
package for more details
|
||||
(http://sourceforge.net/projects/linuxquota).
|
||||
|
||||
bh (*) ext3 associates buffer heads to data pages to
|
||||
nobh (a) cache disk block mapping information
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
Using flexible arrays in the kernel
|
||||
Last updated for 2.6.31
|
||||
Last updated for 2.6.32
|
||||
Jonathan Corbet <corbet@lwn.net>
|
||||
|
||||
Large contiguous memory allocations can be unreliable in the Linux kernel.
|
||||
@@ -40,6 +40,13 @@ argument is passed directly to the internal memory allocation calls. With
|
||||
the current code, using flags to ask for high memory is likely to lead to
|
||||
notably unpleasant side effects.
|
||||
|
||||
It is also possible to define flexible arrays at compile time with:
|
||||
|
||||
DEFINE_FLEX_ARRAY(name, element_size, total);
|
||||
|
||||
This macro will result in a definition of an array with the given name; the
|
||||
element size and total will be checked for validity at compile time.
|
||||
|
||||
Storing data into a flexible array is accomplished with a call to:
|
||||
|
||||
int flex_array_put(struct flex_array *array, unsigned int element_nr,
|
||||
@@ -76,16 +83,30 @@ particular element has never been allocated.
|
||||
Note that it is possible to get back a valid pointer for an element which
|
||||
has never been stored in the array. Memory for array elements is allocated
|
||||
one page at a time; a single allocation could provide memory for several
|
||||
adjacent elements. The flexible array code does not know if a specific
|
||||
element has been written; it only knows if the associated memory is
|
||||
present. So a flex_array_get() call on an element which was never stored
|
||||
in the array has the potential to return a pointer to random data. If the
|
||||
caller does not have a separate way to know which elements were actually
|
||||
stored, it might be wise, at least, to add GFP_ZERO to the flags argument
|
||||
to ensure that all elements are zeroed.
|
||||
adjacent elements. Flexible array elements are normally initialized to the
|
||||
value FLEX_ARRAY_FREE (defined as 0x6c in <linux/poison.h>), so errors
|
||||
involving that number probably result from use of unstored array entries.
|
||||
Note that, if array elements are allocated with __GFP_ZERO, they will be
|
||||
initialized to zero and this poisoning will not happen.
|
||||
|
||||
There is no way to remove a single element from the array. It is possible,
|
||||
though, to remove all elements with a call to:
|
||||
Individual elements in the array can be cleared with:
|
||||
|
||||
int flex_array_clear(struct flex_array *array, unsigned int element_nr);
|
||||
|
||||
This function will set the given element to FLEX_ARRAY_FREE and return
|
||||
zero. If storage for the indicated element is not allocated for the array,
|
||||
flex_array_clear() will return -EINVAL instead. Note that clearing an
|
||||
element does not release the storage associated with it; to reduce the
|
||||
allocated size of an array, call:
|
||||
|
||||
int flex_array_shrink(struct flex_array *array);
|
||||
|
||||
The return value will be the number of pages of memory actually freed.
|
||||
This function works by scanning the array for pages containing nothing but
|
||||
FLEX_ARRAY_FREE bytes, so (1) it can be expensive, and (2) it will not work
|
||||
if the array's pages are allocated with __GFP_ZERO.
|
||||
|
||||
It is possible to remove all elements of an array with a call to:
|
||||
|
||||
void flex_array_free_parts(struct flex_array *array);
|
||||
|
||||
|
||||
@@ -359,6 +359,7 @@ STAC9227/9228/9229/927x
|
||||
5stack-no-fp D965 5stack without front panel
|
||||
dell-3stack Dell Dimension E520
|
||||
dell-bios Fixes with Dell BIOS setup
|
||||
volknob Fixes with volume-knob widget 0x24
|
||||
auto BIOS setup (default)
|
||||
|
||||
STAC92HD71B*
|
||||
|
||||
16
MAINTAINERS
16
MAINTAINERS
@@ -2615,6 +2615,7 @@ L: linux1394-devel@lists.sourceforge.net
|
||||
W: http://www.linux1394.org/
|
||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git
|
||||
S: Maintained
|
||||
F: Documentation/debugging-via-ohci1394.txt
|
||||
F: drivers/ieee1394/
|
||||
|
||||
IEEE 1394 RAW I/O DRIVER
|
||||
@@ -3666,6 +3667,7 @@ NETWORKING [GENERAL]
|
||||
M: "David S. Miller" <davem@davemloft.net>
|
||||
L: netdev@vger.kernel.org
|
||||
W: http://www.linuxfoundation.org/en/Net
|
||||
W: http://patchwork.ozlabs.org/project/netdev/list/
|
||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.git
|
||||
S: Maintained
|
||||
F: net/
|
||||
@@ -4076,6 +4078,13 @@ M: Peter Zijlstra <a.p.zijlstra@chello.nl>
|
||||
M: Paul Mackerras <paulus@samba.org>
|
||||
M: Ingo Molnar <mingo@elte.hu>
|
||||
S: Supported
|
||||
F: kernel/perf_event.c
|
||||
F: include/linux/perf_event.h
|
||||
F: arch/*/*/kernel/perf_event.c
|
||||
F: arch/*/include/asm/perf_event.h
|
||||
F: arch/*/lib/perf_event.c
|
||||
F: arch/*/kernel/perf_callchain.c
|
||||
F: tools/perf/
|
||||
|
||||
PERSONALITY HANDLING
|
||||
M: Christoph Hellwig <hch@infradead.org>
|
||||
@@ -5656,6 +5665,13 @@ S: Maintained
|
||||
F: drivers/vlynq/vlynq.c
|
||||
F: include/linux/vlynq.h
|
||||
|
||||
VMWARE VMXNET3 ETHERNET DRIVER
|
||||
M: Shreyas Bhatewara <sbhatewara@vmware.com>
|
||||
M: VMware, Inc. <pv-drivers@vmware.com>
|
||||
L: netdev@vger.kernel.org
|
||||
S: Maintained
|
||||
F: drivers/net/vmxnet3/
|
||||
|
||||
VOLTAGE AND CURRENT REGULATOR FRAMEWORK
|
||||
M: Liam Girdwood <lrg@slimlogic.co.uk>
|
||||
M: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
||||
|
||||
48
Makefile
48
Makefile
@@ -1,7 +1,7 @@
|
||||
VERSION = 2
|
||||
PATCHLEVEL = 6
|
||||
SUBLEVEL = 32
|
||||
EXTRAVERSION = -rc4
|
||||
EXTRAVERSION = -rc5
|
||||
NAME = Man-Eating Seals of Antiquity
|
||||
|
||||
# *DOCUMENTATION*
|
||||
@@ -179,46 +179,9 @@ SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
|
||||
# Alternatively CROSS_COMPILE can be set in the environment.
|
||||
# Default value for CROSS_COMPILE is not to prefix executables
|
||||
# Note: Some architectures assign CROSS_COMPILE in their arch/*/Makefile
|
||||
#
|
||||
# To force ARCH and CROSS_COMPILE settings include kernel.* files
|
||||
# in the kernel tree - do not patch this file.
|
||||
export KBUILD_BUILDHOST := $(SUBARCH)
|
||||
|
||||
# Kbuild save the ARCH and CROSS_COMPILE setting in kernel.* files.
|
||||
# Restore these settings and check that user did not specify
|
||||
# conflicting values.
|
||||
|
||||
saved_arch := $(shell cat include/generated/kernel.arch 2> /dev/null)
|
||||
saved_cross := $(shell cat include/generated/kernel.cross 2> /dev/null)
|
||||
|
||||
ifneq ($(CROSS_COMPILE),)
|
||||
ifneq ($(saved_cross),)
|
||||
ifneq ($(CROSS_COMPILE),$(saved_cross))
|
||||
$(error CROSS_COMPILE changed from \
|
||||
"$(saved_cross)" to \
|
||||
to "$(CROSS_COMPILE)". \
|
||||
Use "make mrproper" to fix it up)
|
||||
endif
|
||||
endif
|
||||
else
|
||||
CROSS_COMPILE := $(saved_cross)
|
||||
endif
|
||||
|
||||
ifneq ($(ARCH),)
|
||||
ifneq ($(saved_arch),)
|
||||
ifneq ($(saved_arch),$(ARCH))
|
||||
$(error ARCH changed from \
|
||||
"$(saved_arch)" to "$(ARCH)". \
|
||||
Use "make mrproper" to fix it up)
|
||||
endif
|
||||
endif
|
||||
else
|
||||
ifneq ($(saved_arch),)
|
||||
ARCH := $(saved_arch)
|
||||
else
|
||||
ARCH := $(SUBARCH)
|
||||
endif
|
||||
endif
|
||||
ARCH ?= $(SUBARCH)
|
||||
CROSS_COMPILE ?=
|
||||
|
||||
# Architecture as present in compile.h
|
||||
UTS_MACHINE := $(ARCH)
|
||||
@@ -483,11 +446,6 @@ ifeq ($(config-targets),1)
|
||||
include $(srctree)/arch/$(SRCARCH)/Makefile
|
||||
export KBUILD_DEFCONFIG KBUILD_KCONFIG
|
||||
|
||||
# save ARCH & CROSS_COMPILE settings
|
||||
$(shell mkdir -p include/generated && \
|
||||
echo $(ARCH) > include/generated/kernel.arch && \
|
||||
echo $(CROSS_COMPILE) > include/generated/kernel.cross)
|
||||
|
||||
config: scripts_basic outputmakefile FORCE
|
||||
$(Q)mkdir -p include/linux include/config
|
||||
$(Q)$(MAKE) $(build)=scripts/kconfig $@
|
||||
|
||||
@@ -969,7 +969,6 @@ CONFIG_USB_ETH_RNDIS=y
|
||||
#
|
||||
CONFIG_USB_OTG_UTILS=y
|
||||
# CONFIG_USB_GPIO_VBUS is not set
|
||||
# CONFIG_ISP1301_OMAP is not set
|
||||
CONFIG_TWL4030_USB=y
|
||||
# CONFIG_NOP_USB_XCEIV is not set
|
||||
CONFIG_MMC=y
|
||||
|
||||
@@ -444,7 +444,7 @@ static int __init rx51_i2c_init(void)
|
||||
rx51_twldata.vaux3 = &rx51_vaux3_cam;
|
||||
rx51_twldata.vmmc2 = &rx51_vmmc2;
|
||||
}
|
||||
omap_register_i2c_bus(1, 2600, rx51_peripherals_i2c_board_info_1,
|
||||
omap_register_i2c_bus(1, 2200, rx51_peripherals_i2c_board_info_1,
|
||||
ARRAY_SIZE(rx51_peripherals_i2c_board_info_1));
|
||||
omap_register_i2c_bus(2, 100, NULL, 0);
|
||||
omap_register_i2c_bus(3, 400, NULL, 0);
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <mach/keypad.h>
|
||||
|
||||
#include "mmc-twl4030.h"
|
||||
#include "sdram-micron-mt46h32m32lf-6.h"
|
||||
|
||||
/* Zoom2 has Qwerty keyboard*/
|
||||
static int board_keymap[] = {
|
||||
@@ -213,7 +214,8 @@ static void __init omap_zoom2_init_irq(void)
|
||||
{
|
||||
omap_board_config = zoom2_config;
|
||||
omap_board_config_size = ARRAY_SIZE(zoom2_config);
|
||||
omap2_init_common_hw(NULL, NULL);
|
||||
omap2_init_common_hw(mt46h32m32lf6_sdrc_params,
|
||||
mt46h32m32lf6_sdrc_params);
|
||||
omap_init_irq();
|
||||
omap_gpio_init();
|
||||
}
|
||||
|
||||
@@ -769,6 +769,7 @@ int __init omap2_clk_init(void)
|
||||
if (c->cpu & cpu_mask) {
|
||||
clkdev_add(&c->lk);
|
||||
clk_register(c->lk.clk);
|
||||
omap2_init_clk_clkdm(c->lk.clk);
|
||||
}
|
||||
|
||||
/* Check the MPU rate set by bootloader */
|
||||
|
||||
@@ -137,6 +137,36 @@ static void _clkdm_del_autodeps(struct clockdomain *clkdm)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* _omap2_clkdm_set_hwsup - set the hwsup idle transition bit
|
||||
* @clkdm: struct clockdomain *
|
||||
* @enable: int 0 to disable, 1 to enable
|
||||
*
|
||||
* Internal helper for actually switching the bit that controls hwsup
|
||||
* idle transitions for clkdm.
|
||||
*/
|
||||
static void _omap2_clkdm_set_hwsup(struct clockdomain *clkdm, int enable)
|
||||
{
|
||||
u32 v;
|
||||
|
||||
if (cpu_is_omap24xx()) {
|
||||
if (enable)
|
||||
v = OMAP24XX_CLKSTCTRL_ENABLE_AUTO;
|
||||
else
|
||||
v = OMAP24XX_CLKSTCTRL_DISABLE_AUTO;
|
||||
} else if (cpu_is_omap34xx()) {
|
||||
if (enable)
|
||||
v = OMAP34XX_CLKSTCTRL_ENABLE_AUTO;
|
||||
else
|
||||
v = OMAP34XX_CLKSTCTRL_DISABLE_AUTO;
|
||||
} else {
|
||||
BUG();
|
||||
}
|
||||
|
||||
cm_rmw_mod_reg_bits(clkdm->clktrctrl_mask,
|
||||
v << __ffs(clkdm->clktrctrl_mask),
|
||||
clkdm->pwrdm.ptr->prcm_offs, CM_CLKSTCTRL);
|
||||
}
|
||||
|
||||
static struct clockdomain *_clkdm_lookup(const char *name)
|
||||
{
|
||||
@@ -456,8 +486,6 @@ int omap2_clkdm_wakeup(struct clockdomain *clkdm)
|
||||
*/
|
||||
void omap2_clkdm_allow_idle(struct clockdomain *clkdm)
|
||||
{
|
||||
u32 v;
|
||||
|
||||
if (!clkdm)
|
||||
return;
|
||||
|
||||
@@ -473,18 +501,7 @@ void omap2_clkdm_allow_idle(struct clockdomain *clkdm)
|
||||
if (atomic_read(&clkdm->usecount) > 0)
|
||||
_clkdm_add_autodeps(clkdm);
|
||||
|
||||
if (cpu_is_omap24xx())
|
||||
v = OMAP24XX_CLKSTCTRL_ENABLE_AUTO;
|
||||
else if (cpu_is_omap34xx())
|
||||
v = OMAP34XX_CLKSTCTRL_ENABLE_AUTO;
|
||||
else
|
||||
BUG();
|
||||
|
||||
|
||||
cm_rmw_mod_reg_bits(clkdm->clktrctrl_mask,
|
||||
v << __ffs(clkdm->clktrctrl_mask),
|
||||
clkdm->pwrdm.ptr->prcm_offs,
|
||||
CM_CLKSTCTRL);
|
||||
_omap2_clkdm_set_hwsup(clkdm, 1);
|
||||
|
||||
pwrdm_clkdm_state_switch(clkdm);
|
||||
}
|
||||
@@ -500,8 +517,6 @@ void omap2_clkdm_allow_idle(struct clockdomain *clkdm)
|
||||
*/
|
||||
void omap2_clkdm_deny_idle(struct clockdomain *clkdm)
|
||||
{
|
||||
u32 v;
|
||||
|
||||
if (!clkdm)
|
||||
return;
|
||||
|
||||
@@ -514,16 +529,7 @@ void omap2_clkdm_deny_idle(struct clockdomain *clkdm)
|
||||
pr_debug("clockdomain: disabling automatic idle transitions for %s\n",
|
||||
clkdm->name);
|
||||
|
||||
if (cpu_is_omap24xx())
|
||||
v = OMAP24XX_CLKSTCTRL_DISABLE_AUTO;
|
||||
else if (cpu_is_omap34xx())
|
||||
v = OMAP34XX_CLKSTCTRL_DISABLE_AUTO;
|
||||
else
|
||||
BUG();
|
||||
|
||||
cm_rmw_mod_reg_bits(clkdm->clktrctrl_mask,
|
||||
v << __ffs(clkdm->clktrctrl_mask),
|
||||
clkdm->pwrdm.ptr->prcm_offs, CM_CLKSTCTRL);
|
||||
_omap2_clkdm_set_hwsup(clkdm, 0);
|
||||
|
||||
if (atomic_read(&clkdm->usecount) > 0)
|
||||
_clkdm_del_autodeps(clkdm);
|
||||
@@ -569,10 +575,14 @@ int omap2_clkdm_clk_enable(struct clockdomain *clkdm, struct clk *clk)
|
||||
v = omap2_clkdm_clktrctrl_read(clkdm);
|
||||
|
||||
if ((cpu_is_omap34xx() && v == OMAP34XX_CLKSTCTRL_ENABLE_AUTO) ||
|
||||
(cpu_is_omap24xx() && v == OMAP24XX_CLKSTCTRL_ENABLE_AUTO))
|
||||
(cpu_is_omap24xx() && v == OMAP24XX_CLKSTCTRL_ENABLE_AUTO)) {
|
||||
/* Disable HW transitions when we are changing deps */
|
||||
_omap2_clkdm_set_hwsup(clkdm, 0);
|
||||
_clkdm_add_autodeps(clkdm);
|
||||
else
|
||||
_omap2_clkdm_set_hwsup(clkdm, 1);
|
||||
} else {
|
||||
omap2_clkdm_wakeup(clkdm);
|
||||
}
|
||||
|
||||
pwrdm_wait_transition(clkdm->pwrdm.ptr);
|
||||
pwrdm_clkdm_state_switch(clkdm);
|
||||
@@ -623,10 +633,14 @@ int omap2_clkdm_clk_disable(struct clockdomain *clkdm, struct clk *clk)
|
||||
v = omap2_clkdm_clktrctrl_read(clkdm);
|
||||
|
||||
if ((cpu_is_omap34xx() && v == OMAP34XX_CLKSTCTRL_ENABLE_AUTO) ||
|
||||
(cpu_is_omap24xx() && v == OMAP24XX_CLKSTCTRL_ENABLE_AUTO))
|
||||
(cpu_is_omap24xx() && v == OMAP24XX_CLKSTCTRL_ENABLE_AUTO)) {
|
||||
/* Disable HW transitions when we are changing deps */
|
||||
_omap2_clkdm_set_hwsup(clkdm, 0);
|
||||
_clkdm_del_autodeps(clkdm);
|
||||
else
|
||||
_omap2_clkdm_set_hwsup(clkdm, 1);
|
||||
} else {
|
||||
omap2_clkdm_sleep(clkdm);
|
||||
}
|
||||
|
||||
pwrdm_clkdm_state_switch(clkdm);
|
||||
|
||||
|
||||
@@ -829,10 +829,10 @@ EXPORT_SYMBOL(omap_free_dma);
|
||||
*
|
||||
* @param arb_rate
|
||||
* @param max_fifo_depth
|
||||
* @param tparams - Number of thereads to reserve : DMA_THREAD_RESERVE_NORM
|
||||
* DMA_THREAD_RESERVE_ONET
|
||||
* DMA_THREAD_RESERVE_TWOT
|
||||
* DMA_THREAD_RESERVE_THREET
|
||||
* @param tparams - Number of threads to reserve : DMA_THREAD_RESERVE_NORM
|
||||
* DMA_THREAD_RESERVE_ONET
|
||||
* DMA_THREAD_RESERVE_TWOT
|
||||
* DMA_THREAD_RESERVE_THREET
|
||||
*/
|
||||
void
|
||||
omap_dma_set_global_params(int arb_rate, int max_fifo_depth, int tparams)
|
||||
@@ -844,11 +844,14 @@ omap_dma_set_global_params(int arb_rate, int max_fifo_depth, int tparams)
|
||||
return;
|
||||
}
|
||||
|
||||
if (max_fifo_depth == 0)
|
||||
max_fifo_depth = 1;
|
||||
if (arb_rate == 0)
|
||||
arb_rate = 1;
|
||||
|
||||
reg = (arb_rate & 0xff) << 16;
|
||||
reg |= (0xff & max_fifo_depth);
|
||||
reg = 0xff & max_fifo_depth;
|
||||
reg |= (0x3 & tparams) << 12;
|
||||
reg |= (arb_rate & 0xff) << 16;
|
||||
|
||||
dma_write(reg, GCR);
|
||||
}
|
||||
|
||||
@@ -595,7 +595,7 @@ void omap_mcbsp_stop(unsigned int id, int tx, int rx)
|
||||
rx &= 1;
|
||||
if (cpu_is_omap2430() || cpu_is_omap34xx()) {
|
||||
w = OMAP_MCBSP_READ(io_base, RCCR);
|
||||
w |= (tx ? RDISABLE : 0);
|
||||
w |= (rx ? RDISABLE : 0);
|
||||
OMAP_MCBSP_WRITE(io_base, RCCR, w);
|
||||
}
|
||||
w = OMAP_MCBSP_READ(io_base, SPCR1);
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
#define FW_FEATURE_VIO ASM_CONST(0x0000000000004000)
|
||||
#define FW_FEATURE_RDMA ASM_CONST(0x0000000000008000)
|
||||
#define FW_FEATURE_LLAN ASM_CONST(0x0000000000010000)
|
||||
#define FW_FEATURE_BULK ASM_CONST(0x0000000000020000)
|
||||
#define FW_FEATURE_BULK_REMOVE ASM_CONST(0x0000000000020000)
|
||||
#define FW_FEATURE_XDABR ASM_CONST(0x0000000000040000)
|
||||
#define FW_FEATURE_MULTITCE ASM_CONST(0x0000000000080000)
|
||||
#define FW_FEATURE_SPLPAR ASM_CONST(0x0000000000100000)
|
||||
@@ -45,8 +45,7 @@
|
||||
#define FW_FEATURE_LPAR ASM_CONST(0x0000000000400000)
|
||||
#define FW_FEATURE_PS3_LV1 ASM_CONST(0x0000000000800000)
|
||||
#define FW_FEATURE_BEAT ASM_CONST(0x0000000001000000)
|
||||
#define FW_FEATURE_BULK_REMOVE ASM_CONST(0x0000000002000000)
|
||||
#define FW_FEATURE_CMO ASM_CONST(0x0000000004000000)
|
||||
#define FW_FEATURE_CMO ASM_CONST(0x0000000002000000)
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
@@ -58,8 +57,9 @@ enum {
|
||||
FW_FEATURE_PERF | FW_FEATURE_DUMP | FW_FEATURE_INTERRUPT |
|
||||
FW_FEATURE_MIGRATE | FW_FEATURE_PERFMON | FW_FEATURE_CRQ |
|
||||
FW_FEATURE_VIO | FW_FEATURE_RDMA | FW_FEATURE_LLAN |
|
||||
FW_FEATURE_BULK | FW_FEATURE_XDABR | FW_FEATURE_MULTITCE |
|
||||
FW_FEATURE_SPLPAR | FW_FEATURE_LPAR | FW_FEATURE_CMO,
|
||||
FW_FEATURE_BULK_REMOVE | FW_FEATURE_XDABR |
|
||||
FW_FEATURE_MULTITCE | FW_FEATURE_SPLPAR | FW_FEATURE_LPAR |
|
||||
FW_FEATURE_CMO,
|
||||
FW_FEATURE_PSERIES_ALWAYS = 0,
|
||||
FW_FEATURE_ISERIES_POSSIBLE = FW_FEATURE_ISERIES | FW_FEATURE_LPAR,
|
||||
FW_FEATURE_ISERIES_ALWAYS = FW_FEATURE_ISERIES | FW_FEATURE_LPAR,
|
||||
|
||||
@@ -711,6 +711,8 @@ static struct cpu_spec __initdata cpu_specs[] = {
|
||||
.cpu_setup = __setup_cpu_750,
|
||||
.machine_check = machine_check_generic,
|
||||
.platform = "ppc750",
|
||||
.oprofile_cpu_type = "ppc/750",
|
||||
.oprofile_type = PPC_OPROFILE_G4,
|
||||
},
|
||||
{ /* 745/755 */
|
||||
.pvr_mask = 0xfffff000,
|
||||
|
||||
@@ -1038,8 +1038,7 @@ _GLOBAL(mod_return_to_handler)
|
||||
* We are in a module using the module's TOC.
|
||||
* Switch to our TOC to run inside the core kernel.
|
||||
*/
|
||||
LOAD_REG_IMMEDIATE(r4,ftrace_return_to_handler)
|
||||
ld r2, 8(r4)
|
||||
ld r2, PACATOC(r13)
|
||||
|
||||
bl .ftrace_return_to_handler
|
||||
nop
|
||||
|
||||
@@ -282,12 +282,6 @@ void gdb_regs_to_pt_regs(unsigned long *gdb_regs, struct pt_regs *regs)
|
||||
{
|
||||
unsigned long *ptr = gdb_regs;
|
||||
int reg;
|
||||
#ifdef CONFIG_SPE
|
||||
union {
|
||||
u32 v32[2];
|
||||
u64 v64;
|
||||
} acc;
|
||||
#endif
|
||||
|
||||
for (reg = 0; reg < 32; reg++)
|
||||
UNPACK64(regs->gpr[reg], ptr);
|
||||
|
||||
@@ -1190,7 +1190,7 @@ EXPORT_SYMBOL(pcibios_align_resource);
|
||||
* Reparent resource children of pr that conflict with res
|
||||
* under res, and make res replace those children.
|
||||
*/
|
||||
static int __init reparent_resources(struct resource *parent,
|
||||
static int reparent_resources(struct resource *parent,
|
||||
struct resource *res)
|
||||
{
|
||||
struct resource *p, **pp;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user