Loading arch/arm/Kconfig.debug +78 −78 Original line number Diff line number Diff line Loading @@ -81,25 +81,6 @@ choice prompt "Kernel low-level debugging port" depends on DEBUG_LL config DEBUG_LL_UART_NONE bool "No low-level debugging UART" help Say Y here if your platform doesn't provide a UART option below. This relies on your platform choosing the right UART definition internally in order for low-level debugging to work. config DEBUG_ICEDCC bool "Kernel low-level debugging via EmbeddedICE DCC channel" help Say Y here if you want the debug print routines to direct their output to the EmbeddedICE macrocell's DCC channel using co-processor 14. This is known to work on the ARM9 style ICE channel and on the XScale with the PEEDI. Note that the system will appear to hang during boot if there is nothing connected to read from the DCC. config AT91_DEBUG_LL_DBGU0 bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10 and 9rl" depends on HAVE_AT91_DBGU0 Loading @@ -108,20 +89,6 @@ choice bool "Kernel low-level debugging on 9263, 9g45 and cap9" depends on HAVE_AT91_DBGU1 config DEBUG_FOOTBRIDGE_COM1 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1" depends on FOOTBRIDGE help Say Y here if you want the debug print routines to direct their output to the 8250 at PCI COM1. config DEBUG_DC21285_PORT bool "Kernel low-level debugging messages via footbridge serial port" depends on FOOTBRIDGE help Say Y here if you want the debug print routines to direct their output to the serial port in the DC21285 (Footbridge). config DEBUG_CLPS711X_UART1 bool "Kernel low-level debugging messages via UART1" depends on ARCH_CLPS711X Loading @@ -136,6 +103,20 @@ choice Say Y here if you want the debug print routines to direct their output to the second serial port on these devices. config DEBUG_DC21285_PORT bool "Kernel low-level debugging messages via footbridge serial port" depends on FOOTBRIDGE help Say Y here if you want the debug print routines to direct their output to the serial port in the DC21285 (Footbridge). config DEBUG_FOOTBRIDGE_COM1 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1" depends on FOOTBRIDGE help Say Y here if you want the debug print routines to direct their output to the 8250 at PCI COM1. config DEBUG_HIGHBANK_UART bool "Kernel low-level debugging messages via Highbank UART" depends on ARCH_HIGHBANK Loading Loading @@ -206,38 +187,42 @@ choice Say Y here if you want kernel low-level debugging support on i.MX6Q. config DEBUG_S3C_UART0 depends on PLAT_SAMSUNG bool "Use S3C UART 0 for low-level debug" config DEBUG_MSM_UART1 bool "Kernel low-level debugging messages via MSM UART1" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 help Say Y here if you want the debug print routines to direct their output to UART 0. The port must have been initialised by the boot-loader before use. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. their output to the first serial port on MSM devices. config DEBUG_S3C_UART1 depends on PLAT_SAMSUNG bool "Use S3C UART 1 for low-level debug" config DEBUG_MSM_UART2 bool "Kernel low-level debugging messages via MSM UART2" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 help Say Y here if you want the debug print routines to direct their output to UART 1. The port must have been initialised by the boot-loader before use. their output to the second serial port on MSM devices. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_MSM_UART3 bool "Kernel low-level debugging messages via MSM UART3" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 help Say Y here if you want the debug print routines to direct their output to the third serial port on MSM devices. config DEBUG_S3C_UART2 depends on PLAT_SAMSUNG bool "Use S3C UART 2 for low-level debug" config DEBUG_MSM8660_UART bool "Kernel low-level debugging messages via MSM 8660 UART" depends on ARCH_MSM8X60 select MSM_HAS_DEBUG_UART_HS help Say Y here if you want the debug print routines to direct their output to UART 2. The port must have been initialised by the boot-loader before use. their output to the serial port on MSM 8660 devices. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_MSM8960_UART bool "Kernel low-level debugging messages via MSM 8960 UART" depends on ARCH_MSM8960 select MSM_HAS_DEBUG_UART_HS help Say Y here if you want the debug print routines to direct their output to the serial port on MSM 8960 devices. config DEBUG_REALVIEW_STD_PORT bool "RealView Default UART" Loading @@ -255,42 +240,57 @@ choice their output to the standard serial port on the RealView PB1176 platform. config DEBUG_MSM_UART1 bool "Kernel low-level debugging messages via MSM UART1" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 config DEBUG_S3C_UART0 depends on PLAT_SAMSUNG bool "Use S3C UART 0 for low-level debug" help Say Y here if you want the debug print routines to direct their output to the first serial port on MSM devices. their output to UART 0. The port must have been initialised by the boot-loader before use. config DEBUG_MSM_UART2 bool "Kernel low-level debugging messages via MSM UART2" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C_UART1 depends on PLAT_SAMSUNG bool "Use S3C UART 1 for low-level debug" help Say Y here if you want the debug print routines to direct their output to the second serial port on MSM devices. their output to UART 1. The port must have been initialised by the boot-loader before use. config DEBUG_MSM_UART3 bool "Kernel low-level debugging messages via MSM UART3" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C_UART2 depends on PLAT_SAMSUNG bool "Use S3C UART 2 for low-level debug" help Say Y here if you want the debug print routines to direct their output to the third serial port on MSM devices. their output to UART 2. The port must have been initialised by the boot-loader before use. config DEBUG_MSM8660_UART bool "Kernel low-level debugging messages via MSM 8660 UART" depends on ARCH_MSM8X60 select MSM_HAS_DEBUG_UART_HS The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_LL_UART_NONE bool "No low-level debugging UART" help Say Y here if you want the debug print routines to direct their output to the serial port on MSM 8660 devices. Say Y here if your platform doesn't provide a UART option below. This relies on your platform choosing the right UART definition internally in order for low-level debugging to work. config DEBUG_MSM8960_UART bool "Kernel low-level debugging messages via MSM 8960 UART" depends on ARCH_MSM8960 select MSM_HAS_DEBUG_UART_HS config DEBUG_ICEDCC bool "Kernel low-level debugging via EmbeddedICE DCC channel" help Say Y here if you want the debug print routines to direct their output to the serial port on MSM 8960 devices. their output to the EmbeddedICE macrocell's DCC channel using co-processor 14. This is known to work on the ARM9 style ICE channel and on the XScale with the PEEDI. Note that the system will appear to hang during boot if there is nothing connected to read from the DCC. endchoice Loading arch/arm/include/asm/system.h +1 −0 Original line number Diff line number Diff line Loading @@ -110,6 +110,7 @@ extern void cpu_init(void); void soft_restart(unsigned long); extern void (*arm_pm_restart)(char str, const char *cmd); extern void (*arm_pm_idle)(void); #define UDBG_UNDEFINED (1 << 0) #define UDBG_SYSCALL (1 << 1) Loading arch/arm/kernel/process.c +16 −11 Original line number Diff line number Diff line Loading @@ -61,8 +61,6 @@ extern void setup_mm_for_reboot(void); static volatile int hlt_counter; #include <mach/system.h> void disable_hlt(void) { hlt_counter++; Loading Loading @@ -181,13 +179,17 @@ void cpu_idle_wait(void) EXPORT_SYMBOL_GPL(cpu_idle_wait); /* * This is our default idle handler. We need to disable * interrupts here to ensure we don't miss a wakeup call. * This is our default idle handler. */ void (*arm_pm_idle)(void); static void default_idle(void) { if (!need_resched()) arch_idle(); if (arm_pm_idle) arm_pm_idle(); else cpu_do_idle(); local_irq_enable(); } Loading Loading @@ -215,6 +217,10 @@ void cpu_idle(void) cpu_die(); #endif /* * We need to disable interrupts here * to ensure we don't miss a wakeup call. */ local_irq_disable(); #ifdef CONFIG_PL310_ERRATA_769419 wmb(); Loading @@ -222,20 +228,19 @@ void cpu_idle(void) if (hlt_counter) { local_irq_enable(); cpu_relax(); } else { } else if (!need_resched()) { stop_critical_timings(); if (cpuidle_idle_call()) pm_idle(); start_critical_timings(); /* * This will eventually be removed - pm_idle * functions should always return with IRQs * enabled. * pm_idle functions must always * return with IRQs enabled. */ WARN_ON(irqs_disabled()); } else local_irq_enable(); } } leds_event(led_idle_end); rcu_idle_exit(); tick_nohz_idle_exit(); Loading arch/arm/mach-at91/at91cap9.c +8 −0 Original line number Diff line number Diff line Loading @@ -14,6 +14,7 @@ #include <linux/module.h> #include <asm/proc-fns.h> #include <asm/irq.h> #include <asm/mach/arch.h> #include <asm/mach/map.h> Loading Loading @@ -313,6 +314,12 @@ static struct at91_gpio_bank at91cap9_gpio[] __initdata = { } }; static void at91cap9_idle(void) { at91_sys_write(AT91_PMC_SCDR, AT91_PMC_PCK); cpu_do_idle(); } /* -------------------------------------------------------------------- * AT91CAP9 processor initialization * -------------------------------------------------------------------- */ Loading @@ -332,6 +339,7 @@ static void __init at91cap9_ioremap_registers(void) static void __init at91cap9_initialize(void) { arm_pm_idle = at91cap9_idle; arm_pm_restart = at91sam9g45_restart; at91_extern_irq = (1 << AT91CAP9_ID_IRQ0) | (1 << AT91CAP9_ID_IRQ1); Loading arch/arm/mach-at91/at91rm9200.c +10 −0 Original line number Diff line number Diff line Loading @@ -289,6 +289,15 @@ static struct at91_gpio_bank at91rm9200_gpio[] __initdata = { } }; static void at91rm9200_idle(void) { /* * Disable the processor clock. The processor will be automatically * re-enabled by an interrupt or by a reset. */ at91_sys_write(AT91_PMC_SCDR, AT91_PMC_PCK); } static void at91rm9200_restart(char mode, const char *cmd) { /* Loading @@ -314,6 +323,7 @@ static void __init at91rm9200_ioremap_registers(void) static void __init at91rm9200_initialize(void) { arm_pm_idle = at91rm9200_idle; arm_pm_restart = at91rm9200_restart; at91_extern_irq = (1 << AT91RM9200_ID_IRQ0) | (1 << AT91RM9200_ID_IRQ1) | (1 << AT91RM9200_ID_IRQ2) | (1 << AT91RM9200_ID_IRQ3) Loading Loading
arch/arm/Kconfig.debug +78 −78 Original line number Diff line number Diff line Loading @@ -81,25 +81,6 @@ choice prompt "Kernel low-level debugging port" depends on DEBUG_LL config DEBUG_LL_UART_NONE bool "No low-level debugging UART" help Say Y here if your platform doesn't provide a UART option below. This relies on your platform choosing the right UART definition internally in order for low-level debugging to work. config DEBUG_ICEDCC bool "Kernel low-level debugging via EmbeddedICE DCC channel" help Say Y here if you want the debug print routines to direct their output to the EmbeddedICE macrocell's DCC channel using co-processor 14. This is known to work on the ARM9 style ICE channel and on the XScale with the PEEDI. Note that the system will appear to hang during boot if there is nothing connected to read from the DCC. config AT91_DEBUG_LL_DBGU0 bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10 and 9rl" depends on HAVE_AT91_DBGU0 Loading @@ -108,20 +89,6 @@ choice bool "Kernel low-level debugging on 9263, 9g45 and cap9" depends on HAVE_AT91_DBGU1 config DEBUG_FOOTBRIDGE_COM1 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1" depends on FOOTBRIDGE help Say Y here if you want the debug print routines to direct their output to the 8250 at PCI COM1. config DEBUG_DC21285_PORT bool "Kernel low-level debugging messages via footbridge serial port" depends on FOOTBRIDGE help Say Y here if you want the debug print routines to direct their output to the serial port in the DC21285 (Footbridge). config DEBUG_CLPS711X_UART1 bool "Kernel low-level debugging messages via UART1" depends on ARCH_CLPS711X Loading @@ -136,6 +103,20 @@ choice Say Y here if you want the debug print routines to direct their output to the second serial port on these devices. config DEBUG_DC21285_PORT bool "Kernel low-level debugging messages via footbridge serial port" depends on FOOTBRIDGE help Say Y here if you want the debug print routines to direct their output to the serial port in the DC21285 (Footbridge). config DEBUG_FOOTBRIDGE_COM1 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1" depends on FOOTBRIDGE help Say Y here if you want the debug print routines to direct their output to the 8250 at PCI COM1. config DEBUG_HIGHBANK_UART bool "Kernel low-level debugging messages via Highbank UART" depends on ARCH_HIGHBANK Loading Loading @@ -206,38 +187,42 @@ choice Say Y here if you want kernel low-level debugging support on i.MX6Q. config DEBUG_S3C_UART0 depends on PLAT_SAMSUNG bool "Use S3C UART 0 for low-level debug" config DEBUG_MSM_UART1 bool "Kernel low-level debugging messages via MSM UART1" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 help Say Y here if you want the debug print routines to direct their output to UART 0. The port must have been initialised by the boot-loader before use. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. their output to the first serial port on MSM devices. config DEBUG_S3C_UART1 depends on PLAT_SAMSUNG bool "Use S3C UART 1 for low-level debug" config DEBUG_MSM_UART2 bool "Kernel low-level debugging messages via MSM UART2" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 help Say Y here if you want the debug print routines to direct their output to UART 1. The port must have been initialised by the boot-loader before use. their output to the second serial port on MSM devices. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_MSM_UART3 bool "Kernel low-level debugging messages via MSM UART3" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 help Say Y here if you want the debug print routines to direct their output to the third serial port on MSM devices. config DEBUG_S3C_UART2 depends on PLAT_SAMSUNG bool "Use S3C UART 2 for low-level debug" config DEBUG_MSM8660_UART bool "Kernel low-level debugging messages via MSM 8660 UART" depends on ARCH_MSM8X60 select MSM_HAS_DEBUG_UART_HS help Say Y here if you want the debug print routines to direct their output to UART 2. The port must have been initialised by the boot-loader before use. their output to the serial port on MSM 8660 devices. The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_MSM8960_UART bool "Kernel low-level debugging messages via MSM 8960 UART" depends on ARCH_MSM8960 select MSM_HAS_DEBUG_UART_HS help Say Y here if you want the debug print routines to direct their output to the serial port on MSM 8960 devices. config DEBUG_REALVIEW_STD_PORT bool "RealView Default UART" Loading @@ -255,42 +240,57 @@ choice their output to the standard serial port on the RealView PB1176 platform. config DEBUG_MSM_UART1 bool "Kernel low-level debugging messages via MSM UART1" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 config DEBUG_S3C_UART0 depends on PLAT_SAMSUNG bool "Use S3C UART 0 for low-level debug" help Say Y here if you want the debug print routines to direct their output to the first serial port on MSM devices. their output to UART 0. The port must have been initialised by the boot-loader before use. config DEBUG_MSM_UART2 bool "Kernel low-level debugging messages via MSM UART2" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C_UART1 depends on PLAT_SAMSUNG bool "Use S3C UART 1 for low-level debug" help Say Y here if you want the debug print routines to direct their output to the second serial port on MSM devices. their output to UART 1. The port must have been initialised by the boot-loader before use. config DEBUG_MSM_UART3 bool "Kernel low-level debugging messages via MSM UART3" depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50 The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_S3C_UART2 depends on PLAT_SAMSUNG bool "Use S3C UART 2 for low-level debug" help Say Y here if you want the debug print routines to direct their output to the third serial port on MSM devices. their output to UART 2. The port must have been initialised by the boot-loader before use. config DEBUG_MSM8660_UART bool "Kernel low-level debugging messages via MSM 8660 UART" depends on ARCH_MSM8X60 select MSM_HAS_DEBUG_UART_HS The uncompressor code port configuration is now handled by CONFIG_S3C_LOWLEVEL_UART_PORT. config DEBUG_LL_UART_NONE bool "No low-level debugging UART" help Say Y here if you want the debug print routines to direct their output to the serial port on MSM 8660 devices. Say Y here if your platform doesn't provide a UART option below. This relies on your platform choosing the right UART definition internally in order for low-level debugging to work. config DEBUG_MSM8960_UART bool "Kernel low-level debugging messages via MSM 8960 UART" depends on ARCH_MSM8960 select MSM_HAS_DEBUG_UART_HS config DEBUG_ICEDCC bool "Kernel low-level debugging via EmbeddedICE DCC channel" help Say Y here if you want the debug print routines to direct their output to the serial port on MSM 8960 devices. their output to the EmbeddedICE macrocell's DCC channel using co-processor 14. This is known to work on the ARM9 style ICE channel and on the XScale with the PEEDI. Note that the system will appear to hang during boot if there is nothing connected to read from the DCC. endchoice Loading
arch/arm/include/asm/system.h +1 −0 Original line number Diff line number Diff line Loading @@ -110,6 +110,7 @@ extern void cpu_init(void); void soft_restart(unsigned long); extern void (*arm_pm_restart)(char str, const char *cmd); extern void (*arm_pm_idle)(void); #define UDBG_UNDEFINED (1 << 0) #define UDBG_SYSCALL (1 << 1) Loading
arch/arm/kernel/process.c +16 −11 Original line number Diff line number Diff line Loading @@ -61,8 +61,6 @@ extern void setup_mm_for_reboot(void); static volatile int hlt_counter; #include <mach/system.h> void disable_hlt(void) { hlt_counter++; Loading Loading @@ -181,13 +179,17 @@ void cpu_idle_wait(void) EXPORT_SYMBOL_GPL(cpu_idle_wait); /* * This is our default idle handler. We need to disable * interrupts here to ensure we don't miss a wakeup call. * This is our default idle handler. */ void (*arm_pm_idle)(void); static void default_idle(void) { if (!need_resched()) arch_idle(); if (arm_pm_idle) arm_pm_idle(); else cpu_do_idle(); local_irq_enable(); } Loading Loading @@ -215,6 +217,10 @@ void cpu_idle(void) cpu_die(); #endif /* * We need to disable interrupts here * to ensure we don't miss a wakeup call. */ local_irq_disable(); #ifdef CONFIG_PL310_ERRATA_769419 wmb(); Loading @@ -222,20 +228,19 @@ void cpu_idle(void) if (hlt_counter) { local_irq_enable(); cpu_relax(); } else { } else if (!need_resched()) { stop_critical_timings(); if (cpuidle_idle_call()) pm_idle(); start_critical_timings(); /* * This will eventually be removed - pm_idle * functions should always return with IRQs * enabled. * pm_idle functions must always * return with IRQs enabled. */ WARN_ON(irqs_disabled()); } else local_irq_enable(); } } leds_event(led_idle_end); rcu_idle_exit(); tick_nohz_idle_exit(); Loading
arch/arm/mach-at91/at91cap9.c +8 −0 Original line number Diff line number Diff line Loading @@ -14,6 +14,7 @@ #include <linux/module.h> #include <asm/proc-fns.h> #include <asm/irq.h> #include <asm/mach/arch.h> #include <asm/mach/map.h> Loading Loading @@ -313,6 +314,12 @@ static struct at91_gpio_bank at91cap9_gpio[] __initdata = { } }; static void at91cap9_idle(void) { at91_sys_write(AT91_PMC_SCDR, AT91_PMC_PCK); cpu_do_idle(); } /* -------------------------------------------------------------------- * AT91CAP9 processor initialization * -------------------------------------------------------------------- */ Loading @@ -332,6 +339,7 @@ static void __init at91cap9_ioremap_registers(void) static void __init at91cap9_initialize(void) { arm_pm_idle = at91cap9_idle; arm_pm_restart = at91sam9g45_restart; at91_extern_irq = (1 << AT91CAP9_ID_IRQ0) | (1 << AT91CAP9_ID_IRQ1); Loading
arch/arm/mach-at91/at91rm9200.c +10 −0 Original line number Diff line number Diff line Loading @@ -289,6 +289,15 @@ static struct at91_gpio_bank at91rm9200_gpio[] __initdata = { } }; static void at91rm9200_idle(void) { /* * Disable the processor clock. The processor will be automatically * re-enabled by an interrupt or by a reset. */ at91_sys_write(AT91_PMC_SCDR, AT91_PMC_PCK); } static void at91rm9200_restart(char mode, const char *cmd) { /* Loading @@ -314,6 +323,7 @@ static void __init at91rm9200_ioremap_registers(void) static void __init at91rm9200_initialize(void) { arm_pm_idle = at91rm9200_idle; arm_pm_restart = at91rm9200_restart; at91_extern_irq = (1 << AT91RM9200_ID_IRQ0) | (1 << AT91RM9200_ID_IRQ1) | (1 << AT91RM9200_ID_IRQ2) | (1 << AT91RM9200_ID_IRQ3) Loading