mirror of https://gitee.com/openkylin/linux.git
Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm
Pull ARM fixes from Russell King: "Another few fixes for ARM, nothing major here" * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm: ARM: 7938/1: OMAP4/highbank: Flush L2 cache before disabling ARM: 7939/1: traps: fix opcode endianness when read from user memory ARM: 7937/1: perf_event: Silence sparse warning ARM: 7934/1: DT/kernel: fix arch_match_cpu_phys_id to avoid erroneous match Revert "ARM: 7908/1: mm: Fix the arm_dma_limit calculation"
This commit is contained in:
commit
9826dbb1e9
|
@ -171,7 +171,7 @@ void __init arm_dt_init_cpu_maps(void)
|
||||||
|
|
||||||
bool arch_match_cpu_phys_id(int cpu, u64 phys_id)
|
bool arch_match_cpu_phys_id(int cpu, u64 phys_id)
|
||||||
{
|
{
|
||||||
return (phys_id & MPIDR_HWID_BITMASK) == cpu_logical_map(cpu);
|
return phys_id == cpu_logical_map(cpu);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const void * __init arch_get_next_mach(const char *const **match)
|
static const void * __init arch_get_next_mach(const char *const **match)
|
||||||
|
|
|
@ -254,7 +254,7 @@ static int probe_current_pmu(struct arm_pmu *pmu)
|
||||||
static int cpu_pmu_device_probe(struct platform_device *pdev)
|
static int cpu_pmu_device_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
const struct of_device_id *of_id;
|
const struct of_device_id *of_id;
|
||||||
int (*init_fn)(struct arm_pmu *);
|
const int (*init_fn)(struct arm_pmu *);
|
||||||
struct device_node *node = pdev->dev.of_node;
|
struct device_node *node = pdev->dev.of_node;
|
||||||
struct arm_pmu *pmu;
|
struct arm_pmu *pmu;
|
||||||
int ret = -ENODEV;
|
int ret = -ENODEV;
|
||||||
|
|
|
@ -431,9 +431,10 @@ asmlinkage void __exception do_undefinstr(struct pt_regs *regs)
|
||||||
instr2 = __mem_to_opcode_thumb16(instr2);
|
instr2 = __mem_to_opcode_thumb16(instr2);
|
||||||
instr = __opcode_thumb32_compose(instr, instr2);
|
instr = __opcode_thumb32_compose(instr, instr2);
|
||||||
}
|
}
|
||||||
} else if (get_user(instr, (u32 __user *)pc)) {
|
} else {
|
||||||
|
if (get_user(instr, (u32 __user *)pc))
|
||||||
|
goto die_sig;
|
||||||
instr = __mem_to_opcode_arm(instr);
|
instr = __mem_to_opcode_arm(instr);
|
||||||
goto die_sig;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (call_undef_hook(regs, instr) == 0)
|
if (call_undef_hook(regs, instr) == 0)
|
||||||
|
|
|
@ -53,6 +53,7 @@ static void __init highbank_scu_map_io(void)
|
||||||
|
|
||||||
static void highbank_l2x0_disable(void)
|
static void highbank_l2x0_disable(void)
|
||||||
{
|
{
|
||||||
|
outer_flush_all();
|
||||||
/* Disable PL310 L2 Cache controller */
|
/* Disable PL310 L2 Cache controller */
|
||||||
highbank_smc1(0x102, 0x0);
|
highbank_smc1(0x102, 0x0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -162,6 +162,7 @@ void __iomem *omap4_get_l2cache_base(void)
|
||||||
|
|
||||||
static void omap4_l2x0_disable(void)
|
static void omap4_l2x0_disable(void)
|
||||||
{
|
{
|
||||||
|
outer_flush_all();
|
||||||
/* Disable PL310 L2 Cache controller */
|
/* Disable PL310 L2 Cache controller */
|
||||||
omap_smc1(0x102, 0x0);
|
omap_smc1(0x102, 0x0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -229,7 +229,7 @@ void __init setup_dma_zone(const struct machine_desc *mdesc)
|
||||||
#ifdef CONFIG_ZONE_DMA
|
#ifdef CONFIG_ZONE_DMA
|
||||||
if (mdesc->dma_zone_size) {
|
if (mdesc->dma_zone_size) {
|
||||||
arm_dma_zone_size = mdesc->dma_zone_size;
|
arm_dma_zone_size = mdesc->dma_zone_size;
|
||||||
arm_dma_limit = __pv_phys_offset + arm_dma_zone_size - 1;
|
arm_dma_limit = PHYS_OFFSET + arm_dma_zone_size - 1;
|
||||||
} else
|
} else
|
||||||
arm_dma_limit = 0xffffffff;
|
arm_dma_limit = 0xffffffff;
|
||||||
arm_dma_pfn_limit = arm_dma_limit >> PAGE_SHIFT;
|
arm_dma_pfn_limit = arm_dma_limit >> PAGE_SHIFT;
|
||||||
|
|
Loading…
Reference in New Issue