Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'for-v3.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux

Pull build fixes for less mainstream architectures from Paul Gortmaker:
"These are fixes for frv(1), blackfin(2), powerpc(1) and xtensa(4).

Fortunately the touches are nearly all specific to files just used by
the arch in question. The two touches to shared/common files
[kernel/irq/debug.h and drivers/pci/Makefile] are trivial to assess as
no risk to anyone.

Half of them relate to xtensa directly. It was only when I fixed the
last xtensa issue that I realized that the arch has been broken for a
significant time, and isn't a specific v3.4 regression. So if you
wanted, we could leave xtensa lying bleeding in the street for a
couple more weeks and queue those for 3.5. But given they are no risk
to anyone outside of xtensa, I figured to just leave them in.

If you are OK with taking the xtensa fixes, then please pull to get:

- one last implicit include uncovered by system.h that is in a file
specific to just one powerpc defconfig. (I'd sync'd with BenH).

- fix an oversight in the PCI makefile where shared code wasn't being
compiled for ARCH=frv

- fix a missing include for GPIO in blackfin framebuffer.

- audit and tag endif in blackfin ezkit board file, in order to find
and fix the misplaced endif masking a block of code.

- fix irq/debug.h choice of temporary macro names to be more internal
so they don't conflict with names used by xtensa.

- fix a reference to an undeclared local var in xtensa's signal.c

- fix an implicit bug.h usage in xtensa's asm/io.h uncovered by my
removing bug.h from kernel.h

- fix xtensa to properly indicate it is using asm-generic/hardirq.h
in order to resolve the link error - undefined ack_bad_irq

The xtensa still fails final link as my latest binutils does something
evil when ld forward-relocates unlikely() blocks, but in theory people
who have older/valid toolchains could now use the thing."

* 'for-v3.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
xtensa: fix build fail on undefined ack_bad_irq
blackfin: fix ifdef fustercluck in mach-bf538/boards/ezkit.c
blackfin: fix compile error in bfin-lq035q1-fb.c
pci: frv architecture needs generic setup-bus infrastructure
irq: hide debug macros so they don't collide with others.
xtensa: fix build error in xtensa/include/asm/io.h
xtensa: fix build failure in xtensa/kernel/signal.c
powerpc: fix system.h fallout in sysdev/scom.c [chroma_defconfig]

