History log of /arch/avr32/kernel/setup.c
Revision Date Author Comments
28f65c11f2ffb3957259dece647a24f8ad2e241b 09-Jun-2011 Joe Perches <joe@perches.com> treewide: Convert uses of struct resource to resource_size(ptr)

Several fixes as well where the +1 was missing.

Done via coccinelle scripts like:

@@
struct resource *ptr;
@@

- ptr->end - ptr->start + 1
+ resource_size(ptr)

and some grep and typing.

Mostly uncompiled, no cross-compilers.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
24a1a47562b0fbb97321191dcc3a67b337b20f8f 13-Apr-2011 Andreas Bießmann <biessmann@corscience.de> avr32: add ATAG_BOARDINFO

The ATAG_BOARDINFO is intended to hand over the information
bd->bi_board_number from u-boot to the kernel.

This piece of information can be used to implement some kind of board
identification while booting the kernel. Therefore it is placed in .initdata
section and can be accessed via the new symbol board_number only while
initializing the kernel.

Signed-off-by: Andreas Bießmann <biessmann@corscience.de>
Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
48c1fd3882286fd9e978ca8725013f2e060b700e 16-Sep-2008 Marco Stornelli <marco.stornelli@gmail.com> avr32: added mem kernel command line option support

Signed-off-by: Marco Stornelli <marco.stornelli@gmail.com>
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
3663b736a5083b3bce74520b637f630f01f66a7f 05-Aug-2008 Haavard Skinnemoen <haavard.skinnemoen@atmel.com> avr32: Use <mach/foo.h> instead of <asm/arch/foo.h>

Update all avr32-specific files to use the new platform-specific header
locations. Drivers shared with ARM are left alone for now.

Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
01d3a5e7fab7732cfc5d5d4533e9378ea435295a 28-Apr-2008 Haavard Skinnemoen <hskinnemoen@atmel.com> atmel_lcdfb: don't initialize a pre-allocated framebuffer

If the user specified a fixed framebuffer address on the command line, it may
have been initialized already with a splash image or something, so we
shouldn't clear it.

Therefore, we should only initialize the framebuffer if we allocated it
ourselves. This patch also updates the AVR32 setup code to clear the
framebuffer if it allocated it itself, i.e. the user didn't provide a fixed
address or the reservation failed.

I've updated the at91 platform code as well so that it initializes the
framebuffer if it is located in SRAM, but I haven't tested that it actually
works.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Cc: Nicolas FERRE <nicolas.ferre@rfo.atmel.com>
Cc: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
a2a395256134a24d906d5e67e03e853c580b37ed 27-Mar-2008 Haavard Skinnemoen <haavard.skinnemoen@atmel.com> avr32: Fix bug in early resource allocation code

add_reserved_region() tries to keep the resource list sorted, so when
looking for a place to insert the new resource, it may break out
before the last entry.

When this happens, the list is broken in two because the sibling field
of the new entry doesn't point to the next resource. Fix it by
updating the new resource's sibling field appropriately.

Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
72a7fe3967dbf86cb34e24fbf1d957fe24d2f246 07-Feb-2008 Bernhard Walle <bwalle@suse.de> Introduce flags for reserve_bootmem()

This patchset adds a flags variable to reserve_bootmem() and uses the
BOOTMEM_EXCLUSIVE flag in crashkernel reservation code to detect collisions
between crashkernel area and already used memory.

This patch:

Change the reserve_bootmem() function to accept a new flag BOOTMEM_EXCLUSIVE.
If that flag is set, the function returns with -EBUSY if the memory already
has been reserved in the past. This is to avoid conflicts.

Because that code runs before SMP initialisation, there's no race condition
inside reserve_bootmem_core().

[akpm@linux-foundation.org: coding-style fixes]
[akpm@linux-foundation.org: fix powerpc build]
Signed-off-by: Bernhard Walle <bwalle@suse.de>
Cc: <linux-arch@vger.kernel.org>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Vivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fe57f84efe3165a1e2ec477b256870f3d43b698a 29-Aug-2007 Matteo Vit <matteo.vit@dave.eu> [AVR32] fix command line parsing in early_parse_fbmem

Signed-off-by: Matteo Vit - Dave S.r.l. <matteo.vit@dave.eu>
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
f3e26984f1794f3472a50f330c5561766faa477b 13-Jul-2007 Robert P. J. Day <rpjday@mindspring.com> [AVR32] Correct misspelled CONFIG_BLK_DEV_INITRD variable.

Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
aa15f63790cfd4110ff57c37aa1c6c34133d8a09 13-Jul-2007 Haavard Skinnemoen <hskinnemoen@atmel.com> [AVR32] Fix build error in parse_tag_rdimg()

This code is inside an #ifdef with a misspelled config symbol, so it
hasn't been used for a long time. Fix it before fixing the config
symbol to keep bisection working.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
d80e2bb12606906fd0b5b5592f519852de8b0113 21-Mar-2007 Haavard Skinnemoen <hskinnemoen@atmel.com> [AVR32] Get rid of board_setup_fbmem()

