diff options
Diffstat (limited to 'arch/tile')
-rw-r--r-- | arch/tile/configs/tilegx_defconfig | 1 | ||||
-rw-r--r-- | arch/tile/configs/tilepro_defconfig | 1 | ||||
-rw-r--r-- | arch/tile/include/asm/Kbuild | 1 | ||||
-rw-r--r-- | arch/tile/include/asm/io.h | 4 | ||||
-rw-r--r-- | arch/tile/kernel/early_printk.c | 19 | ||||
-rw-r--r-- | arch/tile/kernel/pci_gx.c | 8 | ||||
-rw-r--r-- | arch/tile/kernel/setup.c | 45 |
7 files changed, 41 insertions, 38 deletions
diff --git a/arch/tile/configs/tilegx_defconfig b/arch/tile/configs/tilegx_defconfig index 91de7dd7427f..37dc9364c4a1 100644 --- a/arch/tile/configs/tilegx_defconfig +++ b/arch/tile/configs/tilegx_defconfig | |||
@@ -218,7 +218,6 @@ CONFIG_MACVLAN=m | |||
218 | CONFIG_MACVTAP=m | 218 | CONFIG_MACVTAP=m |
219 | CONFIG_NETCONSOLE=m | 219 | CONFIG_NETCONSOLE=m |
220 | CONFIG_NETCONSOLE_DYNAMIC=y | 220 | CONFIG_NETCONSOLE_DYNAMIC=y |
221 | CONFIG_NETPOLL_TRAP=y | ||
222 | CONFIG_TUN=y | 221 | CONFIG_TUN=y |
223 | CONFIG_VETH=m | 222 | CONFIG_VETH=m |
224 | CONFIG_NET_DSA_MV88E6060=y | 223 | CONFIG_NET_DSA_MV88E6060=y |
diff --git a/arch/tile/configs/tilepro_defconfig b/arch/tile/configs/tilepro_defconfig index c7702b7ab7a5..76a2781dec2c 100644 --- a/arch/tile/configs/tilepro_defconfig +++ b/arch/tile/configs/tilepro_defconfig | |||
@@ -337,7 +337,6 @@ CONFIG_MACVLAN=m | |||
337 | CONFIG_MACVTAP=m | 337 | CONFIG_MACVTAP=m |
338 | CONFIG_NETCONSOLE=m | 338 | CONFIG_NETCONSOLE=m |
339 | CONFIG_NETCONSOLE_DYNAMIC=y | 339 | CONFIG_NETCONSOLE_DYNAMIC=y |
340 | CONFIG_NETPOLL_TRAP=y | ||
341 | CONFIG_TUN=y | 340 | CONFIG_TUN=y |
342 | CONFIG_VETH=m | 341 | CONFIG_VETH=m |
343 | CONFIG_NET_DSA_MV88E6060=y | 342 | CONFIG_NET_DSA_MV88E6060=y |
diff --git a/arch/tile/include/asm/Kbuild b/arch/tile/include/asm/Kbuild index e6462b8a6284..b4c488b65745 100644 --- a/arch/tile/include/asm/Kbuild +++ b/arch/tile/include/asm/Kbuild | |||
@@ -11,7 +11,6 @@ generic-y += errno.h | |||
11 | generic-y += exec.h | 11 | generic-y += exec.h |
12 | generic-y += fb.h | 12 | generic-y += fb.h |
13 | generic-y += fcntl.h | 13 | generic-y += fcntl.h |
14 | generic-y += hash.h | ||
15 | generic-y += hw_irq.h | 14 | generic-y += hw_irq.h |
16 | generic-y += ioctl.h | 15 | generic-y += ioctl.h |
17 | generic-y += ioctls.h | 16 | generic-y += ioctls.h |
diff --git a/arch/tile/include/asm/io.h b/arch/tile/include/asm/io.h index 4353539fb887..6ef4ecab1df2 100644 --- a/arch/tile/include/asm/io.h +++ b/arch/tile/include/asm/io.h | |||
@@ -241,6 +241,10 @@ static inline void writeq(u64 val, unsigned long addr) | |||
241 | #define readw_relaxed readw | 241 | #define readw_relaxed readw |
242 | #define readl_relaxed readl | 242 | #define readl_relaxed readl |
243 | #define readq_relaxed readq | 243 | #define readq_relaxed readq |
244 | #define writeb_relaxed writeb | ||
245 | #define writew_relaxed writew | ||
246 | #define writel_relaxed writel | ||
247 | #define writeq_relaxed writeq | ||
244 | 248 | ||
245 | #define ioread8 readb | 249 | #define ioread8 readb |
246 | #define ioread16 readw | 250 | #define ioread16 readw |
diff --git a/arch/tile/kernel/early_printk.c b/arch/tile/kernel/early_printk.c index b608e00e7f6d..aefb2c086726 100644 --- a/arch/tile/kernel/early_printk.c +++ b/arch/tile/kernel/early_printk.c | |||
@@ -43,13 +43,20 @@ static struct console early_hv_console = { | |||
43 | 43 | ||
44 | void early_panic(const char *fmt, ...) | 44 | void early_panic(const char *fmt, ...) |
45 | { | 45 | { |
46 | va_list ap; | 46 | struct va_format vaf; |
47 | va_list args; | ||
48 | |||
47 | arch_local_irq_disable_all(); | 49 | arch_local_irq_disable_all(); |
48 | va_start(ap, fmt); | 50 | |
49 | early_printk("Kernel panic - not syncing: "); | 51 | va_start(args, fmt); |
50 | early_vprintk(fmt, ap); | 52 | |
51 | early_printk("\n"); | 53 | vaf.fmt = fmt; |
52 | va_end(ap); | 54 | vaf.va = &args; |
55 | |||
56 | early_printk("Kernel panic - not syncing: %pV", &vaf); | ||
57 | |||
58 | va_end(args); | ||
59 | |||
53 | dump_stack(); | 60 | dump_stack(); |
54 | hv_halt(); | 61 | hv_halt(); |
55 | } | 62 | } |
diff --git a/arch/tile/kernel/pci_gx.c b/arch/tile/kernel/pci_gx.c index 47e048e31641..2c95f37ebbed 100644 --- a/arch/tile/kernel/pci_gx.c +++ b/arch/tile/kernel/pci_gx.c | |||
@@ -1441,7 +1441,7 @@ static struct pci_ops tile_cfg_ops = { | |||
1441 | static unsigned int tilegx_msi_startup(struct irq_data *d) | 1441 | static unsigned int tilegx_msi_startup(struct irq_data *d) |
1442 | { | 1442 | { |
1443 | if (d->msi_desc) | 1443 | if (d->msi_desc) |
1444 | unmask_msi_irq(d); | 1444 | pci_msi_unmask_irq(d); |
1445 | 1445 | ||
1446 | return 0; | 1446 | return 0; |
1447 | } | 1447 | } |
@@ -1453,14 +1453,14 @@ static void tilegx_msi_ack(struct irq_data *d) | |||
1453 | 1453 | ||
1454 | static void tilegx_msi_mask(struct irq_data *d) | 1454 | static void tilegx_msi_mask(struct irq_data *d) |
1455 | { | 1455 | { |
1456 | mask_msi_irq(d); | 1456 | pci_msi_mask_irq(d); |
1457 | __insn_mtspr(SPR_IPI_MASK_SET_K, 1UL << d->irq); | 1457 | __insn_mtspr(SPR_IPI_MASK_SET_K, 1UL << d->irq); |
1458 | } | 1458 | } |
1459 | 1459 | ||
1460 | static void tilegx_msi_unmask(struct irq_data *d) | 1460 | static void tilegx_msi_unmask(struct irq_data *d) |
1461 | { | 1461 | { |
1462 | __insn_mtspr(SPR_IPI_MASK_RESET_K, 1UL << d->irq); | 1462 | __insn_mtspr(SPR_IPI_MASK_RESET_K, 1UL << d->irq); |
1463 | unmask_msi_irq(d); | 1463 | pci_msi_unmask_irq(d); |
1464 | } | 1464 | } |
1465 | 1465 | ||
1466 | static struct irq_chip tilegx_msi_chip = { | 1466 | static struct irq_chip tilegx_msi_chip = { |
@@ -1573,7 +1573,7 @@ int arch_setup_msi_irq(struct pci_dev *pdev, struct msi_desc *desc) | |||
1573 | msg.address_hi = msi_addr >> 32; | 1573 | msg.address_hi = msi_addr >> 32; |
1574 | msg.address_lo = msi_addr & 0xffffffff; | 1574 | msg.address_lo = msi_addr & 0xffffffff; |
1575 | 1575 | ||
1576 | write_msi_msg(irq, &msg); | 1576 | pci_write_msi_msg(irq, &msg); |
1577 | irq_set_chip_and_handler(irq, &tilegx_msi_chip, handle_level_irq); | 1577 | irq_set_chip_and_handler(irq, &tilegx_msi_chip, handle_level_irq); |
1578 | irq_set_handler_data(irq, controller); | 1578 | irq_set_handler_data(irq, controller); |
1579 | 1579 | ||
diff --git a/arch/tile/kernel/setup.c b/arch/tile/kernel/setup.c index f183f1c92b4f..864eea69556d 100644 --- a/arch/tile/kernel/setup.c +++ b/arch/tile/kernel/setup.c | |||
@@ -533,11 +533,10 @@ static void __init setup_memory(void) | |||
533 | } | 533 | } |
534 | } | 534 | } |
535 | physpages -= dropped_pages; | 535 | physpages -= dropped_pages; |
536 | pr_warning("Only using %ldMB memory;" | 536 | pr_warn("Only using %ldMB memory - ignoring %ldMB\n", |
537 | " ignoring %ldMB.\n", | 537 | physpages >> (20 - PAGE_SHIFT), |
538 | physpages >> (20 - PAGE_SHIFT), | 538 | dropped_pages >> (20 - PAGE_SHIFT)); |
539 | dropped_pages >> (20 - PAGE_SHIFT)); | 539 | pr_warn("Consider using a larger page size\n"); |
540 | pr_warning("Consider using a larger page size.\n"); | ||
541 | } | 540 | } |
542 | #endif | 541 | #endif |
543 | 542 | ||
@@ -564,9 +563,8 @@ static void __init setup_memory(void) | |||
564 | 563 | ||
565 | #ifndef __tilegx__ | 564 | #ifndef __tilegx__ |
566 | if (node_end_pfn[0] > MAXMEM_PFN) { | 565 | if (node_end_pfn[0] > MAXMEM_PFN) { |
567 | pr_warning("Only using %ldMB LOWMEM.\n", | 566 | pr_warn("Only using %ldMB LOWMEM\n", MAXMEM >> 20); |
568 | MAXMEM>>20); | 567 | pr_warn("Use a HIGHMEM enabled kernel\n"); |
569 | pr_warning("Use a HIGHMEM enabled kernel.\n"); | ||
570 | max_low_pfn = MAXMEM_PFN; | 568 | max_low_pfn = MAXMEM_PFN; |
571 | max_pfn = MAXMEM_PFN; | 569 | max_pfn = MAXMEM_PFN; |
572 | node_end_pfn[0] = MAXMEM_PFN; | 570 | node_end_pfn[0] = MAXMEM_PFN; |
@@ -1109,8 +1107,8 @@ static void __init load_hv_initrd(void) | |||
1109 | fd = hv_fs_findfile((HV_VirtAddr) initramfs_file); | 1107 | fd = hv_fs_findfile((HV_VirtAddr) initramfs_file); |
1110 | if (fd == HV_ENOENT) { | 1108 | if (fd == HV_ENOENT) { |
1111 | if (set_initramfs_file) { | 1109 | if (set_initramfs_file) { |
1112 | pr_warning("No such hvfs initramfs file '%s'\n", | 1110 | pr_warn("No such hvfs initramfs file '%s'\n", |
1113 | initramfs_file); | 1111 | initramfs_file); |
1114 | return; | 1112 | return; |
1115 | } else { | 1113 | } else { |
1116 | /* Try old backwards-compatible name. */ | 1114 | /* Try old backwards-compatible name. */ |
@@ -1123,8 +1121,8 @@ static void __init load_hv_initrd(void) | |||
1123 | stat = hv_fs_fstat(fd); | 1121 | stat = hv_fs_fstat(fd); |
1124 | BUG_ON(stat.size < 0); | 1122 | BUG_ON(stat.size < 0); |
1125 | if (stat.flags & HV_FS_ISDIR) { | 1123 | if (stat.flags & HV_FS_ISDIR) { |
1126 | pr_warning("Ignoring hvfs file '%s': it's a directory.\n", | 1124 | pr_warn("Ignoring hvfs file '%s': it's a directory\n", |
1127 | initramfs_file); | 1125 | initramfs_file); |
1128 | return; | 1126 | return; |
1129 | } | 1127 | } |
1130 | initrd = alloc_bootmem_pages(stat.size); | 1128 | initrd = alloc_bootmem_pages(stat.size); |
@@ -1182,9 +1180,8 @@ static void __init validate_hv(void) | |||
1182 | HV_Topology topology = hv_inquire_topology(); | 1180 | HV_Topology topology = hv_inquire_topology(); |
1183 | BUG_ON(topology.coord.x != 0 || topology.coord.y != 0); | 1181 | BUG_ON(topology.coord.x != 0 || topology.coord.y != 0); |
1184 | if (topology.width != 1 || topology.height != 1) { | 1182 | if (topology.width != 1 || topology.height != 1) { |
1185 | pr_warning("Warning: booting UP kernel on %dx%d grid;" | 1183 | pr_warn("Warning: booting UP kernel on %dx%d grid; will ignore all but first tile\n", |
1186 | " will ignore all but first tile.\n", | 1184 | topology.width, topology.height); |
1187 | topology.width, topology.height); | ||
1188 | } | 1185 | } |
1189 | #endif | 1186 | #endif |
1190 | 1187 | ||
@@ -1205,9 +1202,8 @@ static void __init validate_hv(void) | |||
1205 | * We use a struct cpumask for this, so it must be big enough. | 1202 | * We use a struct cpumask for this, so it must be big enough. |
1206 | */ | 1203 | */ |
1207 | if ((smp_height * smp_width) > nr_cpu_ids) | 1204 | if ((smp_height * smp_width) > nr_cpu_ids) |
1208 | early_panic("Hypervisor %d x %d grid too big for Linux" | 1205 | early_panic("Hypervisor %d x %d grid too big for Linux NR_CPUS %d\n", |
1209 | " NR_CPUS %d\n", smp_height, smp_width, | 1206 | smp_height, smp_width, nr_cpu_ids); |
1210 | nr_cpu_ids); | ||
1211 | #endif | 1207 | #endif |
1212 | 1208 | ||
1213 | /* | 1209 | /* |
@@ -1262,10 +1258,9 @@ static void __init validate_va(void) | |||
1262 | 1258 | ||
1263 | /* Kernel PCs must have their high bit set; see intvec.S. */ | 1259 | /* Kernel PCs must have their high bit set; see intvec.S. */ |
1264 | if ((long)VMALLOC_START >= 0) | 1260 | if ((long)VMALLOC_START >= 0) |
1265 | early_panic( | 1261 | early_panic("Linux VMALLOC region below the 2GB line (%#lx)!\n" |
1266 | "Linux VMALLOC region below the 2GB line (%#lx)!\n" | 1262 | "Reconfigure the kernel with smaller VMALLOC_RESERVE\n", |
1267 | "Reconfigure the kernel with smaller VMALLOC_RESERVE.\n", | 1263 | VMALLOC_START); |
1268 | VMALLOC_START); | ||
1269 | #endif | 1264 | #endif |
1270 | } | 1265 | } |
1271 | 1266 | ||
@@ -1392,7 +1387,7 @@ static void __init setup_cpu_maps(void) | |||
1392 | 1387 | ||
1393 | static int __init dataplane(char *str) | 1388 | static int __init dataplane(char *str) |
1394 | { | 1389 | { |
1395 | pr_warning("WARNING: dataplane support disabled in this kernel\n"); | 1390 | pr_warn("WARNING: dataplane support disabled in this kernel\n"); |
1396 | return 0; | 1391 | return 0; |
1397 | } | 1392 | } |
1398 | 1393 | ||
@@ -1410,8 +1405,8 @@ void __init setup_arch(char **cmdline_p) | |||
1410 | len = hv_get_command_line((HV_VirtAddr) boot_command_line, | 1405 | len = hv_get_command_line((HV_VirtAddr) boot_command_line, |
1411 | COMMAND_LINE_SIZE); | 1406 | COMMAND_LINE_SIZE); |
1412 | if (boot_command_line[0]) | 1407 | if (boot_command_line[0]) |
1413 | pr_warning("WARNING: ignoring dynamic command line \"%s\"\n", | 1408 | pr_warn("WARNING: ignoring dynamic command line \"%s\"\n", |
1414 | boot_command_line); | 1409 | boot_command_line); |
1415 | strlcpy(boot_command_line, builtin_cmdline, COMMAND_LINE_SIZE); | 1410 | strlcpy(boot_command_line, builtin_cmdline, COMMAND_LINE_SIZE); |
1416 | #else | 1411 | #else |
1417 | char *hv_cmdline; | 1412 | char *hv_cmdline; |