Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
kernel_linux
提交
64b36ca7
K
kernel_linux
项目概览
OpenHarmony
/
kernel_linux
上一次同步 3 年多
通知
13
Star
8
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kernel_linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
64b36ca7
编写于
2月 20, 2009
作者:
I
Ingo Molnar
浏览文件
操作
浏览文件
下载
差异文件
Merge branches 'tracing/function-graph-tracer' and 'linus' into tracing/core
上级
00a8bf85
402a917a
变更
41
隐藏空白更改
内联
并排
Showing
41 changed file
with
119 addition
and
127 deletion
+119
-127
MAINTAINERS
MAINTAINERS
+7
-0
arch/arm/configs/at91sam9260ek_defconfig
arch/arm/configs/at91sam9260ek_defconfig
+1
-1
arch/arm/configs/at91sam9261ek_defconfig
arch/arm/configs/at91sam9261ek_defconfig
+1
-1
arch/arm/configs/at91sam9263ek_defconfig
arch/arm/configs/at91sam9263ek_defconfig
+1
-1
arch/arm/configs/at91sam9rlek_defconfig
arch/arm/configs/at91sam9rlek_defconfig
+1
-1
arch/arm/configs/qil-a9260_defconfig
arch/arm/configs/qil-a9260_defconfig
+1
-1
arch/arm/kernel/elf.c
arch/arm/kernel/elf.c
+2
-2
arch/arm/mach-at91/at91cap9_devices.c
arch/arm/mach-at91/at91cap9_devices.c
+1
-1
arch/arm/mach-at91/at91sam9260_devices.c
arch/arm/mach-at91/at91sam9260_devices.c
+1
-1
arch/arm/mach-at91/at91sam9261_devices.c
arch/arm/mach-at91/at91sam9261_devices.c
+1
-1
arch/arm/mach-at91/at91sam9263_devices.c
arch/arm/mach-at91/at91sam9263_devices.c
+1
-1
arch/arm/mach-at91/at91sam9rl_devices.c
arch/arm/mach-at91/at91sam9rl_devices.c
+1
-1
arch/arm/mach-at91/gpio.c
arch/arm/mach-at91/gpio.c
+10
-5
arch/arm/mach-at91/include/mach/board.h
arch/arm/mach-at91/include/mach/board.h
+1
-0
arch/arm/mach-ep93xx/include/mach/gesbc9312.h
arch/arm/mach-ep93xx/include/mach/gesbc9312.h
+0
-3
arch/arm/mach-ep93xx/include/mach/hardware.h
arch/arm/mach-ep93xx/include/mach/hardware.h
+0
-1
arch/arm/mach-kirkwood/irq.c
arch/arm/mach-kirkwood/irq.c
+1
-1
arch/arm/mach-mv78xx0/irq.c
arch/arm/mach-mv78xx0/irq.c
+1
-1
arch/arm/mach-omap2/clock.c
arch/arm/mach-omap2/clock.c
+8
-8
arch/arm/mach-orion5x/irq.c
arch/arm/mach-orion5x/irq.c
+1
-1
arch/arm/mm/mmu.c
arch/arm/mm/mmu.c
+2
-1
arch/arm/plat-orion/gpio.c
arch/arm/plat-orion/gpio.c
+25
-48
arch/arm/plat-orion/include/plat/gpio.h
arch/arm/plat-orion/include/plat/gpio.h
+1
-2
arch/avr32/mach-at32ap/include/mach/board.h
arch/avr32/mach-at32ap/include/mach/board.h
+1
-0
arch/s390/include/asm/cputime.h
arch/s390/include/asm/cputime.h
+1
-1
arch/s390/include/asm/setup.h
arch/s390/include/asm/setup.h
+2
-0
arch/s390/kernel/setup.c
arch/s390/kernel/setup.c
+7
-2
arch/x86/kernel/apic.c
arch/x86/kernel/apic.c
+1
-1
arch/x86/kernel/cpu/mcheck/mce_64.c
arch/x86/kernel/cpu/mcheck/mce_64.c
+3
-2
arch/x86/kernel/process_32.c
arch/x86/kernel/process_32.c
+0
-3
drivers/mtd/nand/atmel_nand.c
drivers/mtd/nand/atmel_nand.c
+2
-1
drivers/s390/char/sclp.c
drivers/s390/char/sclp.c
+4
-1
drivers/s390/char/sclp_cmd.c
drivers/s390/char/sclp_cmd.c
+5
-0
drivers/usb/gadget/pxa25x_udc.c
drivers/usb/gadget/pxa25x_udc.c
+2
-2
drivers/watchdog/at91rm9200_wdt.c
drivers/watchdog/at91rm9200_wdt.c
+2
-2
drivers/watchdog/at91sam9_wdt.c
drivers/watchdog/at91sam9_wdt.c
+1
-0
sound/core/jack.c
sound/core/jack.c
+1
-1
sound/pci/hda/hda_intel.c
sound/pci/hda/hda_intel.c
+2
-6
sound/pci/oxygen/virtuoso.c
sound/pci/oxygen/virtuoso.c
+4
-13
sound/usb/usbaudio.c
sound/usb/usbaudio.c
+11
-9
sound/usb/usbmidi.c
sound/usb/usbmidi.c
+1
-0
未找到文件。
MAINTAINERS
浏览文件 @
64b36ca7
...
...
@@ -692,6 +692,13 @@ M: kernel@wantstofly.org
L: linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
S: Maintained
ARM/NUVOTON W90X900 ARM ARCHITECTURE
P: Wan ZongShun
M: mcuos.com@gmail.com
L: linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
W: http://www.mcuos.com
S: Maintained
ARPD SUPPORT
P: Jonathan Layes
L: netdev@vger.kernel.org
...
...
arch/arm/configs/at91sam9260ek_defconfig
浏览文件 @
64b36ca7
...
...
@@ -608,7 +608,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
# Watchdog Device Drivers
#
# CONFIG_SOFT_WATCHDOG is not set
CONFIG_AT91SAM9_WATCHDOG=y
CONFIG_AT91SAM9
X
_WATCHDOG=y
#
# USB-based Watchdog Cards
...
...
arch/arm/configs/at91sam9261ek_defconfig
浏览文件 @
64b36ca7
...
...
@@ -700,7 +700,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
# Watchdog Device Drivers
#
# CONFIG_SOFT_WATCHDOG is not set
CONFIG_AT91SAM9_WATCHDOG=y
CONFIG_AT91SAM9
X
_WATCHDOG=y
#
# USB-based Watchdog Cards
...
...
arch/arm/configs/at91sam9263ek_defconfig
浏览文件 @
64b36ca7
...
...
@@ -710,7 +710,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
# Watchdog Device Drivers
#
# CONFIG_SOFT_WATCHDOG is not set
CONFIG_AT91SAM9_WATCHDOG=y
CONFIG_AT91SAM9
X
_WATCHDOG=y
#
# USB-based Watchdog Cards
...
...
arch/arm/configs/at91sam9rlek_defconfig
浏览文件 @
64b36ca7
...
...
@@ -606,7 +606,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
# Watchdog Device Drivers
#
# CONFIG_SOFT_WATCHDOG is not set
CONFIG_AT91SAM9_WATCHDOG=y
CONFIG_AT91SAM9
X
_WATCHDOG=y
#
# Sonics Silicon Backplane
...
...
arch/arm/configs/qil-a9260_defconfig
浏览文件 @
64b36ca7
...
...
@@ -727,7 +727,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
# Watchdog Device Drivers
#
# CONFIG_SOFT_WATCHDOG is not set
# CONFIG_AT91SAM9_WATCHDOG is not set
# CONFIG_AT91SAM9
X
_WATCHDOG is not set
#
# USB-based Watchdog Cards
...
...
arch/arm/kernel/elf.c
浏览文件 @
64b36ca7
...
...
@@ -74,9 +74,9 @@ EXPORT_SYMBOL(elf_set_personality);
*/
int
arm_elf_read_implies_exec
(
const
struct
elf32_hdr
*
x
,
int
executable_stack
)
{
if
(
executable_stack
!=
EXSTACK_
EN
ABLE_X
)
if
(
executable_stack
!=
EXSTACK_
DIS
ABLE_X
)
return
1
;
if
(
cpu_architecture
()
<
=
CPU_ARCH_ARMv6
)
if
(
cpu_architecture
()
<
CPU_ARCH_ARMv6
)
return
1
;
return
0
;
}
...
...
arch/arm/mach-at91/at91cap9_devices.c
浏览文件 @
64b36ca7
...
...
@@ -697,7 +697,7 @@ static void __init at91_add_device_rtt(void)
* Watchdog
* -------------------------------------------------------------------- */
#if defined(CONFIG_AT91SAM9
_WATCHDOG) || defined(CONFIG_AT91SAM9
_WATCHDOG_MODULE)
#if defined(CONFIG_AT91SAM9
X_WATCHDOG) || defined(CONFIG_AT91SAM9X
_WATCHDOG_MODULE)
static
struct
platform_device
at91cap9_wdt_device
=
{
.
name
=
"at91_wdt"
,
.
id
=
-
1
,
...
...
arch/arm/mach-at91/at91sam9260_devices.c
浏览文件 @
64b36ca7
...
...
@@ -643,7 +643,7 @@ static void __init at91_add_device_rtt(void)
* Watchdog
* -------------------------------------------------------------------- */
#if defined(CONFIG_AT91SAM9
_WATCHDOG) || defined(CONFIG_AT91SAM9
_WATCHDOG_MODULE)
#if defined(CONFIG_AT91SAM9
X_WATCHDOG) || defined(CONFIG_AT91SAM9X
_WATCHDOG_MODULE)
static
struct
platform_device
at91sam9260_wdt_device
=
{
.
name
=
"at91_wdt"
,
.
id
=
-
1
,
...
...
arch/arm/mach-at91/at91sam9261_devices.c
浏览文件 @
64b36ca7
...
...
@@ -621,7 +621,7 @@ static void __init at91_add_device_rtt(void)
* Watchdog
* -------------------------------------------------------------------- */
#if defined(CONFIG_AT91SAM9
_WATCHDOG) || defined(CONFIG_AT91SAM9
_WATCHDOG_MODULE)
#if defined(CONFIG_AT91SAM9
X_WATCHDOG) || defined(CONFIG_AT91SAM9X
_WATCHDOG_MODULE)
static
struct
platform_device
at91sam9261_wdt_device
=
{
.
name
=
"at91_wdt"
,
.
id
=
-
1
,
...
...
arch/arm/mach-at91/at91sam9263_devices.c
浏览文件 @
64b36ca7
...
...
@@ -854,7 +854,7 @@ static void __init at91_add_device_rtt(void)
* Watchdog
* -------------------------------------------------------------------- */
#if defined(CONFIG_AT91SAM9
_WATCHDOG) || defined(CONFIG_AT91SAM9
_WATCHDOG_MODULE)
#if defined(CONFIG_AT91SAM9
X_WATCHDOG) || defined(CONFIG_AT91SAM9X
_WATCHDOG_MODULE)
static
struct
platform_device
at91sam9263_wdt_device
=
{
.
name
=
"at91_wdt"
,
.
id
=
-
1
,
...
...
arch/arm/mach-at91/at91sam9rl_devices.c
浏览文件 @
64b36ca7
...
...
@@ -609,7 +609,7 @@ static void __init at91_add_device_rtt(void)
* Watchdog
* -------------------------------------------------------------------- */
#if defined(CONFIG_AT91SAM9
_WATCHDOG) || defined(CONFIG_AT91SAM9
_WATCHDOG_MODULE)
#if defined(CONFIG_AT91SAM9
X_WATCHDOG) || defined(CONFIG_AT91SAM9X
_WATCHDOG_MODULE)
static
struct
platform_device
at91sam9rl_wdt_device
=
{
.
name
=
"at91_wdt"
,
.
id
=
-
1
,
...
...
arch/arm/mach-at91/gpio.c
浏览文件 @
64b36ca7
...
...
@@ -490,7 +490,8 @@ postcore_initcall(at91_gpio_debugfs_init);
/*--------------------------------------------------------------------------*/
/* This lock class tells lockdep that GPIO irqs are in a different
/*
* This lock class tells lockdep that GPIO irqs are in a different
* category than their parents, so it won't report false recursion.
*/
static
struct
lock_class_key
gpio_lock_class
;
...
...
@@ -509,9 +510,6 @@ void __init at91_gpio_irq_setup(void)
unsigned
id
=
this
->
id
;
unsigned
i
;
/* enable PIO controller's clock */
clk_enable
(
this
->
clock
);
__raw_writel
(
~
0
,
this
->
regbase
+
PIO_IDR
);
for
(
i
=
0
,
pin
=
this
->
chipbase
;
i
<
32
;
i
++
,
pin
++
)
{
...
...
@@ -556,7 +554,14 @@ void __init at91_gpio_init(struct at91_gpio_bank *data, int nr_banks)
data
->
chipbase
=
PIN_BASE
+
i
*
32
;
data
->
regbase
=
data
->
offset
+
(
void
__iomem
*
)
AT91_VA_BASE_SYS
;
/* AT91SAM9263_ID_PIOCDE groups PIOC, PIOD, PIOE */
/* enable PIO controller's clock */
clk_enable
(
data
->
clock
);
/*
* Some processors share peripheral ID between multiple GPIO banks.
* SAM9263 (PIOC, PIOD, PIOE)
* CAP9 (PIOA, PIOB, PIOC, PIOD)
*/
if
(
last
&&
last
->
id
==
data
->
id
)
last
->
next
=
data
;
}
...
...
arch/arm/mach-at91/include/mach/board.h
浏览文件 @
64b36ca7
...
...
@@ -93,6 +93,7 @@ struct atmel_nand_data {
u8
enable_pin
;
/* chip enable */
u8
det_pin
;
/* card detect */
u8
rdy_pin
;
/* ready/busy */
u8
rdy_pin_active_low
;
/* rdy_pin value is inverted */
u8
ale
;
/* address line number connected to ALE */
u8
cle
;
/* address line number connected to CLE */
u8
bus_width_16
;
/* buswidth is 16 bit */
...
...
arch/arm/mach-ep93xx/include/mach/gesbc9312.h
已删除
100644 → 0
浏览文件 @
00a8bf85
/*
* arch/arm/mach-ep93xx/include/mach/gesbc9312.h
*/
arch/arm/mach-ep93xx/include/mach/hardware.h
浏览文件 @
64b36ca7
...
...
@@ -10,7 +10,6 @@
#include "platform.h"
#include "gesbc9312.h"
#include "ts72xx.h"
#endif
arch/arm/mach-kirkwood/irq.c
浏览文件 @
64b36ca7
...
...
@@ -42,7 +42,7 @@ void __init kirkwood_init_irq(void)
writel
(
0
,
GPIO_EDGE_CAUSE
(
32
));
for
(
i
=
IRQ_KIRKWOOD_GPIO_START
;
i
<
NR_IRQS
;
i
++
)
{
set_irq_chip
(
i
,
&
orion_gpio_irq_
level_
chip
);
set_irq_chip
(
i
,
&
orion_gpio_irq_chip
);
set_irq_handler
(
i
,
handle_level_irq
);
irq_desc
[
i
].
status
|=
IRQ_LEVEL
;
set_irq_flags
(
i
,
IRQF_VALID
);
...
...
arch/arm/mach-mv78xx0/irq.c
浏览文件 @
64b36ca7
...
...
@@ -40,7 +40,7 @@ void __init mv78xx0_init_irq(void)
writel
(
0
,
GPIO_EDGE_CAUSE
(
0
));
for
(
i
=
IRQ_MV78XX0_GPIO_START
;
i
<
NR_IRQS
;
i
++
)
{
set_irq_chip
(
i
,
&
orion_gpio_irq_
level_
chip
);
set_irq_chip
(
i
,
&
orion_gpio_irq_chip
);
set_irq_handler
(
i
,
handle_level_irq
);
irq_desc
[
i
].
status
|=
IRQ_LEVEL
;
set_irq_flags
(
i
,
IRQF_VALID
);
...
...
arch/arm/mach-omap2/clock.c
浏览文件 @
64b36ca7
...
...
@@ -565,7 +565,7 @@ u32 omap2_clksel_to_divisor(struct clk *clk, u32 field_val)
*
* Given a struct clk of a rate-selectable clksel clock, and a clock divisor,
* find the corresponding register field value. The return register value is
* the value before left-shifting. Returns
0xffffffff
on error
* the value before left-shifting. Returns
~0
on error
*/
u32
omap2_divisor_to_clksel
(
struct
clk
*
clk
,
u32
div
)
{
...
...
@@ -577,7 +577,7 @@ u32 omap2_divisor_to_clksel(struct clk *clk, u32 div)
clks
=
omap2_get_clksel_by_parent
(
clk
,
clk
->
parent
);
if
(
clks
==
NULL
)
return
0
;
return
~
0
;
for
(
clkr
=
clks
->
rates
;
clkr
->
div
;
clkr
++
)
{
if
((
clkr
->
flags
&
cpu_mask
)
&&
(
clkr
->
div
==
div
))
...
...
@@ -588,7 +588,7 @@ u32 omap2_divisor_to_clksel(struct clk *clk, u32 div)
printk
(
KERN_ERR
"clock: Could not find divisor %d for "
"clock %s parent %s
\n
"
,
div
,
clk
->
name
,
clk
->
parent
->
name
);
return
0
;
return
~
0
;
}
return
clkr
->
val
;
...
...
@@ -708,7 +708,7 @@ static u32 omap2_clksel_get_src_field(void __iomem **src_addr,
return
0
;
for
(
clkr
=
clks
->
rates
;
clkr
->
div
;
clkr
++
)
{
if
(
clkr
->
flags
&
(
cpu_mask
|
DEFAULT_RATE
)
)
if
(
clkr
->
flags
&
cpu_mask
&&
clkr
->
flags
&
DEFAULT_RATE
)
break
;
/* Found the default rate for this platform */
}
...
...
@@ -746,7 +746,7 @@ int omap2_clk_set_parent(struct clk *clk, struct clk *new_parent)
return
-
EINVAL
;
if
(
clk
->
usecount
>
0
)
_
omap2_clk_disable
(
clk
);
omap2_clk_disable
(
clk
);
/* Set new source value (previous dividers if any in effect) */
reg_val
=
__raw_readl
(
src_addr
)
&
~
field_mask
;
...
...
@@ -759,11 +759,11 @@ int omap2_clk_set_parent(struct clk *clk, struct clk *new_parent)
wmb
();
}
if
(
clk
->
usecount
>
0
)
_omap2_clk_enable
(
clk
);
clk
->
parent
=
new_parent
;
if
(
clk
->
usecount
>
0
)
omap2_clk_enable
(
clk
);
/* CLKSEL clocks follow their parents' rates, divided by a divisor */
clk
->
rate
=
new_parent
->
rate
;
...
...
arch/arm/mach-orion5x/irq.c
浏览文件 @
64b36ca7
...
...
@@ -44,7 +44,7 @@ void __init orion5x_init_irq(void)
* User can use set_type() if he wants to use edge types handlers.
*/
for
(
i
=
IRQ_ORION5X_GPIO_START
;
i
<
NR_IRQS
;
i
++
)
{
set_irq_chip
(
i
,
&
orion_gpio_irq_
level_
chip
);
set_irq_chip
(
i
,
&
orion_gpio_irq_chip
);
set_irq_handler
(
i
,
handle_level_irq
);
irq_desc
[
i
].
status
|=
IRQ_LEVEL
;
set_irq_flags
(
i
,
IRQF_VALID
);
...
...
arch/arm/mm/mmu.c
浏览文件 @
64b36ca7
...
...
@@ -693,7 +693,8 @@ static void __init sanity_check_meminfo(void)
* Check whether this memory bank would entirely overlap
* the vmalloc area.
*/
if
(
__va
(
bank
->
start
)
>=
VMALLOC_MIN
)
{
if
(
__va
(
bank
->
start
)
>=
VMALLOC_MIN
||
__va
(
bank
->
start
)
<
PAGE_OFFSET
)
{
printk
(
KERN_NOTICE
"Ignoring RAM at %.8lx-%.8lx "
"(vmalloc region overlap).
\n
"
,
bank
->
start
,
bank
->
start
+
bank
->
size
-
1
);
...
...
arch/arm/plat-orion/gpio.c
浏览文件 @
64b36ca7
...
...
@@ -265,51 +265,36 @@ EXPORT_SYMBOL(orion_gpio_set_blink);
* polarity LEVEL mask
*
****************************************************************************/
static
void
gpio_irq_edge_ack
(
u32
irq
)
{
int
pin
=
irq_to_gpio
(
irq
);
writel
(
~
(
1
<<
(
pin
&
31
)),
GPIO_EDGE_CAUSE
(
pin
));
}
static
void
gpio_irq_edge_mask
(
u32
irq
)
{
int
pin
=
irq_to_gpio
(
irq
);
u32
u
;
u
=
readl
(
GPIO_EDGE_MASK
(
pin
));
u
&=
~
(
1
<<
(
pin
&
31
));
writel
(
u
,
GPIO_EDGE_MASK
(
pin
));
}
static
void
gpio_irq_
edge_unmas
k
(
u32
irq
)
static
void
gpio_irq_
ac
k
(
u32
irq
)
{
int
pin
=
irq_to_gpio
(
irq
);
u32
u
;
u
=
readl
(
GPIO_EDGE_MASK
(
pin
));
u
|=
1
<<
(
pin
&
31
);
writel
(
u
,
GPIO_EDGE_MASK
(
pin
));
int
type
=
irq_desc
[
irq
].
status
&
IRQ_TYPE_SENSE_MASK
;
if
(
type
&
(
IRQ_TYPE_EDGE_RISING
|
IRQ_TYPE_EDGE_FALLING
))
{
int
pin
=
irq_to_gpio
(
irq
);
writel
(
~
(
1
<<
(
pin
&
31
)),
GPIO_EDGE_CAUSE
(
pin
));
}
}
static
void
gpio_irq_
level_
mask
(
u32
irq
)
static
void
gpio_irq_mask
(
u32
irq
)
{
int
pin
=
irq_to_gpio
(
irq
);
u32
u
;
u
=
readl
(
GPIO_LEVEL_MASK
(
pin
));
int
type
=
irq_desc
[
irq
].
status
&
IRQ_TYPE_SENSE_MASK
;
u32
reg
=
(
type
&
(
IRQ_TYPE_EDGE_RISING
|
IRQ_TYPE_EDGE_FALLING
))
?
GPIO_EDGE_MASK
(
pin
)
:
GPIO_LEVEL_MASK
(
pin
);
u32
u
=
readl
(
reg
);
u
&=
~
(
1
<<
(
pin
&
31
));
writel
(
u
,
GPIO_LEVEL_MASK
(
pin
)
);
writel
(
u
,
reg
);
}
static
void
gpio_irq_
level_
unmask
(
u32
irq
)
static
void
gpio_irq_unmask
(
u32
irq
)
{
int
pin
=
irq_to_gpio
(
irq
);
u32
u
;
u
=
readl
(
GPIO_LEVEL_MASK
(
pin
));
int
type
=
irq_desc
[
irq
].
status
&
IRQ_TYPE_SENSE_MASK
;
u32
reg
=
(
type
&
(
IRQ_TYPE_EDGE_RISING
|
IRQ_TYPE_EDGE_FALLING
))
?
GPIO_EDGE_MASK
(
pin
)
:
GPIO_LEVEL_MASK
(
pin
);
u32
u
=
readl
(
reg
);
u
|=
1
<<
(
pin
&
31
);
writel
(
u
,
GPIO_LEVEL_MASK
(
pin
)
);
writel
(
u
,
reg
);
}
static
int
gpio_irq_set_type
(
u32
irq
,
u32
type
)
...
...
@@ -331,9 +316,9 @@ static int gpio_irq_set_type(u32 irq, u32 type)
* Set edge/level type.
*/
if
(
type
&
(
IRQ_TYPE_EDGE_RISING
|
IRQ_TYPE_EDGE_FALLING
))
{
desc
->
chip
=
&
orion_gpio_irq_edge_chip
;
desc
->
handle_irq
=
handle_edge_irq
;
}
else
if
(
type
&
(
IRQ_TYPE_LEVEL_HIGH
|
IRQ_TYPE_LEVEL_LOW
))
{
desc
->
chip
=
&
orion_gpio_irq_level_chip
;
desc
->
handle_irq
=
handle_level_irq
;
}
else
{
printk
(
KERN_ERR
"failed to set irq=%d (type=%d)
\n
"
,
irq
,
type
);
return
-
EINVAL
;
...
...
@@ -371,19 +356,11 @@ static int gpio_irq_set_type(u32 irq, u32 type)
return
0
;
}
struct
irq_chip
orion_gpio_irq_edge_chip
=
{
.
name
=
"orion_gpio_irq_edge"
,
.
ack
=
gpio_irq_edge_ack
,
.
mask
=
gpio_irq_edge_mask
,
.
unmask
=
gpio_irq_edge_unmask
,
.
set_type
=
gpio_irq_set_type
,
};
struct
irq_chip
orion_gpio_irq_level_chip
=
{
.
name
=
"orion_gpio_irq_level"
,
.
mask
=
gpio_irq_level_mask
,
.
mask_ack
=
gpio_irq_level_mask
,
.
unmask
=
gpio_irq_level_unmask
,
struct
irq_chip
orion_gpio_irq_chip
=
{
.
name
=
"orion_gpio"
,
.
ack
=
gpio_irq_ack
,
.
mask
=
gpio_irq_mask
,
.
unmask
=
gpio_irq_unmask
,
.
set_type
=
gpio_irq_set_type
,
};
...
...
arch/arm/plat-orion/include/plat/gpio.h
浏览文件 @
64b36ca7
...
...
@@ -31,8 +31,7 @@ void orion_gpio_set_blink(unsigned pin, int blink);
/*
* GPIO interrupt handling.
*/
extern
struct
irq_chip
orion_gpio_irq_edge_chip
;
extern
struct
irq_chip
orion_gpio_irq_level_chip
;
extern
struct
irq_chip
orion_gpio_irq_chip
;
void
orion_gpio_irq_handler
(
int
irqoff
);
...
...
arch/avr32/mach-at32ap/include/mach/board.h
浏览文件 @
64b36ca7
...
...
@@ -116,6 +116,7 @@ struct atmel_nand_data {
int
enable_pin
;
/* chip enable */
int
det_pin
;
/* card detect */
int
rdy_pin
;
/* ready/busy */
u8
rdy_pin_active_low
;
/* rdy_pin value is inverted */
u8
ale
;
/* address line number connected to ALE */
u8
cle
;
/* address line number connected to CLE */
u8
bus_width_16
;
/* buswidth is 16 bit */
...
...
arch/s390/include/asm/cputime.h
浏览文件 @
64b36ca7
...
...
@@ -145,7 +145,7 @@ cputime_to_timeval(const cputime_t cputime, struct timeval *value)
value
->
tv_usec
=
rp
.
subreg
.
even
/
4096
;
value
->
tv_sec
=
rp
.
subreg
.
odd
;
#else
value
->
tv_usec
=
cputime
%
4096000000ULL
;
value
->
tv_usec
=
(
cputime
%
4096000000ULL
)
/
4096
;
value
->
tv_sec
=
cputime
/
4096000000ULL
;
#endif
}
...
...
arch/s390/include/asm/setup.h
浏览文件 @
64b36ca7
...
...
@@ -43,6 +43,8 @@ struct mem_chunk {
extern
struct
mem_chunk
memory_chunk
[];
extern
unsigned
long
real_memory_size
;
extern
int
memory_end_set
;
extern
unsigned
long
memory_end
;
void
detect_memory_layout
(
struct
mem_chunk
chunk
[]);
...
...
arch/s390/kernel/setup.c
浏览文件 @
64b36ca7
...
...
@@ -82,7 +82,9 @@ char elf_platform[ELF_PLATFORM_SIZE];
struct
mem_chunk
__initdata
memory_chunk
[
MEMORY_CHUNKS
];
volatile
int
__cpu_logical_map
[
NR_CPUS
];
/* logical cpu to cpu address */
static
unsigned
long
__initdata
memory_end
;
int
__initdata
memory_end_set
;
unsigned
long
__initdata
memory_end
;
/*
* This is set up by the setup-routine at boot-time
...
...
@@ -281,6 +283,7 @@ void (*pm_power_off)(void) = machine_power_off;
static
int
__init
early_parse_mem
(
char
*
p
)
{
memory_end
=
memparse
(
p
,
&
p
);
memory_end_set
=
1
;
return
0
;
}
early_param
(
"mem"
,
early_parse_mem
);
...
...
@@ -508,8 +511,10 @@ static void __init setup_memory_end(void)
int
i
;
#if defined(CONFIG_ZFCPDUMP) || defined(CONFIG_ZFCPDUMP_MODULE)
if
(
ipl_info
.
type
==
IPL_TYPE_FCP_DUMP
)
if
(
ipl_info
.
type
==
IPL_TYPE_FCP_DUMP
)
{
memory_end
=
ZFCPDUMP_HSA_SIZE
;
memory_end_set
=
1
;
}
#endif
memory_size
=
0
;
memory_end
&=
PAGE_MASK
;
...
...
arch/x86/kernel/apic.c
浏览文件 @
64b36ca7
...
...
@@ -862,7 +862,7 @@ void clear_local_APIC(void)
}
/* lets not touch this if we didn't frob it */
#if defined(CONFIG_X86_MCE_P4THERMAL) || defined(X86_MCE_INTEL)
#if defined(CONFIG_X86_MCE_P4THERMAL) || defined(
CONFIG_
X86_MCE_INTEL)
if
(
maxlvt
>=
5
)
{
v
=
apic_read
(
APIC_LVTTHMR
);
apic_write
(
APIC_LVTTHMR
,
v
|
APIC_LVT_MASKED
);
...
...
arch/x86/kernel/cpu/mcheck/mce_64.c
浏览文件 @
64b36ca7
...
...
@@ -295,11 +295,11 @@ void do_machine_check(struct pt_regs * regs, long error_code)
* If we know that the error was in user space, send a
* SIGBUS. Otherwise, panic if tolerance is low.
*
*
do_exit
() takes an awful lot of locks and has a slight
*
force_sig
() takes an awful lot of locks and has a slight
* risk of deadlocking.
*/
if
(
user_space
)
{
do_exit
(
SIGBUS
);
force_sig
(
SIGBUS
,
current
);
}
else
if
(
panic_on_oops
||
tolerant
<
2
)
{
mce_panic
(
"Uncorrected machine check"
,
&
panicm
,
mcestart
);
...
...
@@ -734,6 +734,7 @@ __setup("mce=", mcheck_enable);
static
int
mce_resume
(
struct
sys_device
*
dev
)
{
mce_init
(
NULL
);
mce_cpu_features
(
&
current_cpu_data
);
return
0
;
}
...
...
arch/x86/kernel/process_32.c
浏览文件 @
64b36ca7
...
...
@@ -104,9 +104,6 @@ void cpu_idle(void)
check_pgt_cache
();
rmb
();
if
(
rcu_pending
(
cpu
))
rcu_check_callbacks
(
cpu
,
0
);
if
(
cpu_is_offline
(
cpu
))
play_dead
();
...
...
drivers/mtd/nand/atmel_nand.c
浏览文件 @
64b36ca7
...
...
@@ -139,7 +139,8 @@ static int atmel_nand_device_ready(struct mtd_info *mtd)
struct
nand_chip
*
nand_chip
=
mtd
->
priv
;
struct
atmel_nand_host
*
host
=
nand_chip
->
priv
;
return
gpio_get_value
(
host
->
board
->
rdy_pin
);
return
gpio_get_value
(
host
->
board
->
rdy_pin
)
^
!!
host
->
board
->
rdy_pin_active_low
;
}
/*
...
...
drivers/s390/char/sclp.c
浏览文件 @
64b36ca7
...
...
@@ -280,8 +280,11 @@ sclp_dispatch_evbufs(struct sccb_header *sccb)
rc
=
0
;
for
(
offset
=
sizeof
(
struct
sccb_header
);
offset
<
sccb
->
length
;
offset
+=
evbuf
->
length
)
{
/* Search for event handler */
evbuf
=
(
struct
evbuf_header
*
)
((
addr_t
)
sccb
+
offset
);
/* Check for malformed hardware response */
if
(
evbuf
->
length
==
0
)
break
;
/* Search for event handler */
reg
=
NULL
;
list_for_each
(
l
,
&
sclp_reg_list
)
{
reg
=
list_entry
(
l
,
struct
sclp_register
,
list
);
...
...
drivers/s390/char/sclp_cmd.c
浏览文件 @
64b36ca7
...
...
@@ -19,6 +19,7 @@
#include <linux/memory.h>
#include <asm/chpid.h>
#include <asm/sclp.h>
#include <asm/setup.h>
#include "sclp.h"
...
...
@@ -474,6 +475,10 @@ static void __init add_memory_merged(u16 rn)
goto
skip_add
;
if
(
start
+
size
>
VMEM_MAX_PHYS
)
size
=
VMEM_MAX_PHYS
-
start
;
if
(
memory_end_set
&&
(
start
>=
memory_end
))
goto
skip_add
;
if
(
memory_end_set
&&
(
start
+
size
>
memory_end
))
size
=
memory_end
-
start
;
add_memory
(
0
,
start
,
size
);
skip_add:
first_rn
=
rn
;
...
...
drivers/usb/gadget/pxa25x_udc.c
浏览文件 @
64b36ca7
...
...
@@ -904,8 +904,8 @@ static void pxa25x_ep_fifo_flush(struct usb_ep *_ep)
/* most IN status is the same, but ISO can't stall */
*
ep
->
reg_udccs
=
UDCCS_BI_TPC
|
UDCCS_BI_FTF
|
UDCCS_BI_TUR
|
(
ep
->
bmAttributes
==
USB_ENDPOINT_XFER_ISOC
)
?
0
:
UDCCS_BI_SST
;
|
(
ep
->
bmAttributes
==
USB_ENDPOINT_XFER_ISOC
?
0
:
UDCCS_BI_SST
)
;
}
...
...
drivers/watchdog/at91rm9200_wdt.c
浏览文件 @
64b36ca7
...
...
@@ -107,10 +107,10 @@ static int at91_wdt_close(struct inode *inode, struct file *file)
static
int
at91_wdt_settimeout
(
int
new_time
)
{
/*
* All counting occurs at SLOW_CLOCK / 128 =
0.
256 Hz
* All counting occurs at SLOW_CLOCK / 128 = 256 Hz
*
* Since WDV is a 16-bit counter, the maximum period is
* 65536 /
0.
256 = 256 seconds.
* 65536 / 256 = 256 seconds.
*/
if
((
new_time
<=
0
)
||
(
new_time
>
WDT_MAX_TIME
))
return
-
EINVAL
;
...
...
drivers/watchdog/at91sam9_wdt.c
浏览文件 @
64b36ca7
...
...
@@ -18,6 +18,7 @@
#include <linux/errno.h>
#include <linux/fs.h>
#include <linux/init.h>
#include <linux/io.h>
#include <linux/kernel.h>
#include <linux/miscdevice.h>
#include <linux/module.h>
...
...
sound/core/jack.c
浏览文件 @
64b36ca7
...
...
@@ -47,7 +47,7 @@ static int snd_jack_dev_register(struct snd_device *device)
int
err
;
snprintf
(
jack
->
name
,
sizeof
(
jack
->
name
),
"%s %s"
,
card
->
long
name
,
jack
->
id
);
card
->
short
name
,
jack
->
id
);
jack
->
input_dev
->
name
=
jack
->
name
;
/* Default to the sound card device. */
...
...
sound/pci/hda/hda_intel.c
浏览文件 @
64b36ca7
...
...
@@ -1947,16 +1947,13 @@ static int azx_suspend(struct pci_dev *pci, pm_message_t state)
return
0
;
}
static
int
azx_resume_early
(
struct
pci_dev
*
pci
)
{
return
pci_restore_state
(
pci
);
}
static
int
azx_resume
(
struct
pci_dev
*
pci
)
{
struct
snd_card
*
card
=
pci_get_drvdata
(
pci
);
struct
azx
*
chip
=
card
->
private_data
;
pci_set_power_state
(
pci
,
PCI_D0
);
pci_restore_state
(
pci
);
if
(
pci_enable_device
(
pci
)
<
0
)
{
printk
(
KERN_ERR
"hda-intel: pci_enable_device failed, "
"disabling device
\n
"
);
...
...
@@ -2468,7 +2465,6 @@ static struct pci_driver driver = {
.
remove
=
__devexit_p
(
azx_remove
),
#ifdef CONFIG_PM
.
suspend
=
azx_suspend
,
.
resume_early
=
azx_resume_early
,
.
resume
=
azx_resume
,
#endif
};
...
...
sound/pci/oxygen/virtuoso.c
浏览文件 @
64b36ca7
...
...
@@ -26,7 +26,7 @@
* SPI 0 -> 1st PCM1796 (front)
* SPI 1 -> 2nd PCM1796 (surround)
* SPI 2 -> 3rd PCM1796 (center/LFE)
* SPI 4 -> 4th PCM1796 (back)
and EEPROM self-destruct (do not use!)
* SPI 4 -> 4th PCM1796 (back)
*
* GPIO 2 -> M0 of CS5381
* GPIO 3 -> M1 of CS5381
...
...
@@ -207,12 +207,6 @@ static void xonar_gpio_changed(struct oxygen *chip);
static
inline
void
pcm1796_write_spi
(
struct
oxygen
*
chip
,
unsigned
int
codec
,
u8
reg
,
u8
value
)
{
/*
* We don't want to do writes on SPI 4 because the EEPROM, which shares
* the same pin, might get confused and broken. We'd better take care
* that the driver works with the default register values ...
*/
#if 0
/* maps ALSA channel pair number to SPI output */
static
const
u8
codec_map
[
4
]
=
{
0
,
1
,
2
,
4
...
...
@@ -223,7 +217,6 @@ static inline void pcm1796_write_spi(struct oxygen *chip, unsigned int codec,
(
codec_map
[
codec
]
<<
OXYGEN_SPI_CODEC_SHIFT
)
|
OXYGEN_SPI_CEN_LATCH_CLOCK_HI
,
(
reg
<<
8
)
|
value
);
#endif
}
static
inline
void
pcm1796_write_i2c
(
struct
oxygen
*
chip
,
unsigned
int
codec
,
...
...
@@ -757,9 +750,6 @@ static const DECLARE_TLV_DB_SCALE(cs4362a_db_scale, -12700, 100, 0);
static
int
xonar_d2_control_filter
(
struct
snd_kcontrol_new
*
template
)
{
if
(
!
strncmp
(
template
->
name
,
"Master Playback "
,
16
))
/* disable volume/mute because they would require SPI writes */
return
1
;
if
(
!
strncmp
(
template
->
name
,
"CD Capture "
,
11
))
/* CD in is actually connected to the video in pin */
template
->
private_value
^=
AC97_CD
^
AC97_VIDEO
;
...
...
@@ -850,8 +840,9 @@ static const struct oxygen_model model_xonar_d2 = {
.
dac_volume_min
=
0x0f
,
.
dac_volume_max
=
0xff
,
.
misc_flags
=
OXYGEN_MISC_MIDI
,
.
function_flags
=
OXYGEN_FUNCTION_SPI
,
.
dac_i2s_format
=
OXYGEN_I2S_FORMAT_I2S
,
.
function_flags
=
OXYGEN_FUNCTION_SPI
|
OXYGEN_FUNCTION_ENABLE_SPI_4_5
,
.
dac_i2s_format
=
OXYGEN_I2S_FORMAT_LJUST
,
.
adc_i2s_format
=
OXYGEN_I2S_FORMAT_LJUST
,
};
...
...
sound/usb/usbaudio.c
浏览文件 @
64b36ca7
...
...
@@ -2524,7 +2524,6 @@ static int parse_audio_format_rates(struct snd_usb_audio *chip, struct audioform
* build the rate table and bitmap flags
*/
int
r
,
idx
;
unsigned
int
nonzero_rates
=
0
;
fp
->
rate_table
=
kmalloc
(
sizeof
(
int
)
*
nr_rates
,
GFP_KERNEL
);
if
(
fp
->
rate_table
==
NULL
)
{
...
...
@@ -2532,24 +2531,27 @@ static int parse_audio_format_rates(struct snd_usb_audio *chip, struct audioform
return
-
1
;
}
fp
->
nr_rates
=
nr_rates
;
fp
->
rate_min
=
fp
->
rate_max
=
combine_triple
(
&
fmt
[
8
])
;
fp
->
nr_rates
=
0
;
fp
->
rate_min
=
fp
->
rate_max
=
0
;
for
(
r
=
0
,
idx
=
offset
+
1
;
r
<
nr_rates
;
r
++
,
idx
+=
3
)
{
unsigned
int
rate
=
combine_triple
(
&
fmt
[
idx
]);
if
(
!
rate
)
continue
;
/* C-Media CM6501 mislabels its 96 kHz altsetting */
if
(
rate
==
48000
&&
nr_rates
==
1
&&
chip
->
usb_id
==
USB_ID
(
0x0d8c
,
0x0201
)
&&
(
chip
->
usb_id
==
USB_ID
(
0x0d8c
,
0x0201
)
||
chip
->
usb_id
==
USB_ID
(
0x0d8c
,
0x0102
))
&&
fp
->
altsetting
==
5
&&
fp
->
maxpacksize
==
392
)
rate
=
96000
;
fp
->
rate_table
[
r
]
=
rate
;
nonzero_rates
|=
rate
;
if
(
rate
<
fp
->
rate_min
)
fp
->
rate_table
[
fp
->
nr_rates
]
=
rate
;
if
(
!
fp
->
rate_min
||
rate
<
fp
->
rate_min
)
fp
->
rate_min
=
rate
;
else
if
(
rate
>
fp
->
rate_max
)
if
(
!
fp
->
rate_max
||
rate
>
fp
->
rate_max
)
fp
->
rate_max
=
rate
;
fp
->
rates
|=
snd_pcm_rate_to_rate_bit
(
rate
);
fp
->
nr_rates
++
;
}
if
(
!
nonzero
_rates
)
{
if
(
!
fp
->
nr
_rates
)
{
hwc_debug
(
"All rates were zero. Skipping format!
\n
"
);
return
-
1
;
}
...
...
sound/usb/usbmidi.c
浏览文件 @
64b36ca7
...
...
@@ -1625,6 +1625,7 @@ static int snd_usbmidi_create_endpoints_midiman(struct snd_usb_midi* umidi,
}
ep_info
.
out_ep
=
get_endpoint
(
hostif
,
2
)
->
bEndpointAddress
&
USB_ENDPOINT_NUMBER_MASK
;
ep_info
.
out_interval
=
0
;
ep_info
.
out_cables
=
endpoint
->
out_cables
&
0x5555
;
err
=
snd_usbmidi_out_endpoint_create
(
umidi
,
&
ep_info
,
&
umidi
->
endpoints
[
0
]);
if
(
err
<
0
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录