Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
xenomai
ipipe-arm64
Commits
16af43fe
Commit
16af43fe
authored
Mar 03, 2013
by
Russell King
Browse files
Merge branches 'devel-stable', 'fixes' and 'mmci' into for-linus
parents
9664ffe6
ded3ef0f
653a761e
Changes
239
Hide whitespace changes
Inline
Side-by-side
Documentation/hid/hid-sensor.txt
100755 → 100644
View file @
16af43fe
File mode changed from 100755 to 100644
Documentation/kernel-parameters.txt
View file @
16af43fe
...
...
@@ -2438,7 +2438,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
real-time workloads. It can also improve energy
efficiency for asymmetric multiprocessors.
rcu_nocb
s
_poll [KNL,BOOT]
rcu_nocb_poll [KNL,BOOT]
Rather than requiring that offloaded CPUs
(specified by rcu_nocbs= above) explicitly
awaken the corresponding "rcuoN" kthreads,
...
...
Documentation/x86/boot.txt
View file @
16af43fe
...
...
@@ -57,7 +57,7 @@ Protocol 2.10: (Kernel 2.6.31) Added a protocol for relaxed alignment
Protocol 2.11: (Kernel 3.6) Added a field for offset of EFI handover
protocol entry point.
Protocol 2.12: (Kernel 3.
9
) Added the xloadflags field and extension fields
Protocol 2.12: (Kernel 3.
8
) Added the xloadflags field and extension fields
to struct boot_params for for loading bzImage and ramdisk
above 4G in 64bit.
...
...
MAINTAINERS
View file @
16af43fe
...
...
@@ -1489,7 +1489,7 @@ AVR32 ARCHITECTURE
M: Haavard Skinnemoen <hskinnemoen@gmail.com>
M: Hans-Christian Egtvedt <egtvedt@samfundet.no>
W: http://www.atmel.com/products/AVR32/
W: http://avr32linux.org/
W: http://
mirror.egtvedt.no/
avr32linux.org/
W: http://avrfreaks.net/
S: Maintained
F: arch/avr32/
...
...
Makefile
View file @
16af43fe
VERSION
=
3
PATCHLEVEL
=
8
SUBLEVEL
=
0
EXTRAVERSION
=
-rc
5
NAME
=
Terrified Chipmunk
EXTRAVERSION
=
-rc
7
NAME
=
Unicycling Gorilla
# *DOCUMENTATION*
# To see a list of typical targets execute "make help"
...
...
arch/arm/boot/Makefile
View file @
16af43fe
...
...
@@ -68,8 +68,8 @@ else
endif
check_for_multiple_loadaddr
=
\
if
[
$(
words
$(UIMAGE_LOADADDR)
)
-
gt
1
]
;
then
\
echo
'multiple load addresses:
$(UIMAGE_LOADADDR)
'
;
\
if
[
$(
words
$(UIMAGE_LOADADDR)
)
-
ne
1
]
;
then
\
echo
'multiple
(or no)
load addresses:
$(UIMAGE_LOADADDR)
'
;
\
echo
'This is incompatible with uImages'
;
\
echo
'Specify LOADADDR on the commandline to build an uImage'
;
\
false
;
\
...
...
arch/arm/common/gic.c
View file @
16af43fe
...
...
@@ -351,6 +351,25 @@ void __init gic_cascade_irq(unsigned int gic_nr, unsigned int irq)
irq_set_chained_handler
(
irq
,
gic_handle_cascade_irq
);
}
static
u8
gic_get_cpumask
(
struct
gic_chip_data
*
gic
)
{
void
__iomem
*
base
=
gic_data_dist_base
(
gic
);
u32
mask
,
i
;
for
(
i
=
mask
=
0
;
i
<
32
;
i
+=
4
)
{
mask
=
readl_relaxed
(
base
+
GIC_DIST_TARGET
+
i
);
mask
|=
mask
>>
16
;
mask
|=
mask
>>
8
;
if
(
mask
)
break
;
}
if
(
!
mask
)
pr_crit
(
"GIC CPU mask not found - kernel will fail to boot.
\n
"
);
return
mask
;
}
static
void
__init
gic_dist_init
(
struct
gic_chip_data
*
gic
)
{
unsigned
int
i
;
...
...
@@ -369,7 +388,9 @@ static void __init gic_dist_init(struct gic_chip_data *gic)
/*
* Set all global interrupts to this CPU only.
*/
cpumask
=
readl_relaxed
(
base
+
GIC_DIST_TARGET
+
0
);
cpumask
=
gic_get_cpumask
(
gic
);
cpumask
|=
cpumask
<<
8
;
cpumask
|=
cpumask
<<
16
;
for
(
i
=
32
;
i
<
gic_irqs
;
i
+=
4
)
writel_relaxed
(
cpumask
,
base
+
GIC_DIST_TARGET
+
i
*
4
/
4
);
...
...
@@ -400,7 +421,7 @@ static void __cpuinit gic_cpu_init(struct gic_chip_data *gic)
* Get what the GIC says our CPU mask is.
*/
BUG_ON
(
cpu
>=
NR_GIC_CPU_IF
);
cpu_mask
=
readl_relaxed
(
dist_base
+
GIC_DIST_TARGET
+
0
);
cpu_mask
=
gic_get_cpumask
(
gic
);
gic_cpu_map
[
cpu
]
=
cpu_mask
;
/*
...
...
arch/arm/include/asm/delay.h
View file @
16af43fe
...
...
@@ -24,6 +24,7 @@ extern struct arm_delay_ops {
void
(
*
delay
)(
unsigned
long
);
void
(
*
const_udelay
)(
unsigned
long
);
void
(
*
udelay
)(
unsigned
long
);
bool
const_clock
;
}
arm_delay_ops
;
#define __delay(n) arm_delay_ops.delay(n)
...
...
arch/arm/include/asm/memory.h
View file @
16af43fe
...
...
@@ -37,7 +37,7 @@
*/
#define PAGE_OFFSET UL(CONFIG_PAGE_OFFSET)
#define TASK_SIZE (UL(CONFIG_PAGE_OFFSET) - UL(0x01000000))
#define TASK_UNMAPPED_BASE
(UL(CONFIG_PAGE_OFFSET) / 3
)
#define TASK_UNMAPPED_BASE
ALIGN(TASK_SIZE / 3, SZ_16M
)
/*
* The maximum size of a 26-bit user space task.
...
...
arch/arm/include/asm/pgtable.h
View file @
16af43fe
...
...
@@ -247,7 +247,8 @@ static inline pte_t pte_mkspecial(pte_t pte) { return pte; }
static
inline
pte_t
pte_modify
(
pte_t
pte
,
pgprot_t
newprot
)
{
const
pteval_t
mask
=
L_PTE_XN
|
L_PTE_RDONLY
|
L_PTE_USER
|
L_PTE_NONE
;
const
pteval_t
mask
=
L_PTE_XN
|
L_PTE_RDONLY
|
L_PTE_USER
|
L_PTE_NONE
|
L_PTE_VALID
;
pte_val
(
pte
)
=
(
pte_val
(
pte
)
&
~
mask
)
|
(
pgprot_val
(
newprot
)
&
mask
);
return
pte
;
}
...
...
arch/arm/kernel/sched_clock.c
View file @
16af43fe
...
...
@@ -93,11 +93,11 @@ static void notrace update_sched_clock(void)
* detectable in cyc_to_fixed_sched_clock().
*/
raw_local_irq_save
(
flags
);
cd
.
epoch_cyc
=
cyc
;
cd
.
epoch_cyc
_copy
=
cyc
;
smp_wmb
();
cd
.
epoch_ns
=
ns
;
smp_wmb
();
cd
.
epoch_cyc
_copy
=
cyc
;
cd
.
epoch_cyc
=
cyc
;
raw_local_irq_restore
(
flags
);
}
...
...
arch/arm/kernel/smp.c
View file @
16af43fe
...
...
@@ -686,6 +686,9 @@ static int cpufreq_callback(struct notifier_block *nb,
if
(
freq
->
flags
&
CPUFREQ_CONST_LOOPS
)
return
NOTIFY_OK
;
if
(
arm_delay_ops
.
const_clock
)
return
NOTIFY_OK
;
if
(
!
per_cpu
(
l_p_j_ref
,
cpu
))
{
per_cpu
(
l_p_j_ref
,
cpu
)
=
per_cpu
(
cpu_data
,
cpu
).
loops_per_jiffy
;
...
...
arch/arm/lib/delay.c
View file @
16af43fe
...
...
@@ -77,6 +77,7 @@ void __init register_current_timer_delay(const struct delay_timer *timer)
arm_delay_ops
.
delay
=
__timer_delay
;
arm_delay_ops
.
const_udelay
=
__timer_const_udelay
;
arm_delay_ops
.
udelay
=
__timer_udelay
;
arm_delay_ops
.
const_clock
=
true
;
delay_calibrated
=
true
;
}
else
{
pr_info
(
"Ignoring duplicate/late registration of read_current_timer delay
\n
"
);
...
...
arch/arm/mach-exynos/Kconfig
View file @
16af43fe
...
...
@@ -414,7 +414,7 @@ config MACH_EXYNOS4_DT
select CPU_EXYNOS4210
select HAVE_SAMSUNG_KEYPAD if INPUT_KEYBOARD
select PINCTRL
select PINCTRL_EXYNOS
4
select PINCTRL_EXYNOS
select USE_OF
help
Machine support for Samsung Exynos4 machine with device tree enabled.
...
...
arch/arm/mach-realview/include/mach/irqs-eb.h
View file @
16af43fe
...
...
@@ -115,7 +115,7 @@
/*
* Only define NR_IRQS if less than NR_IRQS_EB
*/
#define NR_IRQS_EB (IRQ_EB_GIC_START +
96
)
#define NR_IRQS_EB (IRQ_EB_GIC_START +
128
)
#if defined(CONFIG_MACH_REALVIEW_EB) \
&& (!defined(NR_IRQS) || (NR_IRQS < NR_IRQS_EB))
...
...
arch/arm/mm/alignment.c
View file @
16af43fe
...
...
@@ -749,7 +749,6 @@ do_alignment(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
unsigned
long
instr
=
0
,
instrptr
;
int
(
*
handler
)(
unsigned
long
addr
,
unsigned
long
instr
,
struct
pt_regs
*
regs
);
unsigned
int
type
;
mm_segment_t
fs
;
unsigned
int
fault
;
u16
tinstr
=
0
;
int
isize
=
4
;
...
...
@@ -760,16 +759,15 @@ do_alignment(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
instrptr
=
instruction_pointer
(
regs
);
fs
=
get_fs
();
set_fs
(
KERNEL_DS
);
if
(
thumb_mode
(
regs
))
{
fault
=
__get_user
(
tinstr
,
(
u16
*
)(
instrptr
&
~
1
));
u16
*
ptr
=
(
u16
*
)(
instrptr
&
~
1
);
fault
=
probe_kernel_address
(
ptr
,
tinstr
);
if
(
!
fault
)
{
if
(
cpu_architecture
()
>=
CPU_ARCH_ARMv7
&&
IS_T32
(
tinstr
))
{
/* Thumb-2 32-bit */
u16
tinst2
=
0
;
fault
=
__get_user
(
tinst2
,
(
u16
*
)(
instrptr
+
2
)
);
fault
=
probe_kernel_address
(
ptr
+
1
,
tinst2
);
instr
=
(
tinstr
<<
16
)
|
tinst2
;
thumb2_32b
=
1
;
}
else
{
...
...
@@ -778,8 +776,7 @@ do_alignment(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
}
}
}
else
fault
=
__get_user
(
instr
,
(
u32
*
)
instrptr
);
set_fs
(
fs
);
fault
=
probe_kernel_address
(
instrptr
,
instr
);
if
(
fault
)
{
type
=
TYPE_FAULT
;
...
...
arch/arm/mm/dma-mapping.c
View file @
16af43fe
...
...
@@ -640,7 +640,7 @@ static void *__dma_alloc(struct device *dev, size_t size, dma_addr_t *handle,
if
(
is_coherent
||
nommu
())
addr
=
__alloc_simple_buffer
(
dev
,
size
,
gfp
,
&
page
);
else
if
(
gfp
&
GFP_
ATOMIC
)
else
if
(
!
(
gfp
&
__
GFP_
WAIT
)
)
addr
=
__alloc_from_pool
(
size
,
&
page
);
else
if
(
!
IS_ENABLED
(
CONFIG_CMA
))
addr
=
__alloc_remap_buffer
(
dev
,
size
,
gfp
,
prot
,
&
page
,
caller
);
...
...
arch/arm/vfp/vfphw.S
View file @
16af43fe
...
...
@@ -22,12 +22,14 @@
.
macro
DBGSTR
,
str
#ifdef DEBUG
stmfd
sp
!,
{
r0
-
r3
,
ip
,
lr
}
add
r0
,
pc
,
#
4
ldr
r0
,
=
1
f
bl
printk
b
1
f
.
asciz
KERN_DEBUG
"VFP: \str\n"
.
balign
4
1
:
ldmfd
sp
!,
{
r0
-
r3
,
ip
,
lr
}
ldmfd
sp
!,
{
r0
-
r3
,
ip
,
lr
}
.
pushsection
.
rodata
,
"a"
1
:
.
ascii
KERN_DEBUG
"VFP: \str\n"
.
byte
0
.
previous
#endif
.
endm
...
...
@@ -35,12 +37,14 @@
#ifdef DEBUG
stmfd
sp
!,
{
r0
-
r3
,
ip
,
lr
}
mov
r1
,
\
arg
add
r0
,
pc
,
#
4
ldr
r0
,
=
1
f
bl
printk
b
1
f
.
asciz
KERN_DEBUG
"VFP: \str\n"
.
balign
4
1
:
ldmfd
sp
!,
{
r0
-
r3
,
ip
,
lr
}
ldmfd
sp
!,
{
r0
-
r3
,
ip
,
lr
}
.
pushsection
.
rodata
,
"a"
1
:
.
ascii
KERN_DEBUG
"VFP: \str\n"
.
byte
0
.
previous
#endif
.
endm
...
...
@@ -50,12 +54,14 @@
mov
r3
,
\
arg3
mov
r2
,
\
arg2
mov
r1
,
\
arg1
add
r0
,
pc
,
#
4
ldr
r0
,
=
1
f
bl
printk
b
1
f
.
asciz
KERN_DEBUG
"VFP: \str\n"
.
balign
4
1
:
ldmfd
sp
!,
{
r0
-
r3
,
ip
,
lr
}
ldmfd
sp
!,
{
r0
-
r3
,
ip
,
lr
}
.
pushsection
.
rodata
,
"a"
1
:
.
ascii
KERN_DEBUG
"VFP: \str\n"
.
byte
0
.
previous
#endif
.
endm
...
...
arch/arm/vfp/vfpmodule.c
View file @
16af43fe
...
...
@@ -413,7 +413,7 @@ void VFP_bounce(u32 trigger, u32 fpexc, struct pt_regs *regs)
* If there isn't a second FP instruction, exit now. Note that
* the FPEXC.FP2V bit is valid only if FPEXC.EX is 1.
*/
if
(
fpexc
^
(
FPEXC_EX
|
FPEXC_FP2V
))
if
(
(
fpexc
&
(
FPEXC_EX
|
FPEXC_FP2V
))
!=
(
FPEXC_EX
|
FPEXC_FP2V
))
goto
exit
;
/*
...
...
arch/avr32/include/asm/dma-mapping.h
View file @
16af43fe
...
...
@@ -336,4 +336,14 @@ dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg,
#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
#define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)
/* drivers/base/dma-mapping.c */
extern
int
dma_common_mmap
(
struct
device
*
dev
,
struct
vm_area_struct
*
vma
,
void
*
cpu_addr
,
dma_addr_t
dma_addr
,
size_t
size
);
extern
int
dma_common_get_sgtable
(
struct
device
*
dev
,
struct
sg_table
*
sgt
,
void
*
cpu_addr
,
dma_addr_t
dma_addr
,
size_t
size
);
#define dma_mmap_coherent(d, v, c, h, s) dma_common_mmap(d, v, c, h, s)
#define dma_get_sgtable(d, t, v, h, s) dma_common_get_sgtable(d, t, v, h, s)
#endif
/* __ASM_AVR32_DMA_MAPPING_H */
Prev
1
2
3
4
5
…
12
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment