aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/sparc/kernel/devices.c4
-rw-r--r--arch/sparc/kernel/pcic.c8
-rw-r--r--arch/sparc64/defconfig9
-rw-r--r--arch/sparc64/kernel/isa.c2
-rw-r--r--arch/sparc64/kernel/ldc.c15
-rw-r--r--arch/sparc64/kernel/pci_sun4v.c4
-rw-r--r--arch/sparc64/kernel/smp.c5
-rw-r--r--kernel/sysctl_check.c2
8 files changed, 32 insertions, 17 deletions
diff --git a/arch/sparc/kernel/devices.c b/arch/sparc/kernel/devices.c
index af90a5f9ab57..b240b8863fd0 100644
--- a/arch/sparc/kernel/devices.c
+++ b/arch/sparc/kernel/devices.c
@@ -62,8 +62,10 @@ static int __cpu_find_by(int (*compare)(int, int, void *), void *compare_arg,
62 int err = check_cpu_node(dp->node, &cur_inst, 62 int err = check_cpu_node(dp->node, &cur_inst,
63 compare, compare_arg, 63 compare, compare_arg,
64 prom_node, mid); 64 prom_node, mid);
65 if (!err) 65 if (!err) {
66 of_node_put(dp);
66 return 0; 67 return 0;
68 }
67 } 69 }
68 70
69 return -ENODEV; 71 return -ENODEV;
diff --git a/arch/sparc/kernel/pcic.c b/arch/sparc/kernel/pcic.c
index f2d432edc92d..4cd5d7818dc6 100644
--- a/arch/sparc/kernel/pcic.c
+++ b/arch/sparc/kernel/pcic.c
@@ -329,7 +329,7 @@ int __init pcic_probe(void)
329 pcic->pcic_res_cfg_addr.name = "pcic_cfg_addr"; 329 pcic->pcic_res_cfg_addr.name = "pcic_cfg_addr";
330 if ((pcic->pcic_config_space_addr = 330 if ((pcic->pcic_config_space_addr =
331 ioremap(regs[2].phys_addr, regs[2].reg_size * 2)) == 0) { 331 ioremap(regs[2].phys_addr, regs[2].reg_size * 2)) == 0) {
332 prom_printf("PCIC: Error, cannot map" 332 prom_printf("PCIC: Error, cannot map "
333 "PCI Configuration Space Address.\n"); 333 "PCI Configuration Space Address.\n");
334 prom_halt(); 334 prom_halt();
335 } 335 }
@@ -341,7 +341,7 @@ int __init pcic_probe(void)
341 pcic->pcic_res_cfg_data.name = "pcic_cfg_data"; 341 pcic->pcic_res_cfg_data.name = "pcic_cfg_data";
342 if ((pcic->pcic_config_space_data = 342 if ((pcic->pcic_config_space_data =
343 ioremap(regs[3].phys_addr, regs[3].reg_size * 2)) == 0) { 343 ioremap(regs[3].phys_addr, regs[3].reg_size * 2)) == 0) {
344 prom_printf("PCIC: Error, cannot map" 344 prom_printf("PCIC: Error, cannot map "
345 "PCI Configuration Space Data.\n"); 345 "PCI Configuration Space Data.\n");
346 prom_halt(); 346 prom_halt();
347 } 347 }
@@ -518,8 +518,8 @@ static void pcic_map_pci_device(struct linux_pcic *pcic,
518 * board in a PCI slot. We must remap it 518 * board in a PCI slot. We must remap it
519 * under 64K but it is not done yet. XXX 519 * under 64K but it is not done yet. XXX
520 */ 520 */
521 printk("PCIC: Skipping I/O space at 0x%lx," 521 printk("PCIC: Skipping I/O space at 0x%lx, "
522 "this will Oops if a driver attaches;" 522 "this will Oops if a driver attaches "
523 "device '%s' at %02x:%02x)\n", address, 523 "device '%s' at %02x:%02x)\n", address,
524 namebuf, dev->bus->number, dev->devfn); 524 namebuf, dev->bus->number, dev->devfn);
525 } 525 }
diff --git a/arch/sparc64/defconfig b/arch/sparc64/defconfig
index 22734ac08c8a..f62d9f6c5e2a 100644
--- a/arch/sparc64/defconfig
+++ b/arch/sparc64/defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.24-rc1 3# Linux kernel version: 2.6.24-rc4
4# Wed Oct 31 15:36:47 2007 4# Tue Dec 4 00:37:59 2007
5# 5#
6CONFIG_SPARC=y 6CONFIG_SPARC=y
7CONFIG_SPARC64=y 7CONFIG_SPARC64=y
@@ -47,6 +47,7 @@ CONFIG_POSIX_MQUEUE=y
47# CONFIG_BSD_PROCESS_ACCT is not set 47# CONFIG_BSD_PROCESS_ACCT is not set
48# CONFIG_TASKSTATS is not set 48# CONFIG_TASKSTATS is not set
49# CONFIG_USER_NS is not set 49# CONFIG_USER_NS is not set
50# CONFIG_PID_NS is not set
50# CONFIG_AUDIT is not set 51# CONFIG_AUDIT is not set
51# CONFIG_IKCONFIG is not set 52# CONFIG_IKCONFIG is not set
52CONFIG_LOG_BUF_SHIFT=18 53CONFIG_LOG_BUF_SHIFT=18
@@ -154,6 +155,7 @@ CONFIG_PCI_DOMAINS=y
154CONFIG_PCI_SYSCALL=y 155CONFIG_PCI_SYSCALL=y
155CONFIG_ARCH_SUPPORTS_MSI=y 156CONFIG_ARCH_SUPPORTS_MSI=y
156CONFIG_PCI_MSI=y 157CONFIG_PCI_MSI=y
158# CONFIG_PCI_LEGACY is not set
157# CONFIG_PCI_DEBUG is not set 159# CONFIG_PCI_DEBUG is not set
158CONFIG_SUN_OPENPROMFS=m 160CONFIG_SUN_OPENPROMFS=m
159CONFIG_SPARC32_COMPAT=y 161CONFIG_SPARC32_COMPAT=y
@@ -359,7 +361,6 @@ CONFIG_IDE_GENERIC=y
359CONFIG_BLK_DEV_IDEPCI=y 361CONFIG_BLK_DEV_IDEPCI=y
360# CONFIG_IDEPCI_SHARE_IRQ is not set 362# CONFIG_IDEPCI_SHARE_IRQ is not set
361CONFIG_IDEPCI_PCIBUS_ORDER=y 363CONFIG_IDEPCI_PCIBUS_ORDER=y
362# CONFIG_BLK_DEV_OFFBOARD is not set
363# CONFIG_BLK_DEV_GENERIC is not set 364# CONFIG_BLK_DEV_GENERIC is not set
364# CONFIG_BLK_DEV_OPTI621 is not set 365# CONFIG_BLK_DEV_OPTI621 is not set
365CONFIG_BLK_DEV_IDEDMA_PCI=y 366CONFIG_BLK_DEV_IDEDMA_PCI=y
@@ -584,7 +585,6 @@ CONFIG_NIU=m
584# CONFIG_USB_KAWETH is not set 585# CONFIG_USB_KAWETH is not set
585# CONFIG_USB_PEGASUS is not set 586# CONFIG_USB_PEGASUS is not set
586# CONFIG_USB_RTL8150 is not set 587# CONFIG_USB_RTL8150 is not set
587# CONFIG_USB_USBNET_MII is not set
588# CONFIG_USB_USBNET is not set 588# CONFIG_USB_USBNET is not set
589# CONFIG_WAN is not set 589# CONFIG_WAN is not set
590# CONFIG_FDDI is not set 590# CONFIG_FDDI is not set
@@ -780,6 +780,7 @@ CONFIG_HWMON=y
780# CONFIG_SENSORS_ADT7470 is not set 780# CONFIG_SENSORS_ADT7470 is not set
781# CONFIG_SENSORS_ATXP1 is not set 781# CONFIG_SENSORS_ATXP1 is not set
782# CONFIG_SENSORS_DS1621 is not set 782# CONFIG_SENSORS_DS1621 is not set
783# CONFIG_SENSORS_I5K_AMB is not set
783# CONFIG_SENSORS_F71805F is not set 784# CONFIG_SENSORS_F71805F is not set
784# CONFIG_SENSORS_F71882FG is not set 785# CONFIG_SENSORS_F71882FG is not set
785# CONFIG_SENSORS_F75375S is not set 786# CONFIG_SENSORS_F75375S is not set
diff --git a/arch/sparc64/kernel/isa.c b/arch/sparc64/kernel/isa.c
index 0f19dce1c905..b5f7b354084f 100644
--- a/arch/sparc64/kernel/isa.c
+++ b/arch/sparc64/kernel/isa.c
@@ -155,6 +155,7 @@ void __init isa_init(void)
155 isa_br = kzalloc(sizeof(*isa_br), GFP_KERNEL); 155 isa_br = kzalloc(sizeof(*isa_br), GFP_KERNEL);
156 if (!isa_br) { 156 if (!isa_br) {
157 printk(KERN_DEBUG "isa: cannot allocate sparc_isa_bridge"); 157 printk(KERN_DEBUG "isa: cannot allocate sparc_isa_bridge");
158 pci_dev_put(pdev);
158 return; 159 return;
159 } 160 }
160 161
@@ -168,6 +169,7 @@ void __init isa_init(void)
168 printk(KERN_DEBUG "isa: device registration error for %s!\n", 169 printk(KERN_DEBUG "isa: device registration error for %s!\n",
169 dp->path_component_name); 170 dp->path_component_name);
170 kfree(isa_br); 171 kfree(isa_br);
172 pci_dev_put(pdev);
171 return; 173 return;
172 } 174 }
173 175
diff --git a/arch/sparc64/kernel/ldc.c b/arch/sparc64/kernel/ldc.c
index 217478a94128..63969f610284 100644
--- a/arch/sparc64/kernel/ldc.c
+++ b/arch/sparc64/kernel/ldc.c
@@ -2338,6 +2338,7 @@ static int __init ldc_init(void)
2338 unsigned long major, minor; 2338 unsigned long major, minor;
2339 struct mdesc_handle *hp; 2339 struct mdesc_handle *hp;
2340 const u64 *v; 2340 const u64 *v;
2341 int err;
2341 u64 mp; 2342 u64 mp;
2342 2343
2343 hp = mdesc_grab(); 2344 hp = mdesc_grab();
@@ -2345,29 +2346,33 @@ static int __init ldc_init(void)
2345 return -ENODEV; 2346 return -ENODEV;
2346 2347
2347 mp = mdesc_node_by_name(hp, MDESC_NODE_NULL, "platform"); 2348 mp = mdesc_node_by_name(hp, MDESC_NODE_NULL, "platform");
2349 err = -ENODEV;
2348 if (mp == MDESC_NODE_NULL) 2350 if (mp == MDESC_NODE_NULL)
2349 return -ENODEV; 2351 goto out;
2350 2352
2351 v = mdesc_get_property(hp, mp, "domaining-enabled", NULL); 2353 v = mdesc_get_property(hp, mp, "domaining-enabled", NULL);
2352 if (!v) 2354 if (!v)
2353 return -ENODEV; 2355 goto out;
2354 2356
2355 major = 1; 2357 major = 1;
2356 minor = 0; 2358 minor = 0;
2357 if (sun4v_hvapi_register(HV_GRP_LDOM, major, &minor)) { 2359 if (sun4v_hvapi_register(HV_GRP_LDOM, major, &minor)) {
2358 printk(KERN_INFO PFX "Could not register LDOM hvapi.\n"); 2360 printk(KERN_INFO PFX "Could not register LDOM hvapi.\n");
2359 return -ENODEV; 2361 goto out;
2360 } 2362 }
2361 2363
2362 printk(KERN_INFO "%s", version); 2364 printk(KERN_INFO "%s", version);
2363 2365
2364 if (!*v) { 2366 if (!*v) {
2365 printk(KERN_INFO PFX "Domaining disabled.\n"); 2367 printk(KERN_INFO PFX "Domaining disabled.\n");
2366 return -ENODEV; 2368 goto out;
2367 } 2369 }
2368 ldom_domaining_enabled = 1; 2370 ldom_domaining_enabled = 1;
2371 err = 0;
2369 2372
2370 return 0; 2373out:
2374 mdesc_release(hp);
2375 return err;
2371} 2376}
2372 2377
2373core_initcall(ldc_init); 2378core_initcall(ldc_init);
diff --git a/arch/sparc64/kernel/pci_sun4v.c b/arch/sparc64/kernel/pci_sun4v.c
index 8c4875bdb4a8..e587a372f3fe 100644
--- a/arch/sparc64/kernel/pci_sun4v.c
+++ b/arch/sparc64/kernel/pci_sun4v.c
@@ -1022,6 +1022,10 @@ void __init sun4v_pci_init(struct device_node *dp, char *model_name)
1022 } 1022 }
1023 1023
1024 prop = of_find_property(dp, "reg", NULL); 1024 prop = of_find_property(dp, "reg", NULL);
1025 if (!prop) {
1026 prom_printf("SUN4V_PCI: Could not find config registers\n");
1027 prom_halt();
1028 }
1025 regs = prop->value; 1029 regs = prop->value;
1026 1030
1027 devhandle = (regs->phys_addr >> 32UL) & 0x0fffffff; 1031 devhandle = (regs->phys_addr >> 32UL) & 0x0fffffff;
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c
index 7cd8d94df0dc..894b506f9636 100644
--- a/arch/sparc64/kernel/smp.c
+++ b/arch/sparc64/kernel/smp.c
@@ -236,8 +236,9 @@ void smp_synchronize_tick_client(void)
236 t[i].rt, t[i].master, t[i].diff, t[i].lat); 236 t[i].rt, t[i].master, t[i].diff, t[i].lat);
237#endif 237#endif
238 238
239 printk(KERN_INFO "CPU %d: synchronized TICK with master CPU (last diff %ld cycles," 239 printk(KERN_INFO "CPU %d: synchronized TICK with master CPU "
240 "maxerr %lu cycles)\n", smp_processor_id(), delta, rt); 240 "(last diff %ld cycles, maxerr %lu cycles)\n",
241 smp_processor_id(), delta, rt);
241} 242}
242 243
243static void smp_start_sync_tick_client(int cpu); 244static void smp_start_sync_tick_client(int cpu);
diff --git a/kernel/sysctl_check.c b/kernel/sysctl_check.c
index 6972f26c65f7..bed939f82c31 100644
--- a/kernel/sysctl_check.c
+++ b/kernel/sysctl_check.c
@@ -96,7 +96,7 @@ static struct trans_ctl_table trans_kern_table[] = {
96 96
97 { KERN_PTY, "pty", trans_pty_table }, 97 { KERN_PTY, "pty", trans_pty_table },
98 { KERN_NGROUPS_MAX, "ngroups_max" }, 98 { KERN_NGROUPS_MAX, "ngroups_max" },
99 { KERN_SPARC_SCONS_PWROFF, "scons_poweroff" }, 99 { KERN_SPARC_SCONS_PWROFF, "scons-poweroff" },
100 { KERN_HZ_TIMER, "hz_timer" }, 100 { KERN_HZ_TIMER, "hz_timer" },
101 { KERN_UNKNOWN_NMI_PANIC, "unknown_nmi_panic" }, 101 { KERN_UNKNOWN_NMI_PANIC, "unknown_nmi_panic" },
102 { KERN_BOOTLOADER_TYPE, "bootloader_type" }, 102 { KERN_BOOTLOADER_TYPE, "bootloader_type" },