Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 167626
b: refs/heads/master
c: b734dd5
h: refs/heads/master
v: v3
  • Loading branch information
Benjamin Herrenschmidt committed Oct 15, 2009
1 parent 2e7bcd0 commit e310a09
Show file tree
Hide file tree
Showing 11 changed files with 44 additions and 41 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: be10ab109099f8bd8dd365677a9fe641584c1b5b
refs/heads/master: b734dd5b5753c88c64bf56d4002d8ade7e88edec
10 changes: 5 additions & 5 deletions trunk/arch/powerpc/include/asm/firmware.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,16 +37,15 @@
#define FW_FEATURE_VIO ASM_CONST(0x0000000000004000)
#define FW_FEATURE_RDMA ASM_CONST(0x0000000000008000)
#define FW_FEATURE_LLAN ASM_CONST(0x0000000000010000)
#define FW_FEATURE_BULK ASM_CONST(0x0000000000020000)
#define FW_FEATURE_BULK_REMOVE ASM_CONST(0x0000000000020000)
#define FW_FEATURE_XDABR ASM_CONST(0x0000000000040000)
#define FW_FEATURE_MULTITCE ASM_CONST(0x0000000000080000)
#define FW_FEATURE_SPLPAR ASM_CONST(0x0000000000100000)
#define FW_FEATURE_ISERIES ASM_CONST(0x0000000000200000)
#define FW_FEATURE_LPAR ASM_CONST(0x0000000000400000)
#define FW_FEATURE_PS3_LV1 ASM_CONST(0x0000000000800000)
#define FW_FEATURE_BEAT ASM_CONST(0x0000000001000000)
#define FW_FEATURE_BULK_REMOVE ASM_CONST(0x0000000002000000)
#define FW_FEATURE_CMO ASM_CONST(0x0000000004000000)
#define FW_FEATURE_CMO ASM_CONST(0x0000000002000000)

#ifndef __ASSEMBLY__

