mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] Fix lh7a40x_udc.c [ARM] Fix warning in consistent.c [ARM] Fix warnings in arch/arm/kernel/setup.c [ARM] Fix ecard.c resource warnings. [ARM] Fix ISA IRQ resources [ARM] Fix bad asm instruction in proc-arm925.S [ARM] More missing proc-macros.S includes [ARM] 3708/2: fix SMP build after section ioremap changes
This commit is contained in:
commit
060ec6f2fb
10 changed files with 32 additions and 9 deletions
|
@ -883,7 +883,7 @@ static ssize_t ecard_show_resources(struct device *dev, struct device_attribute
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
for (i = 0; i < ECARD_NUM_RESOURCES; i++)
|
for (i = 0; i < ECARD_NUM_RESOURCES; i++)
|
||||||
str += sprintf(str, "%08lx %08lx %08lx\n",
|
str += sprintf(str, "%08x %08x %08lx\n",
|
||||||
ec->resource[i].start,
|
ec->resource[i].start,
|
||||||
ec->resource[i].end,
|
ec->resource[i].end,
|
||||||
ec->resource[i].flags);
|
ec->resource[i].flags);
|
||||||
|
|
|
@ -344,7 +344,7 @@ static void __init setup_processor(void)
|
||||||
cpu_cache = *list->cache;
|
cpu_cache = *list->cache;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
printk("CPU: %s [%08x] revision %d (ARMv%s), cr=%08x\n",
|
printk("CPU: %s [%08x] revision %d (ARMv%s), cr=%08lx\n",
|
||||||
cpu_name, processor_id, (int)processor_id & 15,
|
cpu_name, processor_id, (int)processor_id & 15,
|
||||||
proc_arch[cpu_architecture()], cr_alignment);
|
proc_arch[cpu_architecture()], cr_alignment);
|
||||||
|
|
||||||
|
|
|
@ -98,9 +98,22 @@ isa_irq_handler(unsigned int irq, struct irqdesc *desc, struct pt_regs *regs)
|
||||||
desc_handle_irq(isa_irq, desc, regs);
|
desc_handle_irq(isa_irq, desc, regs);
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct irqaction irq_cascade = { .handler = no_action, .name = "cascade", };
|
static struct irqaction irq_cascade = {
|
||||||
static struct resource pic1_resource = { "pic1", 0x20, 0x3f };
|
.handler = no_action,
|
||||||
static struct resource pic2_resource = { "pic2", 0xa0, 0xbf };
|
.name = "cascade",
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct resource pic1_resource = {
|
||||||
|
.name = "pic1",
|
||||||
|
.start = 0x20,
|
||||||
|
.end = 0x3f,
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct resource pic2_resource = {
|
||||||
|
.name = "pic2",
|
||||||
|
.start = 0xa0,
|
||||||
|
.end = 0xbf,
|
||||||
|
};
|
||||||
|
|
||||||
void __init isa_init_irq(unsigned int host_irq)
|
void __init isa_init_irq(unsigned int host_irq)
|
||||||
{
|
{
|
||||||
|
|
|
@ -303,7 +303,6 @@ __ioremap_pfn(unsigned long pfn, unsigned long offset, size_t size,
|
||||||
int err;
|
int err;
|
||||||
unsigned long addr;
|
unsigned long addr;
|
||||||
struct vm_struct * area;
|
struct vm_struct * area;
|
||||||
unsigned int cr = get_cr();
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* High mappings must be supersection aligned
|
* High mappings must be supersection aligned
|
||||||
|
@ -317,7 +316,7 @@ __ioremap_pfn(unsigned long pfn, unsigned long offset, size_t size,
|
||||||
addr = (unsigned long)area->addr;
|
addr = (unsigned long)area->addr;
|
||||||
|
|
||||||
#ifndef CONFIG_SMP
|
#ifndef CONFIG_SMP
|
||||||
if ((((cpu_architecture() >= CPU_ARCH_ARMv6) && (cr & CR_XP)) ||
|
if ((((cpu_architecture() >= CPU_ARCH_ARMv6) && (get_cr() & CR_XP)) ||
|
||||||
cpu_is_xsc3()) &&
|
cpu_is_xsc3()) &&
|
||||||
!((__pfn_to_phys(pfn) | size | addr) & ~SUPERSECTION_MASK)) {
|
!((__pfn_to_phys(pfn) | size | addr) & ~SUPERSECTION_MASK)) {
|
||||||
area->flags |= VM_ARM_SECTION_MAPPING;
|
area->flags |= VM_ARM_SECTION_MAPPING;
|
||||||
|
@ -369,6 +368,7 @@ void __iounmap(void __iomem *addr)
|
||||||
|
|
||||||
addr = (void __iomem *)(PAGE_MASK & (unsigned long)addr);
|
addr = (void __iomem *)(PAGE_MASK & (unsigned long)addr);
|
||||||
|
|
||||||
|
#ifndef CONFIG_SMP
|
||||||
/*
|
/*
|
||||||
* If this is a section based mapping we need to handle it
|
* If this is a section based mapping we need to handle it
|
||||||
* specially as the VM subysystem does not know how to handle
|
* specially as the VM subysystem does not know how to handle
|
||||||
|
@ -390,6 +390,7 @@ void __iounmap(void __iomem *addr)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
write_unlock(&vmlist_lock);
|
write_unlock(&vmlist_lock);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (!section_mapping)
|
if (!section_mapping)
|
||||||
vunmap(addr);
|
vunmap(addr);
|
||||||
|
|
|
@ -34,6 +34,8 @@
|
||||||
#include <asm/procinfo.h>
|
#include <asm/procinfo.h>
|
||||||
#include <asm/ptrace.h>
|
#include <asm/ptrace.h>
|
||||||
|
|
||||||
|
#include "proc-macros.S"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is the maximum size of an area which will be invalidated
|
* This is the maximum size of an area which will be invalidated
|
||||||
* using the single invalidate entry instructions. Anything larger
|
* using the single invalidate entry instructions. Anything larger
|
||||||
|
|
|
@ -34,6 +34,8 @@
|
||||||
#include <asm/procinfo.h>
|
#include <asm/procinfo.h>
|
||||||
#include <asm/ptrace.h>
|
#include <asm/ptrace.h>
|
||||||
|
|
||||||
|
#include "proc-macros.S"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is the maximum size of an area which will be invalidated
|
* This is the maximum size of an area which will be invalidated
|
||||||
* using the single invalidate entry instructions. Anything larger
|
* using the single invalidate entry instructions. Anything larger
|
||||||
|
|
|
@ -23,6 +23,8 @@
|
||||||
#include <asm/procinfo.h>
|
#include <asm/procinfo.h>
|
||||||
#include <asm/ptrace.h>
|
#include <asm/ptrace.h>
|
||||||
|
|
||||||
|
#include "proc-macros.S"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is the maximum size of an area which will be invalidated
|
* This is the maximum size of an area which will be invalidated
|
||||||
* using the single invalidate entry instructions. Anything larger
|
* using the single invalidate entry instructions. Anything larger
|
||||||
|
|
|
@ -23,6 +23,8 @@
|
||||||
#include <asm/procinfo.h>
|
#include <asm/procinfo.h>
|
||||||
#include <asm/ptrace.h>
|
#include <asm/ptrace.h>
|
||||||
|
|
||||||
|
#include "proc-macros.S"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is the maximum size of an area which will be invalidated
|
* This is the maximum size of an area which will be invalidated
|
||||||
* using the single invalidate entry instructions. Anything larger
|
* using the single invalidate entry instructions. Anything larger
|
||||||
|
|
|
@ -454,7 +454,8 @@ __arm925_setup:
|
||||||
mcr p15, 7, r0, c15, c0, 0
|
mcr p15, 7, r0, c15, c0, 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
adr r5, {r5, r6}
|
adr r5, arm925_crval
|
||||||
|
ldmia r5, {r5, r6}
|
||||||
mrc p15, 0, r0, c1, c0 @ get control register v4
|
mrc p15, 0, r0, c1, c0 @ get control register v4
|
||||||
bic r0, r0, r5
|
bic r0, r0, r5
|
||||||
orr r0, r0, r6
|
orr r0, r0, r6
|
||||||
|
|
|
@ -2143,7 +2143,7 @@ static int lh7a40x_udc_remove(struct platform_device *pdev)
|
||||||
|
|
||||||
static struct platform_driver udc_driver = {
|
static struct platform_driver udc_driver = {
|
||||||
.probe = lh7a40x_udc_probe,
|
.probe = lh7a40x_udc_probe,
|
||||||
.remove = lh7a40x_udc_remove
|
.remove = lh7a40x_udc_remove,
|
||||||
/* FIXME power management support */
|
/* FIXME power management support */
|
||||||
/* .suspend = ... disable UDC */
|
/* .suspend = ... disable UDC */
|
||||||
/* .resume = ... re-enable UDC */
|
/* .resume = ... re-enable UDC */
|
||||||
|
|
Loading…
Reference in a new issue