Merge commit 'kumar/next' into merge
This commit is contained in:
@@ -253,6 +253,7 @@
|
||||
/* Filled in by U-Boot */
|
||||
clock-frequency = <0>;
|
||||
status = "disabled";
|
||||
sdhci,1-bit-only;
|
||||
};
|
||||
|
||||
crypto@30000 {
|
||||
|
||||
@@ -598,8 +598,6 @@ typedef struct risc_timer_pram {
|
||||
#define CICR_IEN ((uint)0x00000080) /* Int. enable */
|
||||
#define CICR_SPS ((uint)0x00000001) /* SCC Spread */
|
||||
|
||||
#define IMAP_ADDR (get_immrbase())
|
||||
|
||||
#define CPM_PIN_INPUT 0
|
||||
#define CPM_PIN_OUTPUT 1
|
||||
#define CPM_PIN_PRIMARY 0
|
||||
|
||||
@@ -285,6 +285,7 @@ static struct of_device_id mpc85xx_ids[] = {
|
||||
{ .type = "qe", },
|
||||
{ .compatible = "fsl,qe", },
|
||||
{ .compatible = "gianfar", },
|
||||
{ .compatible = "fsl,rapidio-delta", },
|
||||
{},
|
||||
};
|
||||
|
||||
|
||||
@@ -52,20 +52,19 @@ smp_85xx_kick_cpu(int nr)
|
||||
|
||||
pr_debug("smp_85xx_kick_cpu: kick CPU #%d\n", nr);
|
||||
|
||||
local_irq_save(flags);
|
||||
|
||||
np = of_get_cpu_node(nr, NULL);
|
||||
cpu_rel_addr = of_get_property(np, "cpu-release-addr", NULL);
|
||||
|
||||
if (cpu_rel_addr == NULL) {
|
||||
printk(KERN_ERR "No cpu-release-addr for cpu %d\n", nr);
|
||||
local_irq_restore(flags);
|
||||
return;
|
||||
}
|
||||
|
||||
/* Map the spin table */
|
||||
bptr_vaddr = ioremap(*cpu_rel_addr, SIZE_BOOT_ENTRY);
|
||||
|
||||
local_irq_save(flags);
|
||||
|
||||
out_be32(bptr_vaddr + BOOT_ENTRY_PIR, nr);
|
||||
out_be32(bptr_vaddr + BOOT_ENTRY_ADDR_LOWER, __pa(__early_start));
|
||||
|
||||
@@ -73,10 +72,10 @@ smp_85xx_kick_cpu(int nr)
|
||||
while ((__secondary_hold_acknowledge != nr) && (++n < 1000))
|
||||
mdelay(1);
|
||||
|
||||
iounmap(bptr_vaddr);
|
||||
|
||||
local_irq_restore(flags);
|
||||
|
||||
iounmap(bptr_vaddr);
|
||||
|
||||
pr_debug("waited %d msecs for CPU #%d.\n", n, nr);
|
||||
}
|
||||
|
||||
|
||||
@@ -102,10 +102,11 @@ static struct of_device_id __initdata socrates_of_bus_ids[] = {
|
||||
{},
|
||||
};
|
||||
|
||||
static void __init socrates_init(void)
|
||||
static int __init socrates_publish_devices(void)
|
||||
{
|
||||
of_platform_bus_probe(NULL, socrates_of_bus_ids, NULL);
|
||||
return of_platform_bus_probe(NULL, socrates_of_bus_ids, NULL);
|
||||
}
|
||||
machine_device_initcall(socrates, socrates_publish_devices);
|
||||
|
||||
/*
|
||||
* Called very early, device-tree isn't unflattened
|
||||
@@ -124,7 +125,6 @@ define_machine(socrates) {
|
||||
.name = "Socrates",
|
||||
.probe = socrates_probe,
|
||||
.setup_arch = socrates_setup_arch,
|
||||
.init = socrates_init,
|
||||
.init_IRQ = socrates_pic_init,
|
||||
.get_irq = mpic_get_irq,
|
||||
.restart = fsl_rstcr_restart,
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
|
||||
#include <sysdev/fsl_soc.h>
|
||||
#include <sysdev/fsl_pci.h>
|
||||
#include <linux/of_platform.h>
|
||||
|
||||
/* A few bit definitions needed for fixups on some boards */
|
||||
#define MPC85xx_L2CTL_L2E 0x80000000 /* L2 enable */
|
||||
|
||||
@@ -112,6 +112,7 @@ int qe_issue_cmd(u32 cmd, u32 device, u8 mcn_protocol, u32 cmd_input)
|
||||
{
|
||||
unsigned long flags;
|
||||
u8 mcn_shift = 0, dev_shift = 0;
|
||||
u32 ret;
|
||||
|
||||
spin_lock_irqsave(&qe_lock, flags);
|
||||
if (cmd == QE_RESET) {
|
||||
@@ -139,11 +140,13 @@ int qe_issue_cmd(u32 cmd, u32 device, u8 mcn_protocol, u32 cmd_input)
|
||||
}
|
||||
|
||||
/* wait for the QE_CR_FLG to clear */
|
||||
while(in_be32(&qe_immr->cp.cecr) & QE_CR_FLG)
|
||||
cpu_relax();
|
||||
ret = spin_event_timeout((in_be32(&qe_immr->cp.cecr) & QE_CR_FLG) == 0,
|
||||
100, 0);
|
||||
/* On timeout (e.g. failure), the expression will be false (ret == 0),
|
||||
otherwise it will be true (ret == 1). */
|
||||
spin_unlock_irqrestore(&qe_lock, flags);
|
||||
|
||||
return 0;
|
||||
return ret == 1;
|
||||
}
|
||||
EXPORT_SYMBOL(qe_issue_cmd);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user