Expand All @@ -58,8 +57,9 @@ enum {
FW_FEATURE_PERF | FW_FEATURE_DUMP | FW_FEATURE_INTERRUPT |
FW_FEATURE_MIGRATE | FW_FEATURE_PERFMON | FW_FEATURE_CRQ |
FW_FEATURE_VIO | FW_FEATURE_RDMA | FW_FEATURE_LLAN |
FW_FEATURE_BULK | FW_FEATURE_XDABR | FW_FEATURE_MULTITCE |
FW_FEATURE_SPLPAR | FW_FEATURE_LPAR | FW_FEATURE_CMO,
FW_FEATURE_BULK_REMOVE | FW_FEATURE_XDABR |
FW_FEATURE_MULTITCE | FW_FEATURE_SPLPAR | FW_FEATURE_LPAR |
FW_FEATURE_CMO,
FW_FEATURE_PSERIES_ALWAYS = 0,
FW_FEATURE_ISERIES_POSSIBLE = FW_FEATURE_ISERIES | FW_FEATURE_LPAR,
FW_FEATURE_ISERIES_ALWAYS = FW_FEATURE_ISERIES | FW_FEATURE_LPAR,
Expand Down
2 changes: 2 additions & 0 deletions trunk/arch/powerpc/kernel/cputable.c
Original file line number Diff line number Diff line change
Expand Up @@ -711,6 +711,8 @@ static struct cpu_spec __initdata cpu_specs[] = {
.cpu_setup = __setup_cpu_750,
.machine_check = machine_check_generic,
.platform = "ppc750",
.oprofile_cpu_type = "ppc/750",
.oprofile_type = PPC_OPROFILE_G4,
},
{ /* 745/755 */
.pvr_mask = 0xfffff000,
Expand Down
6 changes: 0 additions & 6 deletions trunk/arch/powerpc/kernel/kgdb.c
Original file line number Diff line number Diff line change
Expand Up @@ -282,12 +282,6 @@ void gdb_regs_to_pt_regs(unsigned long *gdb_regs, struct pt_regs *regs)
{
unsigned long *ptr = gdb_regs;
int reg;
#ifdef CONFIG_SPE
union {
u32 v32[2];
u64 v64;
} acc;
#endif

for (reg = 0; reg < 32; reg++)
UNPACK64(regs->gpr[reg], ptr);
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/kernel/pci-common.c
Original file line number Diff line number Diff line change
Expand Up @@ -1190,7 +1190,7 @@ EXPORT_SYMBOL(pcibios_align_resource);
* Reparent resource children of pr that conflict with res
* under res, and make res replace those children.
*/
static int __init reparent_resources(struct resource *parent,
static int reparent_resources(struct resource *parent,
struct resource *res)
{
struct resource *p, **pp;
Expand Down
1 change: 1 addition & 0 deletions trunk/arch/powerpc/kernel/vmlinux.lds.S
Original file line number Diff line number Diff line change
Expand Up @@ -236,6 +236,7 @@ SECTIONS
READ_MOSTLY_DATA(L1_CACHE_BYTES)
}

. = ALIGN(PAGE_SIZE);
.data_nosave : AT(ADDR(.data_nosave) - LOAD_OFFSET) {
NOSAVE_DATA
}
Expand Down
10 changes: 4 additions & 6 deletions trunk/arch/powerpc/mm/slb_low.S
Original file line number Diff line number Diff line change
Expand Up @@ -72,19 +72,17 @@ _GLOBAL(slb_miss_kernel_load_vmemmap)
1:
#endif /* CONFIG_SPARSEMEM_VMEMMAP */

/* vmalloc/ioremap mapping encoding bits, the "li" instructions below
* will be patched by the kernel at boot
/* vmalloc mapping gets the encoding from the PACA as the mapping
* can be demoted from 64K -> 4K dynamically on some machines
*/
BEGIN_FTR_SECTION
/* check whether this is in vmalloc or ioremap space */
clrldi r11,r10,48
cmpldi r11,(VMALLOC_SIZE >> 28) - 1
bgt 5f
lhz r11,PACAVMALLOCSLLP(r13)
b 6f
5:
END_FTR_SECTION_IFCLR(CPU_FTR_CI_LARGE_PAGE)
_GLOBAL(slb_miss_kernel_load_io)
/* IO mapping */
_GLOBAL(slb_miss_kernel_load_io)
li r11,0
6:
BEGIN_FTR_SECTION
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/platforms/cell/axon_msi.c
Original file line number Diff line number Diff line change
Expand Up @@ -365,7 +365,7 @@ static int axon_msi_probe(struct of_device *device,
printk(KERN_ERR
"axon_msi: couldn't parse dcr properties on %s\n",
dn->full_name);
goto out;
goto out_free_msic;
}

msic->dcr_host = dcr_map(dn, dcr_base, dcr_len);
Expand Down
7 changes: 5 additions & 2 deletions trunk/arch/powerpc/platforms/powermac/low_i2c.c
Original file line number Diff line number Diff line change
Expand Up @@ -540,8 +540,11 @@ static struct pmac_i2c_host_kw *__init kw_i2c_host_init(struct device_node *np)
/* Make sure IRQ is disabled */
kw_write_reg(reg_ier, 0);

/* Request chip interrupt */
if (request_irq(host->irq, kw_i2c_irq, 0, "keywest i2c", host))
/* Request chip interrupt. We set IRQF_TIMER because we don't
* want that interrupt disabled between the 2 passes of driver
* suspend or we'll have issues running the pfuncs
*/
if (request_irq(host->irq, kw_i2c_irq, IRQF_TIMER, "keywest i2c", host))
host->irq = NO_IRQ;

printk(KERN_INFO "KeyWest i2c @0x%08x irq %d %s\n",
Expand Down
3 changes: 1 addition & 2 deletions trunk/arch/powerpc/platforms/pseries/firmware.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,10 @@ firmware_features_table[FIRMWARE_MAX_FEATURES] = {
{FW_FEATURE_VIO, "hcall-vio"},
{FW_FEATURE_RDMA, "hcall-rdma"},
{FW_FEATURE_LLAN, "hcall-lLAN"},
{FW_FEATURE_BULK, "hcall-bulk"},
{FW_FEATURE_BULK_REMOVE, "hcall-bulk"},
{FW_FEATURE_XDABR, "hcall-xdabr"},
{FW_FEATURE_MULTITCE, "hcall-multi-tce"},
{FW_FEATURE_SPLPAR, "hcall-splpar"},
{FW_FEATURE_BULK_REMOVE, "hcall-bulk"},
};

/* Build up the firmware features bitmask using the contents of
Expand Down
40 changes: 23 additions & 17 deletions trunk/drivers/macintosh/via-pmu.c
Original file line number Diff line number Diff line change
Expand Up @@ -405,7 +405,11 @@ static int __init via_pmu_start(void)
printk(KERN_ERR "via-pmu: can't map interrupt\n");
return -ENODEV;
}
if (request_irq(irq, via_pmu_interrupt, 0, "VIA-PMU", (void *)0)) {
/* We set IRQF_TIMER because we don't want the interrupt to be disabled
* between the 2 passes of driver suspend, we control our own disabling
* for that one
*/
if (request_irq(irq, via_pmu_interrupt, IRQF_TIMER, "VIA-PMU", (void *)0)) {
printk(KERN_ERR "via-pmu: can't request irq %d\n", irq);
return -ENODEV;
}
Expand All @@ -419,7 +423,7 @@ static int __init via_pmu_start(void)
gpio_irq = irq_of_parse_and_map(gpio_node, 0);

if (gpio_irq != NO_IRQ) {
if (request_irq(gpio_irq, gpio1_interrupt, 0,
if (request_irq(gpio_irq, gpio1_interrupt, IRQF_TIMER,
"GPIO1 ADB", (void *)0))
printk(KERN_ERR "pmu: can't get irq %d"
" (GPIO1)\n", gpio_irq);
Expand Down Expand Up @@ -925,8 +929,7 @@ proc_write_options(struct file *file, const char __user *buffer,

#ifdef CONFIG_ADB
/* Send an ADB command */
static int
pmu_send_request(struct adb_request *req, int sync)
static int pmu_send_request(struct adb_request *req, int sync)
{
int i, ret;

Expand Down Expand Up @@ -1005,16 +1008,11 @@ pmu_send_request(struct adb_request *req, int sync)
}

/* Enable/disable autopolling */
static int
pmu_adb_autopoll(int devs)
static int __pmu_adb_autopoll(int devs)
{
struct adb_request req;

if ((vias == NULL) || (!pmu_fully_inited) || !pmu_has_adb)
return -ENXIO;

if (devs) {
adb_dev_map = devs;
pmu_request(&req, NULL, 5, PMU_ADB_CMD, 0, 0x86,
adb_dev_map >> 8, adb_dev_map);
pmu_adb_flags = 2;
Expand All @@ -1027,9 +1025,17 @@ pmu_adb_autopoll(int devs)
return 0;
}

static int pmu_adb_autopoll(int devs)
{
if ((vias == NULL) || (!pmu_fully_inited) || !pmu_has_adb)
return -ENXIO;

adb_dev_map = devs;
return __pmu_adb_autopoll(devs);
}

/* Reset the ADB bus */
static int
pmu_adb_reset_bus(void)
static int pmu_adb_reset_bus(void)
{
struct adb_request req;
int save_autopoll = adb_dev_map;
Expand All @@ -1038,13 +1044,13 @@ pmu_adb_reset_bus(void)
return -ENXIO;

/* anyone got a better idea?? */
pmu_adb_autopoll(0);
__pmu_adb_autopoll(0);

req.nbytes = 5;
req.nbytes = 4;
req.done = NULL;
req.data[0] = PMU_ADB_CMD;
req.data[1] = 0;
req.data[2] = ADB_BUSRESET;
req.data[1] = ADB_BUSRESET;
req.data[2] = 0;
req.data[3] = 0;
req.data[4] = 0;
req.reply_len = 0;
Expand All @@ -1056,7 +1062,7 @@ pmu_adb_reset_bus(void)
pmu_wait_complete(&req);

if (save_autopoll != 0)
pmu_adb_autopoll(save_autopoll);
__pmu_adb_autopoll(save_autopoll);

return 0;
}
Expand Down

0 comments on commit e310a09

Please sign in to comment.