diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2008-10-30 10:26:45 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-10-30 10:26:45 -0400 |
commit | 05cd2544f4b64d9a9eca0d170191867495e01feb (patch) | |
tree | 10146fb79bba464bac6f620d03b8cd50285065b7 /arch/arm | |
parent | 27f680adc65ca08bf72ed85d3a48d1ee70f77c7a (diff) | |
parent | a0601c8944dc08c2d349c24bd9c0b09c406229fc (diff) |
Merge branch 'fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/Kconfig | 3 | ||||
-rw-r--r-- | arch/arm/boot/compressed/Makefile | 2 | ||||
-rw-r--r-- | arch/arm/common/sharpsl_pm.c | 19 | ||||
-rw-r--r-- | arch/arm/include/asm/ftrace.h | 2 | ||||
-rw-r--r-- | arch/arm/kernel/armksyms.c | 2 | ||||
-rw-r--r-- | arch/arm/kernel/entry-common.S | 4 | ||||
-rw-r--r-- | arch/arm/kernel/ftrace.c | 13 | ||||
-rw-r--r-- | arch/arm/mach-pxa/corgi_pm.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-pxa/include/mach/sharpsl.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-pxa/spitz.c | 12 | ||||
-rw-r--r-- | arch/arm/mach-pxa/spitz_pm.c | 4 |
11 files changed, 39 insertions, 27 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 5021db2217ed..9722f8bb506c 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
@@ -16,8 +16,7 @@ config ARM | |||
16 | select HAVE_ARCH_KGDB | 16 | select HAVE_ARCH_KGDB |
17 | select HAVE_KPROBES if (!XIP_KERNEL) | 17 | select HAVE_KPROBES if (!XIP_KERNEL) |
18 | select HAVE_KRETPROBES if (HAVE_KPROBES) | 18 | select HAVE_KRETPROBES if (HAVE_KPROBES) |
19 | select HAVE_FTRACE if (!XIP_KERNEL) | 19 | select HAVE_FUNCTION_TRACER if (!XIP_KERNEL) |
20 | select HAVE_DYNAMIC_FTRACE if (HAVE_FTRACE) | ||
21 | select HAVE_GENERIC_DMA_COHERENT | 20 | select HAVE_GENERIC_DMA_COHERENT |
22 | help | 21 | help |
23 | The ARM series is a line of low-power-consumption RISC chip designs | 22 | The ARM series is a line of low-power-consumption RISC chip designs |
diff --git a/arch/arm/boot/compressed/Makefile b/arch/arm/boot/compressed/Makefile index 7a03f2007882..c47f2a3f8f8f 100644 --- a/arch/arm/boot/compressed/Makefile +++ b/arch/arm/boot/compressed/Makefile | |||
@@ -70,7 +70,7 @@ SEDFLAGS = s/TEXT_START/$(ZTEXTADDR)/;s/BSS_START/$(ZBSSADDR)/ | |||
70 | targets := vmlinux vmlinux.lds piggy.gz piggy.o font.o font.c \ | 70 | targets := vmlinux vmlinux.lds piggy.gz piggy.o font.o font.c \ |
71 | head.o misc.o $(OBJS) | 71 | head.o misc.o $(OBJS) |
72 | 72 | ||
73 | ifeq ($(CONFIG_FTRACE),y) | 73 | ifeq ($(CONFIG_FUNCTION_TRACER),y) |
74 | ORIG_CFLAGS := $(KBUILD_CFLAGS) | 74 | ORIG_CFLAGS := $(KBUILD_CFLAGS) |
75 | KBUILD_CFLAGS = $(subst -pg, , $(ORIG_CFLAGS)) | 75 | KBUILD_CFLAGS = $(subst -pg, , $(ORIG_CFLAGS)) |
76 | endif | 76 | endif |
diff --git a/arch/arm/common/sharpsl_pm.c b/arch/arm/common/sharpsl_pm.c index db8309161408..780bbf7cb26f 100644 --- a/arch/arm/common/sharpsl_pm.c +++ b/arch/arm/common/sharpsl_pm.c | |||
@@ -54,11 +54,13 @@ | |||
54 | /* | 54 | /* |
55 | * Prototypes | 55 | * Prototypes |
56 | */ | 56 | */ |
57 | #ifdef CONFIG_PM | ||
57 | static int sharpsl_off_charge_battery(void); | 58 | static int sharpsl_off_charge_battery(void); |
58 | static int sharpsl_check_battery_temp(void); | ||
59 | static int sharpsl_check_battery_voltage(void); | 59 | static int sharpsl_check_battery_voltage(void); |
60 | static int sharpsl_ac_check(void); | ||
61 | static int sharpsl_fatal_check(void); | 60 | static int sharpsl_fatal_check(void); |
61 | #endif | ||
62 | static int sharpsl_check_battery_temp(void); | ||
63 | static int sharpsl_ac_check(void); | ||
62 | static int sharpsl_average_value(int ad); | 64 | static int sharpsl_average_value(int ad); |
63 | static void sharpsl_average_clear(void); | 65 | static void sharpsl_average_clear(void); |
64 | static void sharpsl_charge_toggle(struct work_struct *private_); | 66 | static void sharpsl_charge_toggle(struct work_struct *private_); |
@@ -424,6 +426,7 @@ static int sharpsl_check_battery_temp(void) | |||
424 | return 0; | 426 | return 0; |
425 | } | 427 | } |
426 | 428 | ||
429 | #ifdef CONFIG_PM | ||
427 | static int sharpsl_check_battery_voltage(void) | 430 | static int sharpsl_check_battery_voltage(void) |
428 | { | 431 | { |
429 | int val, i, buff[5]; | 432 | int val, i, buff[5]; |
@@ -455,6 +458,7 @@ static int sharpsl_check_battery_voltage(void) | |||
455 | 458 | ||
456 | return 0; | 459 | return 0; |
457 | } | 460 | } |
461 | #endif | ||
458 | 462 | ||
459 | static int sharpsl_ac_check(void) | 463 | static int sharpsl_ac_check(void) |
460 | { | 464 | { |
@@ -586,8 +590,6 @@ static int corgi_pxa_pm_enter(suspend_state_t state) | |||
586 | 590 | ||
587 | return 0; | 591 | return 0; |
588 | } | 592 | } |
589 | #endif | ||
590 | |||
591 | 593 | ||
592 | /* | 594 | /* |
593 | * Check for fatal battery errors | 595 | * Check for fatal battery errors |
@@ -738,7 +740,10 @@ static int sharpsl_off_charge_battery(void) | |||
738 | } | 740 | } |
739 | } | 741 | } |
740 | } | 742 | } |
741 | 743 | #else | |
744 | #define sharpsl_pm_suspend NULL | ||
745 | #define sharpsl_pm_resume NULL | ||
746 | #endif | ||
742 | 747 | ||
743 | static ssize_t battery_percentage_show(struct device *dev, struct device_attribute *attr, char *buf) | 748 | static ssize_t battery_percentage_show(struct device *dev, struct device_attribute *attr, char *buf) |
744 | { | 749 | { |
@@ -768,10 +773,12 @@ static void sharpsl_apm_get_power_status(struct apm_power_info *info) | |||
768 | info->battery_life = sharpsl_pm.battstat.mainbat_percent; | 773 | info->battery_life = sharpsl_pm.battstat.mainbat_percent; |
769 | } | 774 | } |
770 | 775 | ||
776 | #ifdef CONFIG_PM | ||
771 | static struct platform_suspend_ops sharpsl_pm_ops = { | 777 | static struct platform_suspend_ops sharpsl_pm_ops = { |
772 | .enter = corgi_pxa_pm_enter, | 778 | .enter = corgi_pxa_pm_enter, |
773 | .valid = suspend_valid_only_mem, | 779 | .valid = suspend_valid_only_mem, |
774 | }; | 780 | }; |
781 | #endif | ||
775 | 782 | ||
776 | static int __init sharpsl_pm_probe(struct platform_device *pdev) | 783 | static int __init sharpsl_pm_probe(struct platform_device *pdev) |
777 | { | 784 | { |
@@ -802,7 +809,9 @@ static int __init sharpsl_pm_probe(struct platform_device *pdev) | |||
802 | 809 | ||
803 | apm_get_power_status = sharpsl_apm_get_power_status; | 810 | apm_get_power_status = sharpsl_apm_get_power_status; |
804 | 811 | ||
812 | #ifdef CONFIG_PM | ||
805 | suspend_set_ops(&sharpsl_pm_ops); | 813 | suspend_set_ops(&sharpsl_pm_ops); |
814 | #endif | ||
806 | 815 | ||
807 | mod_timer(&sharpsl_pm.ac_timer, jiffies + msecs_to_jiffies(250)); | 816 | mod_timer(&sharpsl_pm.ac_timer, jiffies + msecs_to_jiffies(250)); |
808 | 817 | ||
diff --git a/arch/arm/include/asm/ftrace.h b/arch/arm/include/asm/ftrace.h index 584ef9a8e5a5..39c8bc1a006a 100644 --- a/arch/arm/include/asm/ftrace.h +++ b/arch/arm/include/asm/ftrace.h | |||
@@ -1,7 +1,7 @@ | |||
1 | #ifndef _ASM_ARM_FTRACE | 1 | #ifndef _ASM_ARM_FTRACE |
2 | #define _ASM_ARM_FTRACE | 2 | #define _ASM_ARM_FTRACE |
3 | 3 | ||
4 | #ifdef CONFIG_FTRACE | 4 | #ifdef CONFIG_FUNCTION_TRACER |
5 | #define MCOUNT_ADDR ((long)(mcount)) | 5 | #define MCOUNT_ADDR ((long)(mcount)) |
6 | #define MCOUNT_INSN_SIZE 4 /* sizeof mcount call */ | 6 | #define MCOUNT_INSN_SIZE 4 /* sizeof mcount call */ |
7 | 7 | ||
diff --git a/arch/arm/kernel/armksyms.c b/arch/arm/kernel/armksyms.c index 2357b1cf1cf9..c74f766ffc12 100644 --- a/arch/arm/kernel/armksyms.c +++ b/arch/arm/kernel/armksyms.c | |||
@@ -183,6 +183,6 @@ EXPORT_SYMBOL(_find_next_bit_be); | |||
183 | 183 | ||
184 | EXPORT_SYMBOL(copy_page); | 184 | EXPORT_SYMBOL(copy_page); |
185 | 185 | ||
186 | #ifdef CONFIG_FTRACE | 186 | #ifdef CONFIG_FUNCTION_TRACER |
187 | EXPORT_SYMBOL(mcount); | 187 | EXPORT_SYMBOL(mcount); |
188 | #endif | 188 | #endif |
diff --git a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S index 3aa14dcc5bab..06269ea375c5 100644 --- a/arch/arm/kernel/entry-common.S +++ b/arch/arm/kernel/entry-common.S | |||
@@ -101,7 +101,7 @@ ENDPROC(ret_from_fork) | |||
101 | #undef CALL | 101 | #undef CALL |
102 | #define CALL(x) .long x | 102 | #define CALL(x) .long x |
103 | 103 | ||
104 | #ifdef CONFIG_FTRACE | 104 | #ifdef CONFIG_FUNCTION_TRACER |
105 | #ifdef CONFIG_DYNAMIC_FTRACE | 105 | #ifdef CONFIG_DYNAMIC_FTRACE |
106 | ENTRY(mcount) | 106 | ENTRY(mcount) |
107 | stmdb sp!, {r0-r3, lr} | 107 | stmdb sp!, {r0-r3, lr} |
@@ -149,7 +149,7 @@ trace: | |||
149 | ftrace_stub: | 149 | ftrace_stub: |
150 | mov pc, lr | 150 | mov pc, lr |
151 | 151 | ||
152 | #endif /* CONFIG_FTRACE */ | 152 | #endif /* CONFIG_FUNCTION_TRACER */ |
153 | 153 | ||
154 | /*============================================================================= | 154 | /*============================================================================= |
155 | * SWI handler | 155 | * SWI handler |
diff --git a/arch/arm/kernel/ftrace.c b/arch/arm/kernel/ftrace.c index 76d50e6091bc..6c90479e8974 100644 --- a/arch/arm/kernel/ftrace.c +++ b/arch/arm/kernel/ftrace.c | |||
@@ -95,19 +95,6 @@ int ftrace_update_ftrace_func(ftrace_func_t func) | |||
95 | return ret; | 95 | return ret; |
96 | } | 96 | } |
97 | 97 | ||
98 | int ftrace_mcount_set(unsigned long *data) | ||
99 | { | ||
100 | unsigned long pc, old; | ||
101 | unsigned long *addr = data; | ||
102 | unsigned char *new; | ||
103 | |||
104 | pc = (unsigned long)&mcount_call; | ||
105 | memcpy(&old, &mcount_call, MCOUNT_INSN_SIZE); | ||
106 | new = ftrace_call_replace(pc, *addr); | ||
107 | *addr = ftrace_modify_code(pc, (unsigned char *)&old, new); | ||
108 | return 0; | ||
109 | } | ||
110 | |||
111 | /* run from kstop_machine */ | 98 | /* run from kstop_machine */ |
112 | int __init ftrace_dyn_arch_init(void *data) | 99 | int __init ftrace_dyn_arch_init(void *data) |
113 | { | 100 | { |
diff --git a/arch/arm/mach-pxa/corgi_pm.c b/arch/arm/mach-pxa/corgi_pm.c index eb7d6c94aa42..e35259032813 100644 --- a/arch/arm/mach-pxa/corgi_pm.c +++ b/arch/arm/mach-pxa/corgi_pm.c | |||
@@ -204,7 +204,9 @@ static struct sharpsl_charger_machinfo corgi_pm_machinfo = { | |||
204 | .read_devdata = corgipm_read_devdata, | 204 | .read_devdata = corgipm_read_devdata, |
205 | .charger_wakeup = corgi_charger_wakeup, | 205 | .charger_wakeup = corgi_charger_wakeup, |
206 | .should_wakeup = corgi_should_wakeup, | 206 | .should_wakeup = corgi_should_wakeup, |
207 | #ifdef CONFIG_BACKLIGHT_CORGI | 207 | #if defined(CONFIG_LCD_CORGI) |
208 | .backlight_limit = corgi_lcd_limit_intensity, | ||
209 | #elif defined(CONFIG_BACKLIGHT_CORGI) | ||
208 | .backlight_limit = corgibl_limit_intensity, | 210 | .backlight_limit = corgibl_limit_intensity, |
209 | #endif | 211 | #endif |
210 | .charge_on_volt = SHARPSL_CHARGE_ON_VOLT, | 212 | .charge_on_volt = SHARPSL_CHARGE_ON_VOLT, |
diff --git a/arch/arm/mach-pxa/include/mach/sharpsl.h b/arch/arm/mach-pxa/include/mach/sharpsl.h index 3b1d4a72d4d1..8242e14a44fa 100644 --- a/arch/arm/mach-pxa/include/mach/sharpsl.h +++ b/arch/arm/mach-pxa/include/mach/sharpsl.h | |||
@@ -26,6 +26,7 @@ struct corgits_machinfo { | |||
26 | * SharpSL Backlight | 26 | * SharpSL Backlight |
27 | */ | 27 | */ |
28 | extern void corgibl_limit_intensity(int limit); | 28 | extern void corgibl_limit_intensity(int limit); |
29 | extern void corgi_lcd_limit_intensity(int limit); | ||
29 | 30 | ||
30 | 31 | ||
31 | /* | 32 | /* |
diff --git a/arch/arm/mach-pxa/spitz.c b/arch/arm/mach-pxa/spitz.c index 524f656dc56d..f0a5bbae0b45 100644 --- a/arch/arm/mach-pxa/spitz.c +++ b/arch/arm/mach-pxa/spitz.c | |||
@@ -385,6 +385,16 @@ static void __init spitz_init_spi(void) | |||
385 | if (err) | 385 | if (err) |
386 | goto err_free_2; | 386 | goto err_free_2; |
387 | 387 | ||
388 | err = gpio_direction_output(SPITZ_GPIO_ADS7846_CS, 1); | ||
389 | if (err) | ||
390 | goto err_free_3; | ||
391 | err = gpio_direction_output(SPITZ_GPIO_LCDCON_CS, 1); | ||
392 | if (err) | ||
393 | goto err_free_3; | ||
394 | err = gpio_direction_output(SPITZ_GPIO_MAX1111_CS, 1); | ||
395 | if (err) | ||
396 | goto err_free_3; | ||
397 | |||
388 | if (machine_is_akita()) { | 398 | if (machine_is_akita()) { |
389 | spitz_lcdcon_info.gpio_backlight_cont = AKITA_GPIO_BACKLIGHT_CONT; | 399 | spitz_lcdcon_info.gpio_backlight_cont = AKITA_GPIO_BACKLIGHT_CONT; |
390 | spitz_lcdcon_info.gpio_backlight_on = AKITA_GPIO_BACKLIGHT_ON; | 400 | spitz_lcdcon_info.gpio_backlight_on = AKITA_GPIO_BACKLIGHT_ON; |
@@ -394,6 +404,8 @@ static void __init spitz_init_spi(void) | |||
394 | spi_register_board_info(ARRAY_AND_SIZE(spitz_spi_devices)); | 404 | spi_register_board_info(ARRAY_AND_SIZE(spitz_spi_devices)); |
395 | return; | 405 | return; |
396 | 406 | ||
407 | err_free_3: | ||
408 | gpio_free(SPITZ_GPIO_MAX1111_CS); | ||
397 | err_free_2: | 409 | err_free_2: |
398 | gpio_free(SPITZ_GPIO_LCDCON_CS); | 410 | gpio_free(SPITZ_GPIO_LCDCON_CS); |
399 | err_free_1: | 411 | err_free_1: |
diff --git a/arch/arm/mach-pxa/spitz_pm.c b/arch/arm/mach-pxa/spitz_pm.c index 53018db106ac..072e77cfe5a3 100644 --- a/arch/arm/mach-pxa/spitz_pm.c +++ b/arch/arm/mach-pxa/spitz_pm.c | |||
@@ -198,7 +198,9 @@ struct sharpsl_charger_machinfo spitz_pm_machinfo = { | |||
198 | .read_devdata = spitzpm_read_devdata, | 198 | .read_devdata = spitzpm_read_devdata, |
199 | .charger_wakeup = spitz_charger_wakeup, | 199 | .charger_wakeup = spitz_charger_wakeup, |
200 | .should_wakeup = spitz_should_wakeup, | 200 | .should_wakeup = spitz_should_wakeup, |
201 | #ifdef CONFIG_BACKLIGHT_CORGI | 201 | #if defined(CONFIG_LCD_CORGI) |
202 | .backlight_limit = corgi_lcd_limit_intensity, | ||
203 | #elif defined(CONFIG_BACKLIGHT_CORGI) | ||
202 | .backlight_limit = corgibl_limit_intensity, | 204 | .backlight_limit = corgibl_limit_intensity, |
203 | #endif | 205 | #endif |
204 | .charge_on_volt = SHARPSL_CHARGE_ON_VOLT, | 206 | .charge_on_volt = SHARPSL_CHARGE_ON_VOLT, |