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 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
[POWERPC] Remove unused CONFIG_WANT_DEVICE_TREE
[POWERPC] Cell RAS: Remove DEBUG, and add license and copyright
[POWERPC] hvc_rtas_init() must be __init
[POWERPC] free_property() must not be __init
[POWERPC] vdso_do_func_patch{32,64}() must be __init
[POWERPC] Remove generated files on make clean
[POWERPC] Fix arch/ppc compilation - add typedef for pgtable_t
[POWERPC] Wire up new timerfd syscalls
[POWERPC] PS3: Update sys-manager button events
[POWERPC] PS3: Sys-manager code cleanup
[POWERPC] PS3: Use system reboot on restart
[POWERPC] PS3: Fix bootwrapper hang bug
[POWERPC] PS3: Fix reading pm interval in logical performance monitor
[POWERPC] PS3: Fix setting bookmark in logical performance monitor
[POWERPC] Fix DEBUG_PREEMPT warning when warning

+76 -54
-4
arch/powerpc/Kconfig
··· 442 442 443 443 If unsure, say Y. Only embedded should say N here. 444 444 445 - config WANT_DEVICE_TREE 446 - bool 447 - default n 448 - 449 445 endmenu 450 446 451 447 config ISA_DMA_API
+2
arch/powerpc/boot/Makefile
··· 147 147 targets += dtc-src/dtc-parser.tab.c 148 148 targets += dtc-src/dtc-lexer.lex.c 149 149 150 + clean-files += dtc-src/dtc-parser.tab.h 151 + 150 152 ifdef DTC_GENPARSER 151 153 BISON = bison 152 154 FLEX = flex
+1 -1
arch/powerpc/boot/ps3-hvcall.S
··· 145 145 .macro STORE_REGS_5_2 146 146 lwz r11, 16(r1) 147 147 std r4, 0(r11) 148 - lwz r11, 24(r1) 148 + lwz r11, 20(r1) 149 149 std r5, 0(r11) 150 150 .endm 151 151
+2
arch/powerpc/kernel/Makefile
··· 104 104 PHONY += systbl_chk 105 105 systbl_chk: $(src)/systbl_chk.sh $(obj)/systbl_chk.i 106 106 $(call cmd,systbl_chk) 107 + 108 + clean-files := vmlinux.lds
+1 -1
arch/powerpc/kernel/process.c
··· 462 462 current, task_pid_nr(current), current->comm, task_thread_info(current)); 463 463 464 464 #ifdef CONFIG_SMP 465 - printk(" CPU: %d", smp_processor_id()); 465 + printk(" CPU: %d", raw_smp_processor_id()); 466 466 #endif /* CONFIG_SMP */ 467 467 468 468 for (i = 0; i < 32; i++) {
+6 -6
arch/powerpc/kernel/vdso.c
··· 336 336 return sym->st_value - VDSO32_LBASE; 337 337 } 338 338 339 - static int vdso_do_func_patch32(struct lib32_elfinfo *v32, 340 - struct lib64_elfinfo *v64, 341 - const char *orig, const char *fix) 339 + static int __init vdso_do_func_patch32(struct lib32_elfinfo *v32, 340 + struct lib64_elfinfo *v64, 341 + const char *orig, const char *fix) 342 342 { 343 343 Elf32_Sym *sym32_gen, *sym32_fix; 344 344 ··· 433 433 #endif 434 434 } 435 435 436 - static int vdso_do_func_patch64(struct lib32_elfinfo *v32, 437 - struct lib64_elfinfo *v64, 438 - const char *orig, const char *fix) 436 + static int __init vdso_do_func_patch64(struct lib32_elfinfo *v32, 437 + struct lib64_elfinfo *v64, 438 + const char *orig, const char *fix) 439 439 { 440 440 Elf64_Sym *sym64_gen, *sym64_fix; 441 441
-1
arch/powerpc/platforms/512x/Kconfig
··· 13 13 bool "Freescale MPC5121E ADS" 14 14 depends on PPC_MULTIPLATFORM && PPC32 15 15 select DEFAULT_UIMAGE 16 - select WANT_DEVICE_TREE 17 16 select PPC_MPC5121 18 17 help 19 18 This option enables support for the MPC5121E ADS board.
-2
arch/powerpc/platforms/52xx/Kconfig
··· 8 8 bool "Generic support for simple MPC5200 based boards" 9 9 depends on PPC_MPC52xx 10 10 select DEFAULT_UIMAGE 11 - select WANT_DEVICE_TREE 12 11 help 13 12 This option enables support for a simple MPC52xx based boards which 14 13 do not need a custom platform specific setup. Such boards are ··· 34 35 bool "Freescale Lite5200 Eval Board" 35 36 depends on PPC_MPC52xx 36 37 select DEFAULT_UIMAGE 37 - select WANT_DEVICE_TREE 38 38 39 39 config PPC_MPC5200_BUGFIX 40 40 bool "MPC5200 (L25R) bugfix support"
-2
arch/powerpc/platforms/Kconfig
··· 15 15 config PPC_82xx 16 16 bool "Freescale 82xx" 17 17 depends on 6xx 18 - select WANT_DEVICE_TREE 19 18 20 19 config PPC_83xx 21 20 bool "Freescale 83xx" ··· 22 23 select FSL_SOC 23 24 select MPC83xx 24 25 select IPIC 25 - select WANT_DEVICE_TREE 26 26 select FSL_EMB_PERFMON 27 27 28 28 config PPC_86xx
-4
arch/powerpc/platforms/Kconfig.cputype
··· 29 29 bool "Freescale 85xx" 30 30 select E500 31 31 select FSL_SOC 32 - select WANT_DEVICE_TREE 33 32 select MPC85xx 34 33 35 34 config PPC_8xx 36 35 bool "Freescale 8xx" 37 36 select FSL_SOC 38 37 select 8xx 39 - select WANT_DEVICE_TREE 40 38 select PPC_LIB_RHEAP 41 39 42 40 config 40x 43 41 bool "AMCC 40x" 44 42 select PPC_DCR_NATIVE 45 - select WANT_DEVICE_TREE 46 43 select PPC_UDBG_16550 47 44 48 45 config 44x 49 46 bool "AMCC 44x" 50 47 select PPC_DCR_NATIVE 51 - select WANT_DEVICE_TREE 52 48 select PPC_UDBG_16550 53 49 54 50 config E200
+10 -1
arch/powerpc/platforms/cell/ras.c
··· 1 - #define DEBUG 1 + /* 2 + * Copyright 2006-2008, IBM Corporation. 3 + * 4 + * This program is free software; you can redistribute it and/or 5 + * modify it under the terms of the GNU General Public License 6 + * as published by the Free Software Foundation; either version 7 + * 2 of the License, or (at your option) any later version. 8 + */ 9 + 10 + #undef DEBUG 2 11 3 12 #include <linux/types.h> 4 13 #include <linux/kernel.h>
-4
arch/powerpc/platforms/embedded6xx/Kconfig
··· 24 24 select MPIC 25 25 select FSL_SOC 26 26 select PPC_UDBG_16550 if SERIAL_8250 27 - select WANT_DEVICE_TREE 28 27 select MPC10X_OPENPIC 29 28 select MPC10X_BRIDGE 30 29 help ··· 36 37 select TSI108_BRIDGE 37 38 select DEFAULT_UIMAGE 38 39 select PPC_UDBG_16550 39 - select WANT_DEVICE_TREE 40 40 select TSI108_BRIDGE 41 41 help 42 42 Select MPC7448HPC2 if configuring for Freescale MPC7448HPC2 (Taiga) ··· 46 48 depends on EMBEDDED6xx 47 49 select TSI108_BRIDGE 48 50 select PPC_UDBG_16550 49 - select WANT_DEVICE_TREE 50 51 select TSI108_BRIDGE 51 52 help 52 53 Select PPC_HOLLY if configuring for an IBM 750GX/CL Eval ··· 56 59 depends on EMBEDDED6xx 57 60 select MV64X60 58 61 select NOT_COHERENT_CACHE 59 - select WANT_DEVICE_TREE 60 62 help 61 63 This option enables support for the Motorola PrPMC2800 board 62 64
+1 -1
arch/powerpc/platforms/iseries/vio.c
··· 75 75 return np; 76 76 } 77 77 78 - static void __init free_property(struct property *np) 78 + static void free_property(struct property *np) 79 79 { 80 80 kfree(np); 81 81 }
+1 -1
drivers/char/hvc_rtas.c
··· 76 76 .put_chars = hvc_rtas_write_console, 77 77 }; 78 78 79 - static int hvc_rtas_init(void) 79 + static int __init hvc_rtas_init(void) 80 80 { 81 81 struct hvc_struct *hp; 82 82
+12 -10
drivers/ps3/ps3-lpm.c
··· 76 76 * 77 77 * @pm_control: Shadow of the processor's pm_control register. 78 78 * @pm_start_stop: Shadow of the processor's pm_start_stop register. 79 - * @pm_interval: Shadow of the processor's pm_interval register. 80 79 * @group_control: Shadow of the processor's group_control register. 81 80 * @debug_bus_control: Shadow of the processor's debug_bus_control register. 82 81 * ··· 90 91 struct ps3_lpm_shadow_regs { 91 92 u64 pm_control; 92 93 u64 pm_start_stop; 93 - u64 pm_interval; 94 94 u64 group_control; 95 95 u64 debug_bus_control; 96 96 }; ··· 179 181 * includes cycles before the call. 180 182 */ 181 183 182 - asm volatile("or 29, 29, 29;"); /* db10cyc */ 184 + asm volatile("nop;nop;nop;nop;nop;nop;nop;nop;nop;"); 183 185 mtspr(SPRN_BKMK, bookmark); 184 - asm volatile("or 29, 29, 29;"); /* db10cyc */ 186 + asm volatile("nop;nop;nop;nop;nop;nop;nop;nop;nop;"); 185 187 } 186 188 EXPORT_SYMBOL_GPL(ps3_set_bookmark); 187 189 ··· 406 408 case pm_start_stop: 407 409 return lpm_priv->shadow.pm_start_stop; 408 410 case pm_interval: 409 - return lpm_priv->shadow.pm_interval; 411 + result = lv1_set_lpm_interval(lpm_priv->lpm_id, 0, 0, &val); 412 + if (result) { 413 + val = 0; 414 + dev_dbg(sbd_core(), "%s:%u: lv1 set_inteval failed: " 415 + "reg %u, %s\n", __func__, __LINE__, reg, 416 + ps3_result(result)); 417 + } 418 + return (u32)val; 410 419 case group_control: 411 420 return lpm_priv->shadow.group_control; 412 421 case debug_bus_control: ··· 480 475 lpm_priv->shadow.pm_control = val; 481 476 break; 482 477 case pm_interval: 483 - if (val != lpm_priv->shadow.pm_interval) 484 - result = lv1_set_lpm_interval(lpm_priv->lpm_id, val, 485 - PS3_WRITE_PM_MASK, &dummy); 486 - lpm_priv->shadow.pm_interval = val; 478 + result = lv1_set_lpm_interval(lpm_priv->lpm_id, val, 479 + PS3_WRITE_PM_MASK, &dummy); 487 480 break; 488 481 case pm_start_stop: 489 482 if (val != lpm_priv->shadow.pm_start_stop) ··· 1143 1140 1144 1141 lpm_priv->shadow.pm_control = PS3_LPM_SHADOW_REG_INIT; 1145 1142 lpm_priv->shadow.pm_start_stop = PS3_LPM_SHADOW_REG_INIT; 1146 - lpm_priv->shadow.pm_interval = PS3_LPM_SHADOW_REG_INIT; 1147 1143 lpm_priv->shadow.group_control = PS3_LPM_SHADOW_REG_INIT; 1148 1144 lpm_priv->shadow.debug_bus_control = PS3_LPM_SHADOW_REG_INIT; 1149 1145
+31 -13
drivers/ps3/ps3-sys-manager.c
··· 28 28 29 29 #include "vuart.h" 30 30 31 - MODULE_AUTHOR("Sony Corporation"); 32 - MODULE_LICENSE("GPL v2"); 33 - MODULE_DESCRIPTION("PS3 System Manager"); 34 - 35 31 /** 36 32 * ps3_sys_manager - PS3 system manager driver. 37 33 * ··· 138 142 139 143 /** 140 144 * enum ps3_sys_manager_event - External event type, reported by system manager. 141 - * @PS3_SM_EVENT_POWER_PRESSED: payload.value not used. 145 + * @PS3_SM_EVENT_POWER_PRESSED: payload.value = 146 + * enum ps3_sys_manager_button_event. 142 147 * @PS3_SM_EVENT_POWER_RELEASED: payload.value = time pressed in millisec. 143 - * @PS3_SM_EVENT_RESET_PRESSED: payload.value not used. 148 + * @PS3_SM_EVENT_RESET_PRESSED: payload.value = 149 + * enum ps3_sys_manager_button_event. 144 150 * @PS3_SM_EVENT_RESET_RELEASED: payload.value = time pressed in millisec. 145 151 * @PS3_SM_EVENT_THERMAL_ALERT: payload.value = thermal zone id. 146 152 * @PS3_SM_EVENT_THERMAL_CLEARED: payload.value = thermal zone id. ··· 157 159 PS3_SM_EVENT_THERMAL_ALERT = 7, 158 160 PS3_SM_EVENT_THERMAL_CLEARED = 8, 159 161 /* no info on controller events */ 162 + }; 163 + 164 + /** 165 + * enum ps3_sys_manager_button_event - Button event payload values. 166 + * @PS3_SM_BUTTON_EVENT_HARD: Hardware generated event. 167 + * @PS3_SM_BUTTON_EVENT_SOFT: Software generated event. 168 + */ 169 + 170 + enum ps3_sys_manager_button_event { 171 + PS3_SM_BUTTON_EVENT_HARD = 0, 172 + PS3_SM_BUTTON_EVENT_SOFT = 1, 160 173 }; 161 174 162 175 /** ··· 190 181 * @PS3_SM_WAKE_P_O_R: Power on reset. 191 182 * 192 183 * Additional wakeup sources when specifying PS3_SM_NEXT_OP_SYS_SHUTDOWN. 193 - * System will always wake from the PS3_SM_WAKE_DEFAULT sources. 184 + * The system will always wake from the PS3_SM_WAKE_DEFAULT sources. 185 + * Sources listed here are the only ones available to guests in the 186 + * other-os lpar. 194 187 */ 195 188 196 189 enum ps3_sys_manager_wake_source { ··· 200 189 PS3_SM_WAKE_DEFAULT = 0, 201 190 PS3_SM_WAKE_RTC = 0x00000040, 202 191 PS3_SM_WAKE_RTC_ERROR = 0x00000080, 203 - PS3_SM_WAKE_P_O_R = 0x10000000, 192 + PS3_SM_WAKE_P_O_R = 0x80000000, 204 193 }; 205 194 206 195 /** ··· 429 418 430 419 switch (event.type) { 431 420 case PS3_SM_EVENT_POWER_PRESSED: 432 - dev_dbg(&dev->core, "%s:%d: POWER_PRESSED\n", 433 - __func__, __LINE__); 421 + dev_dbg(&dev->core, "%s:%d: POWER_PRESSED (%s)\n", 422 + __func__, __LINE__, 423 + (event.value == PS3_SM_BUTTON_EVENT_SOFT ? "soft" 424 + : "hard")); 434 425 ps3_sm_force_power_off = 1; 435 426 /* 436 427 * A memory barrier is use here to sync memory since ··· 447 434 __func__, __LINE__, event.value); 448 435 break; 449 436 case PS3_SM_EVENT_RESET_PRESSED: 450 - dev_dbg(&dev->core, "%s:%d: RESET_PRESSED\n", 451 - __func__, __LINE__); 437 + dev_dbg(&dev->core, "%s:%d: RESET_PRESSED (%s)\n", 438 + __func__, __LINE__, 439 + (event.value == PS3_SM_BUTTON_EVENT_SOFT ? "soft" 440 + : "hard")); 452 441 ps3_sm_force_power_off = 0; 453 442 /* 454 443 * A memory barrier is use here to sync memory since ··· 637 622 ps3_vuart_cancel_async(dev); 638 623 639 624 ps3_sys_manager_send_attr(dev, 0); 640 - ps3_sys_manager_send_next_op(dev, PS3_SM_NEXT_OP_LPAR_REBOOT, 625 + ps3_sys_manager_send_next_op(dev, PS3_SM_NEXT_OP_SYS_REBOOT, 641 626 PS3_SM_WAKE_DEFAULT); 642 627 ps3_sys_manager_send_request_shutdown(dev); 643 628 ··· 714 699 module_init(ps3_sys_manager_init); 715 700 /* Module remove not supported. */ 716 701 702 + MODULE_AUTHOR("Sony Corporation"); 703 + MODULE_LICENSE("GPL v2"); 704 + MODULE_DESCRIPTION("PS3 System Manager"); 717 705 MODULE_ALIAS(PS3_MODULE_ALIAS_SYSTEM_MANAGER);
+3 -1
include/asm-powerpc/systbl.h
··· 309 309 COMPAT_SYS(epoll_pwait) 310 310 COMPAT_SYS_SPU(utimensat) 311 311 COMPAT_SYS_SPU(signalfd) 312 - SYSCALL(ni_syscall) 312 + SYSCALL_SPU(timerfd_create) 313 313 SYSCALL_SPU(eventfd) 314 314 COMPAT_SYS_SPU(sync_file_range2) 315 315 COMPAT_SYS(fallocate) 316 316 SYSCALL(subpage_prot) 317 + COMPAT_SYS_SPU(timerfd_settime) 318 + COMPAT_SYS_SPU(timerfd_gettime)
+4 -2
include/asm-powerpc/unistd.h
··· 328 328 #define __NR_epoll_pwait 303 329 329 #define __NR_utimensat 304 330 330 #define __NR_signalfd 305 331 - #define __NR_timerfd 306 331 + #define __NR_timerfd_create 306 332 332 #define __NR_eventfd 307 333 333 #define __NR_sync_file_range2 308 334 334 #define __NR_fallocate 309 335 335 #define __NR_subpage_prot 310 336 + #define __NR_timerfd_settime 311 337 + #define __NR_timerfd_gettime 312 336 338 337 339 #ifdef __KERNEL__ 338 340 339 - #define __NR_syscalls 311 341 + #define __NR_syscalls 313 340 342 341 343 #define __NR__exit __NR_exit 342 344 #define NR_syscalls __NR_syscalls
+2
include/asm-ppc/page.h
··· 125 125 return 32 - lz; 126 126 } 127 127 128 + typedef struct page *pgtable_t; 129 + 128 130 #endif /* __ASSEMBLY__ */ 129 131 130 132 #define VM_DATA_DEFAULT_FLAGS (VM_READ | VM_WRITE | VM_EXEC | \