Skip to content

Commit 7556afa

Browse files
committed
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/avr32-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/avr32-2.6: [AVR32] extint: Set initial irq type to low level [AVR32] extint: change set_irq_type() handling [AVR32] NMI debugging [AVR32] constify function pointer tables [AVR32] ATNGW100: Update defconfig [AVR32] ATSTK1002: Update defconfig [AVR32] Kconfig: Choose daughterboard instead of CPU [AVR32] Add support for ATSTK1003 and ATSTK1004 [AVR32] Clean up external DAC setup code [AVR32] ATSTK1000: Move gpio-leds setup to setup.c [AVR32] Add support for AT32AP7001 and AT32AP7002 [AVR32] Provide more CPU information in /proc/cpuinfo and dmesg [AVR32] Oprofile support [AVR32] Include instrumentation menu Disable VGA text console for AVR32 architecture [AVR32] Enable debugging only when needed ptrace: Call arch_ptrace_attach() when request=PTRACE_TRACEME [AVR32] Remove redundant try_to_freeze() call from do_signal() [AVR32] Drop GFP_COMP for DMA memory allocations
2 parents e07dd2a + d6c49a7 commit 7556afa

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+3579
-517
lines changed

Documentation/kernel-parameters.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ parameter is applicable:
3434
ALSA ALSA sound support is enabled.
3535
APIC APIC support is enabled.
3636
APM Advanced Power Management support is enabled.
37+
AVR32 AVR32 architecture is enabled.
3738
AX25 Appropriate AX.25 support is enabled.
3839
BLACKFIN Blackfin architecture is enabled.
3940
DRM Direct Rendering Management support is enabled.
@@ -1123,6 +1124,10 @@ and is between 256 and 4096 characters. It is defined in the file
11231124
of returning the full 64-bit number.
11241125
The default is to return 64-bit inode numbers.
11251126

1127+
nmi_debug= [KNL,AVR32] Specify one or more actions to take
1128+
when a NMI is triggered.
1129+
Format: [state][,regs][,debounce][,die]
1130+
11261131
nmi_watchdog= [KNL,BUGS=X86-32] Debugging features for SMP kernels
11271132

11281133
no387 [BUGS=X86-32] Tells the kernel to use the 387 maths

arch/avr32/Kconfig

Lines changed: 33 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,9 @@ config ARCH_HAS_ILOG2_U32
5454
config ARCH_HAS_ILOG2_U64
5555
def_bool n
5656

57+
config ARCH_SUPPORTS_OPROFILE
58+
def_bool y
59+
5760
config GENERIC_HWEIGHT
5861
def_bool y
5962

@@ -81,30 +84,34 @@ config PLATFORM_AT32AP
8184
select MMU
8285
select PERFORMANCE_COUNTERS
8386

84-
choice
85-
prompt "AVR32 CPU type"
86-
default CPU_AT32AP7000
87+
#
88+
# CPU types
89+
#
8790

88-
config CPU_AT32AP7000
89-
bool "AT32AP7000"
91+
# AP7000 derivatives
92+
config CPU_AT32AP700X
93+
bool
9094
select PLATFORM_AT32AP
91-
endchoice
92-
93-
#
94-
# CPU Daughterboards for ATSTK1000
95-
config BOARD_ATSTK1002
95+
config CPU_AT32AP7000
96+
bool
97+
select CPU_AT32AP700X
98+
config CPU_AT32AP7001
99+
bool
100+
select CPU_AT32AP700X
101+
config CPU_AT32AP7002
96102
bool
103+
select CPU_AT32AP700X
97104

98105
choice
99106
prompt "AVR32 board type"
100107
default BOARD_ATSTK1000
101108

102109
config BOARD_ATSTK1000
103110
bool "ATSTK1000 evaluation board"
104-
select BOARD_ATSTK1002 if CPU_AT32AP7000
105111

106112
config BOARD_ATNGW100
107113
bool "ATNGW100 Network Gateway"
114+
select CPU_AT32AP7000
108115
endchoice
109116

110117
if BOARD_ATSTK1000
@@ -123,15 +130,15 @@ source "arch/avr32/mach-at32ap/Kconfig"
123130

124131
config LOAD_ADDRESS
125132
hex
126-
default 0x10000000 if LOADER_U_BOOT=y && CPU_AT32AP7000=y
133+
default 0x10000000 if LOADER_U_BOOT=y && CPU_AT32AP700X=y
127134

128135
config ENTRY_ADDRESS
129136
hex
130-
default 0x90000000 if LOADER_U_BOOT=y && CPU_AT32AP7000=y
137+
default 0x90000000 if LOADER_U_BOOT=y && CPU_AT32AP700X=y
131138

132139
config PHYS_OFFSET
133140
hex
134-
default 0x10000000 if CPU_AT32AP7000=y
141+
default 0x10000000 if CPU_AT32AP700X=y
135142

136143
source "kernel/Kconfig.preempt"
137144

@@ -163,6 +170,16 @@ config OWNERSHIP_TRACE
163170
enabling Nexus-compliant debuggers to keep track of the PID of the
164171
currently executing task.
165172

173+
config NMI_DEBUGGING
174+
bool "NMI Debugging"
175+
default n
176+
help
177+
Say Y here and pass the nmi_debug command-line parameter to
178+
the kernel to turn on NMI debugging. Depending on the value
179+
of the nmi_debug option, various pieces of information will
180+
be dumped to the console when a Non-Maskable Interrupt
181+
happens.
182+
166183
# FPU emulation goes here
167184

168185
source "kernel/Kconfig.hz"
@@ -219,6 +236,8 @@ source "drivers/Kconfig"
219236

220237
source "fs/Kconfig"
221238

239+
source "kernel/Kconfig.instrumentation"
240+
222241
source "arch/avr32/Kconfig.debug"
223242

224243
source "security/Kconfig"

arch/avr32/Kconfig.debug

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,4 @@ config TRACE_IRQFLAGS_SUPPORT
66

77
source "lib/Kconfig.debug"
88

9-
config KPROBES
10-
bool "Kprobes"
11-
depends on DEBUG_KERNEL
12-
help
13-
Kprobes allows you to trap at almost any kernel address and
14-
execute a callback function. register_kprobe() establishes
15-
a probepoint and specifies the callback. Kprobes is useful
16-
for kernel debugging, non-intrusive instrumentation and testing.
17-
If in doubt, say "N".
18-
199
endmenu

arch/avr32/Makefile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ KBUILD_AFLAGS += -mrelax -mno-pic
1616
CFLAGS_MODULE += -mno-relax
1717
LDFLAGS_vmlinux += --relax
1818

19-
cpuflags-$(CONFIG_CPU_AT32AP7000) += -mcpu=ap7000
19+
cpuflags-$(CONFIG_PLATFORM_AT32AP) += -march=ap
2020

2121
KBUILD_CFLAGS += $(cpuflags-y)
2222
KBUILD_AFLAGS += $(cpuflags-y)
@@ -31,6 +31,7 @@ core-$(CONFIG_BOARD_ATNGW100) += arch/avr32/boards/atngw100/
3131
core-$(CONFIG_LOADER_U_BOOT) += arch/avr32/boot/u-boot/
3232
core-y += arch/avr32/kernel/
3333
core-y += arch/avr32/mm/
34+
drivers-$(CONFIG_OPROFILE) += arch/avr32/oprofile/
3435
libs-y += arch/avr32/lib/
3536

3637
archincdir-$(CONFIG_PLATFORM_AT32AP) := arch-at32ap

arch/avr32/boards/atngw100/setup.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
#include <asm/io.h>
2121
#include <asm/setup.h>
2222

23-
#include <asm/arch/at32ap7000.h>
23+
#include <asm/arch/at32ap700x.h>
2424
#include <asm/arch/board.h>
2525
#include <asm/arch/init.h>
2626
#include <asm/arch/portmux.h>

arch/avr32/boards/atstk1000/Kconfig

Lines changed: 42 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,79 +1,105 @@
11
# STK1000 customization
22

3-
if BOARD_ATSTK1002
3+
if BOARD_ATSTK1000
44

5-
config BOARD_ATSTK1002_CUSTOM
6-
bool "Non-default STK-1002 jumper settings"
5+
choice
6+
prompt "ATSTK1000 CPU daughterboard type"
7+
default BOARD_ATSTK1002
8+
9+
config BOARD_ATSTK1002
10+
bool "ATSTK1002"
11+
select CPU_AT32AP7000
12+
13+
config BOARD_ATSTK1003
14+
bool "ATSTK1003"
15+
select CPU_AT32AP7001
16+
17+
config BOARD_ATSTK1004
18+
bool "ATSTK1004"
19+
select CPU_AT32AP7002
20+
21+
endchoice
22+
23+
24+
config BOARD_ATSTK100X_CUSTOM
25+
bool "Non-default STK1002/STK1003/STK1004 jumper settings"
726
help
827
You will normally leave the jumpers on the CPU card at their
928
default settings. If you need to use certain peripherals,
1029
you will need to change some of those jumpers.
1130

12-
if BOARD_ATSTK1002_CUSTOM
31+
if BOARD_ATSTK100X_CUSTOM
1332

14-
config BOARD_ATSTK1002_SW1_CUSTOM
33+
config BOARD_ATSTK100X_SW1_CUSTOM
1534
bool "SW1: use SSC1 (not SPI0)"
1635
help
1736
This also prevents using the external DAC as an audio interface,
1837
and means you can't initialize the on-board QVGA display.
1938

20-
config BOARD_ATSTK1002_SW2_CUSTOM
39+
config BOARD_ATSTK100X_SW2_CUSTOM
2140
bool "SW2: use IRDA or TIMER0 (not UART-A, MMC/SD, and PS2-A)"
2241
help
2342
If you change this you'll want an updated boot loader putting
2443
the console on UART-C not UART-A.
2544

26-
config BOARD_ATSTK1002_SW3_CUSTOM
45+
config BOARD_ATSTK100X_SW3_CUSTOM
2746
bool "SW3: use TIMER1 (not SSC0 and GCLK)"
2847
help
2948
This also prevents using the external DAC as an audio interface.
3049

31-
config BOARD_ATSTK1002_SW4_CUSTOM
50+
config BOARD_ATSTK100X_SW4_CUSTOM
3251
bool "SW4: use ISI/Camera (not GPIOs, SPI1, and PS2-B)"
3352
help
3453
To use the camera interface you'll need a custom card (on the
3554
PCI-format connector) connect a video sensor.
3655

3756
config BOARD_ATSTK1002_SW5_CUSTOM
3857
bool "SW5: use MACB1 (not LCDC)"
58+
depends on BOARD_ATSTK1002
3959

4060
config BOARD_ATSTK1002_SW6_CUSTOM
4161
bool "SW6: more GPIOs (not MACB0)"
62+
depends on BOARD_ATSTK1002
4263

4364
endif # custom
4465

45-
config BOARD_ATSTK1002_SPI1
66+
config BOARD_ATSTK100X_SPI1
4667
bool "Configure SPI1 controller"
47-
depends on !BOARD_ATSTK1002_SW4_CUSTOM
68+
depends on !BOARD_ATSTK100X_SW4_CUSTOM
4869
help
4970
All the signals for the second SPI controller are available on
5071
GPIO lines and accessed through the J1 jumper block. Say "y"
5172
here to configure that SPI controller.
5273

53-
config BOARD_ATSTK1002_J2_LED
74+
config BOARD_ATSTK1000_J2_LED
5475
bool
55-
default BOARD_ATSTK1002_J2_LED8 || BOARD_ATSTK1002_J2_RGB
76+
default BOARD_ATSTK1000_J2_LED8 || BOARD_ATSTK1000_J2_RGB
5677

5778
choice
5879
prompt "LEDs connected to J2:"
59-
depends on LEDS_GPIO && !BOARD_ATSTK1002_SW4_CUSTOM
80+
depends on LEDS_GPIO && !BOARD_ATSTK100X_SW4_CUSTOM
6081
optional
6182
help
6283
Select this if you have jumpered the J2 jumper block to the
6384
LED0..LED7 amber leds, or to the RGB leds, using a ten-pin
6485
IDC cable. A default "heartbeat" trigger is provided, but
6586
you can of course override this.
6687

67-
config BOARD_ATSTK1002_J2_LED8
88+
config BOARD_ATSTK1000_J2_LED8
6889
bool "LED0..LED7"
6990
help
7091
Select this if J2 is jumpered to LED0..LED7 amber leds.
7192

72-
config BOARD_ATSTK1002_J2_RGB
93+
config BOARD_ATSTK1000_J2_RGB
7394
bool "RGB leds"
7495
help
7596
Select this if J2 is jumpered to the RGB leds.
7697

7798
endchoice
7899

79-
endif # stk 1002
100+
config BOARD_ATSTK1000_EXTDAC
101+
bool
102+
depends on !BOARD_ATSTK100X_SW1_CUSTOM && !BOARD_ATSTK100X_SW3_CUSTOM
103+
default y
104+
105+
endif # stk 1000

arch/avr32/boards/atstk1000/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
obj-y += setup.o flash.o
22
obj-$(CONFIG_BOARD_ATSTK1002) += atstk1002.o
3+
obj-$(CONFIG_BOARD_ATSTK1003) += atstk1003.o
4+
obj-$(CONFIG_BOARD_ATSTK1004) += atstk1004.o

arch/avr32/boards/atstk1000/atstk1000.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,6 @@
1212

1313
extern struct atmel_lcdfb_info atstk1000_lcdc_data;
1414

15+
void atstk1000_setup_j2_leds(void);
16+
1517
#endif /* __ARCH_AVR32_BOARDS_ATSTK1000_ATSTK1000_H */

0 commit comments

Comments
 (0)