Since the core setup code takes care of both allocation and
reservation of framebuffer memory, there's no need for this board-
specific hook anymore. Replace it with two global variables,
fbmem_start and fbmem_size, which can be used directly.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
f9692b9501c339ec90647d8cd6ee5c106f072f9f 21-Mar-2007 Haavard Skinnemoen <hskinnemoen@atmel.com> [AVR32] Reserve framebuffer memory in early_parse_fbmem()

With the current strategy of using the bootmem allocator to allocate
or reserve framebuffer memory, there's a slight chance that the
requested area has been taken by the boot allocator bitmap before we
get around to reserving it.

By inserting the framebuffer region as a reserved region as early as
possible, we improve our chances for success and we make the region
visible as a reserved region in dmesg and /proc/iomem without any
extra work.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
d8011768e6bdd0d9de5cc7bdbd3077b4b4fab8c7 21-Mar-2007 Haavard Skinnemoen <hskinnemoen@atmel.com> [AVR32] Simplify early handling of memory regions

Use struct resource to specify both physical memory regions and
reserved regions and push everything into the same framework,
including kernel code/data and initrd memory. This allows us to get
rid of many special cases in the bootmem initialization and will also
make it easier to implement more robust handling of framebuffer
memory later.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
5539f59ac40473730806580f212c4eac6e769f01 21-Mar-2007 Haavard Skinnemoen <hskinnemoen@atmel.com> [AVR32] Move setup_bootmem() from mm/init.c to kernel/setup.c

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
bf4352c0fc82e6dadfa7eea506c19dea0106baac 12-Feb-2007 Alon Bar-Lev <alon.barlev@gmail.com> [PATCH] Dynamic kernel command-line: avr32

1. Rename saved_command_line into boot_command_line.
2. Set command_line as __initdata.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
Acked-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
10b50b7dd2716b944299d45452d0875dbeb5f0c2 05-Feb-2007 Ahmed S. Darwish <darwish.07@gmail.com> [AVR32] Use ARRAY_SIZE macro when appropriate

A patch to use ARRAY_SIZE macro already defined in linux/kernel.h

Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
a6f92f3dc8e53185bae50d44b5042b9cddf7f475 04-Dec-2006 Haavard Skinnemoen <hskinnemoen@atmel.com> [AVR32] Move ethernet tag parsing to board-specific code

By moving the ethernet tag parsing to the board-specific code we avoid
the issue of figuring out which device we're supposed to attach the
information to. The board specific code knows this because it's
where the actual devices are instantiated.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
c194588dba968510b5aa7a1818bd2c8b36a416f7 04-Oct-2006 Haavard Skinnemoen <hskinnemoen@atmel.com> [PATCH] AVR32: Allow renumbering of serial devices

Allow the board to remap actual USART peripheral devices to serial
devices by calling at32_map_usart(hw_id, serial_line). This ensures
that even though ATSTK1002 uses USART1 as the first serial port, it
will still have a ttyS0 device.

This also adds a board-specific early setup hook and moves the
at32_setup_serial_console() call there from the platform code.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
5f97f7f9400de47ae837170bb274e90ad3934386 26-Sep-2006 Haavard Skinnemoen <hskinnemoen@atmel.com> [PATCH] avr32 architecture

This adds support for the Atmel AVR32 architecture as well as the AT32AP7000
CPU and the AT32STK1000 development board.

AVR32 is a new high-performance 32-bit RISC microprocessor core, designed for
cost-sensitive embedded applications, with particular emphasis on low power
consumption and high code density. The AVR32 architecture is not binary
compatible with earlier 8-bit AVR architectures.

The AVR32 architecture, including the instruction set, is described by the
AVR32 Architecture Manual, available from

http://www.atmel.com/dyn/resources/prod_documents/doc32000.pdf

The Atmel AT32AP7000 is the first CPU implementing the AVR32 architecture. It
features a 7-stage pipeline, 16KB instruction and data caches and a full
Memory Management Unit. It also comes with a large set of integrated
peripherals, many of which are shared with the AT91 ARM-based controllers from
Atmel.

Full data sheet is available from

http://www.atmel.com/dyn/resources/prod_documents/doc32003.pdf

while the CPU core implementation including caches and MMU is documented by
the AVR32 AP Technical Reference, available from

http://www.atmel.com/dyn/resources/prod_documents/doc32001.pdf

Information about the AT32STK1000 development board can be found at

http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3918

including a BSP CD image with an earlier version of this patch, development
tools (binaries and source/patches) and a root filesystem image suitable for
booting from SD card.

Alternatively, there's a preliminary "getting started" guide available at
http://avr32linux.org/twiki/bin/view/Main/GettingStarted which provides links
to the sources and patches you will need in order to set up a cross-compiling
environment for avr32-linux.

This patch, as well as the other patches included with the BSP and the
toolchain patches, is actively supported by Atmel Corporation.

[dmccr@us.ibm.com: Fix more pxx_page macro locations]
[bunk@stusta.de: fix `make defconfig']
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Dave McCracken <dmccr@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>