+50 -49
+26 -27
arch/blackfin/mach-bf538/boards/ezkit.c
··· 38 38 .name = "rtc-bfin", 39 39 .id = -1, 40 40 }; 41 - #endif 41 + #endif /* CONFIG_RTC_DRV_BFIN */ 42 42 43 43 #if defined(CONFIG_SERIAL_BFIN) || defined(CONFIG_SERIAL_BFIN_MODULE) 44 44 #ifdef CONFIG_SERIAL_BFIN_UART0 ··· 100 100 .platform_data = &bfin_uart0_peripherals, /* Passed to driver */ 101 101 }, 102 102 }; 103 - #endif 103 + #endif /* CONFIG_SERIAL_BFIN_UART0 */ 104 104 #ifdef CONFIG_SERIAL_BFIN_UART1 105 105 static struct resource bfin_uart1_resources[] = { 106 106 { ··· 148 148 .platform_data = &bfin_uart1_peripherals, /* Passed to driver */ 149 149 }, 150 150 }; 151 - #endif 151 + #endif /* CONFIG_SERIAL_BFIN_UART1 */ 152 152 #ifdef CONFIG_SERIAL_BFIN_UART2 153 153 static struct resource bfin_uart2_resources[] = { 154 154 { ··· 196 196 .platform_data = &bfin_uart2_peripherals, /* Passed to driver */ 197 197 }, 198 198 }; 199 - #endif 200 - #endif 199 + #endif /* CONFIG_SERIAL_BFIN_UART2 */ 200 + #endif /* CONFIG_SERIAL_BFIN */ 201 201 202 202 #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) 203 203 #ifdef CONFIG_BFIN_SIR0 ··· 224 224 .num_resources = ARRAY_SIZE(bfin_sir0_resources), 225 225 .resource = bfin_sir0_resources, 226 226 }; 227 - #endif 227 + #endif /* CONFIG_BFIN_SIR0 */ 228 228 #ifdef CONFIG_BFIN_SIR1 229 229 static struct resource bfin_sir1_resources[] = { 230 230 { ··· 249 249 .num_resources = ARRAY_SIZE(bfin_sir1_resources), 250 250 .resource = bfin_sir1_resources, 251 251 }; 252 - #endif 252 + #endif /* CONFIG_BFIN_SIR1 */ 253 253 #ifdef CONFIG_BFIN_SIR2 254 254 static struct resource bfin_sir2_resources[] = { 255 255 { ··· 274 274 .num_resources = ARRAY_SIZE(bfin_sir2_resources), 275 275 .resource = bfin_sir2_resources, 276 276 }; 277 - #endif 278 - #endif 277 + #endif /* CONFIG_BFIN_SIR2 */ 278 + #endif /* CONFIG_BFIN_SIR */ 279 279 280 280 #if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE) 281 281 #ifdef CONFIG_SERIAL_BFIN_SPORT0_UART ··· 311 311 .platform_data = &bfin_sport0_peripherals, /* Passed to driver */ 312 312 }, 313 313 }; 314 - #endif 314 + #endif /* CONFIG_SERIAL_BFIN_SPORT0_UART */ 315 315 #ifdef CONFIG_SERIAL_BFIN_SPORT1_UART 316 316 static struct resource bfin_sport1_uart_resources[] = { 317 317 { ··· 345 345 .platform_data = &bfin_sport1_peripherals, /* Passed to driver */ 346 346 }, 347 347 }; 348 - #endif 348 + #endif /* CONFIG_SERIAL_BFIN_SPORT1_UART */ 349 349 #ifdef CONFIG_SERIAL_BFIN_SPORT2_UART 350 350 static struct resource bfin_sport2_uart_resources[] = { 351 351 { ··· 379 379 .platform_data = &bfin_sport2_peripherals, /* Passed to driver */ 380 380 }, 381 381 }; 382 - #endif 382 + #endif /* CONFIG_SERIAL_BFIN_SPORT2_UART */ 383 383 #ifdef CONFIG_SERIAL_BFIN_SPORT3_UART 384 384 static struct resource bfin_sport3_uart_resources[] = { 385 385 { ··· 413 413 .platform_data = &bfin_sport3_peripherals, /* Passed to driver */ 414 414 }, 415 415 }; 416 - #endif 417 - #endif 416 + #endif /* CONFIG_SERIAL_BFIN_SPORT3_UART */ 417 + #endif /* CONFIG_SERIAL_BFIN_SPORT */ 418 418 419 419 #if defined(CONFIG_CAN_BFIN) || defined(CONFIG_CAN_BFIN_MODULE) 420 420 static unsigned short bfin_can_peripherals[] = { ··· 452 452 .platform_data = &bfin_can_peripherals, /* Passed to driver */ 453 453 }, 454 454 }; 455 - #endif 455 + #endif /* CONFIG_CAN_BFIN */ 456 456 457 457 /* 458 458 * USB-LAN EzExtender board ··· 488 488 .platform_data = &smc91x_info, 489 489 }, 490 490 }; 491 - #endif 491 + #endif /* CONFIG_SMC91X */ 492 492 493 493 #if defined(CONFIG_SPI_BFIN5XX) || defined(CONFIG_SPI_BFIN5XX_MODULE) 494 494 /* all SPI peripherals info goes here */ ··· 518 518 static struct bfin5xx_spi_chip spi_flash_chip_info = { 519 519 .enable_dma = 0, /* use dma transfer with this chip*/ 520 520 }; 521 - #endif 521 + #endif /* CONFIG_MTD_M25P80 */ 522 + #endif /* CONFIG_SPI_BFIN5XX */ 522 523 523 524 #if defined(CONFIG_TOUCHSCREEN_AD7879) || defined(CONFIG_TOUCHSCREEN_AD7879_MODULE) 524 525 #include <linux/spi/ad7879.h> ··· 536 535 .gpio_export = 1, /* Export GPIO to gpiolib */ 537 536 .gpio_base = -1, /* Dynamic allocation */ 538 537 }; 539 - #endif 538 + #endif /* CONFIG_TOUCHSCREEN_AD7879 */ 540 539 541 540 #if defined(CONFIG_FB_BFIN_LQ035Q1) || defined(CONFIG_FB_BFIN_LQ035Q1_MODULE) 542 541 #include <asm/bfin-lq035q1.h> ··· 565 564 .platform_data = &bfin_lq035q1_data, 566 565 }, 567 566 }; 568 - #endif 567 + #endif /* CONFIG_FB_BFIN_LQ035Q1 */ 569 568 570 569 static struct spi_board_info bf538_spi_board_info[] __initdata = { 571 570 #if defined(CONFIG_MTD_M25P80) \ ··· 580 579 .controller_data = &spi_flash_chip_info, 581 580 .mode = SPI_MODE_3, 582 581 }, 583 - #endif 582 + #endif /* CONFIG_MTD_M25P80 */ 584 583 #if defined(CONFIG_TOUCHSCREEN_AD7879_SPI) || defined(CONFIG_TOUCHSCREEN_AD7879_SPI_MODULE) 585 584 { 586 585 .modalias = "ad7879", ··· 591 590 .chip_select = 1, 592 591 .mode = SPI_CPHA | SPI_CPOL, 593 592 }, 594 - #endif 593 + #endif /* CONFIG_TOUCHSCREEN_AD7879_SPI */ 595 594 #if defined(CONFIG_FB_BFIN_LQ035Q1) || defined(CONFIG_FB_BFIN_LQ035Q1_MODULE) 596 595 { 597 596 .modalias = "bfin-lq035q1-spi", ··· 600 599 .chip_select = 2, 601 600 .mode = SPI_CPHA | SPI_CPOL, 602 601 }, 603 - #endif 602 + #endif /* CONFIG_FB_BFIN_LQ035Q1 */ 604 603 #if defined(CONFIG_SPI_SPIDEV) || defined(CONFIG_SPI_SPIDEV_MODULE) 605 604 { 606 605 .modalias = "spidev", ··· 608 607 .bus_num = 0, 609 608 .chip_select = 1, 610 609 }, 611 - #endif 610 + #endif /* CONFIG_SPI_SPIDEV */ 612 611 }; 613 612 614 613 /* SPI (0) */ ··· 717 716 }, 718 717 }; 719 718 720 - #endif /* spi master and devices */ 721 - 722 719 #if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE) 723 720 static struct resource bfin_twi0_resource[] = { 724 721 [0] = { ··· 758 759 .num_resources = ARRAY_SIZE(bfin_twi1_resource), 759 760 .resource = bfin_twi1_resource, 760 761 }; 761 - #endif 762 - #endif 762 + #endif /* CONFIG_BF542 */ 763 + #endif /* CONFIG_I2C_BLACKFIN_TWI */ 763 764 764 765 #if defined(CONFIG_KEYBOARD_GPIO) || defined(CONFIG_KEYBOARD_GPIO_MODULE) 765 766 #include <linux/gpio_keys.h>
+1
arch/powerpc/sysdev/scom.c
··· 22 22 #include <linux/debugfs.h> 23 23 #include <linux/slab.h> 24 24 #include <linux/export.h> 25 + #include <asm/debug.h> 25 26 #include <asm/prom.h> 26 27 #include <asm/scom.h> 27 28
-3
arch/xtensa/include/asm/hardirq.h
··· 11 11 #ifndef _XTENSA_HARDIRQ_H 12 12 #define _XTENSA_HARDIRQ_H 13 13 14 - void ack_bad_irq(unsigned int irq); 15 - #define ack_bad_irq ack_bad_irq 16 - 17 14 #include <asm-generic/hardirq.h> 18 15 19 16 #endif /* _XTENSA_HARDIRQ_H */
+1
arch/xtensa/include/asm/io.h
··· 14 14 #ifdef __KERNEL__ 15 15 #include <asm/byteorder.h> 16 16 #include <asm/page.h> 17 + #include <linux/bug.h> 17 18 #include <linux/kernel.h> 18 19 19 20 #include <linux/types.h>
+1
arch/xtensa/kernel/signal.c
··· 496 496 signr = get_signal_to_deliver(&info, &ka, regs, NULL); 497 497 498 498 if (signr > 0) { 499 + int ret; 499 500 500 501 /* Are we from a system call? */ 501 502
+1
drivers/pci/Makefile
··· 42 42 obj-$(CONFIG_PARISC) += setup-bus.o 43 43 obj-$(CONFIG_SUPERH) += setup-bus.o setup-irq.o 44 44 obj-$(CONFIG_PPC) += setup-bus.o 45 + obj-$(CONFIG_FRV) += setup-bus.o 45 46 obj-$(CONFIG_MIPS) += setup-bus.o setup-irq.o 46 47 obj-$(CONFIG_X86_VISWS) += setup-irq.o 47 48 obj-$(CONFIG_MN10300) += setup-bus.o
+1
drivers/video/bfin-lq035q1-fb.c
··· 13 13 #include <linux/errno.h> 14 14 #include <linux/string.h> 15 15 #include <linux/fb.h> 16 + #include <linux/gpio.h> 16 17 #include <linux/slab.h> 17 18 #include <linux/init.h> 18 19 #include <linux/types.h>
+19 -19
kernel/irq/debug.h
··· 4 4 5 5 #include <linux/kallsyms.h> 6 6 7 - #define P(f) if (desc->status_use_accessors & f) printk("%14s set\n", #f) 8 - #define PS(f) if (desc->istate & f) printk("%14s set\n", #f) 7 + #define ___P(f) if (desc->status_use_accessors & f) printk("%14s set\n", #f) 8 + #define ___PS(f) if (desc->istate & f) printk("%14s set\n", #f) 9 9 /* FIXME */ 10 - #define PD(f) do { } while (0) 10 + #define ___PD(f) do { } while (0) 11 11 12 12 static inline void print_irq_desc(unsigned int irq, struct irq_desc *desc) 13 13 { ··· 23 23 print_symbol("%s\n", (unsigned long)desc->action->handler); 24 24 } 25 25 26 - P(IRQ_LEVEL); 27 - P(IRQ_PER_CPU); 28 - P(IRQ_NOPROBE); 29 - P(IRQ_NOREQUEST); 30 - P(IRQ_NOTHREAD); 31 - P(IRQ_NOAUTOEN); 26 + ___P(IRQ_LEVEL); 27 + ___P(IRQ_PER_CPU); 28 + ___P(IRQ_NOPROBE); 29 + ___P(IRQ_NOREQUEST); 30 + ___P(IRQ_NOTHREAD); 31 + ___P(IRQ_NOAUTOEN); 32 32 33 - PS(IRQS_AUTODETECT); 34 - PS(IRQS_REPLAY); 35 - PS(IRQS_WAITING); 36 - PS(IRQS_PENDING); 33 + ___PS(IRQS_AUTODETECT); 34 + ___PS(IRQS_REPLAY); 35 + ___PS(IRQS_WAITING); 36 + ___PS(IRQS_PENDING); 37 37 38 - PD(IRQS_INPROGRESS); 39 - PD(IRQS_DISABLED); 40 - PD(IRQS_MASKED); 38 + ___PD(IRQS_INPROGRESS); 39 + ___PD(IRQS_DISABLED); 40 + ___PD(IRQS_MASKED); 41 41 } 42 42 43 - #undef P 44 - #undef PS 45 - #undef PD 43 + #undef ___P 44 + #undef ___PS 45 + #undef ___PD