Or can not pass building with allmodconfig:
LD init/built-in.o
drivers/built-in.o: In function `vgacon_switch':
vgacon.c:(.text+0x47f8): undefined reference to `screen_info'
vgacon.c:(.text+0x4810): undefined reference to `screen_info'
drivers/built-in.o: In function `vgacon_resize':
vgacon.c:(.text+0x4ac8): undefined reference to `screen_info'
vgacon.c:(.text+0x4acc): undefined reference to `screen_info'
drivers/built-in.o: In function `vgacon_save_screen':
vgacon.c:(.text+0x4cc8): undefined reference to `screen_info'
drivers/built-in.o:vgacon.c:(.text+0x4cd0): more undefined references to `screen_info' follow
Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
Signed-off-by: Mark Salter <msalter@redhat.com>
early_init_dt_scan() accepts "void *", the related warning:
CC arch/c6x/kernel/setup.o
arch/c6x/kernel/setup.c: In function 'machine_init':
arch/c6x/kernel/setup.c:290:21: warning: passing argument 1 of 'early_init_dt_scan' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
early_init_dt_scan(fdt);
^
In file included from arch/c6x/kernel/setup.c:19:0:
include/linux/of_fdt.h:75:13: note: expected 'void *' but argument is of type 'const void *'
extern bool early_init_dt_scan(void *params);
^
Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
Signed-off-by: Mark Salter <msalter@redhat.com>
Or c6x will cause building break for allmodconfig, the related error:
CC arch/c6x/kernel/setup.o
arch/c6x/kernel/setup.c: In function 'setup_arch':
arch/c6x/kernel/setup.c:433:2: error: 'conswitchp' undeclared (first use in this function)
conswitchp = &dummy_con;
^
arch/c6x/kernel/setup.c:433:2: note: each undeclared identifier is reported only once for each function it appears in
arch/c6x/kernel/setup.c:433:16: error: 'dummy_con' undeclared (first use in this function)
conswitchp = &dummy_con;
^
Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
[removed unnecessary #ifdef around include]
Signed-off-by: Mark Salter <msalter@redhat.com>
The architecture code does not need to access the internals of the FDT
blob, so make the pointer to it void *.
Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Mark Salter <msalter@redhat.com>
Cc: Aurelien Jacquiot <a-jacquiot@ti.com>
Cc: linux-c6x-dev@linux-c6x.org
Tested-by: Grant Likely <grant.likely@linaro.org>
Convert c6x to use new early_init_dt_scan function.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Acked-by: Mark Salter <msalter@redhat.com>
Cc: Aurelien Jacquiot <a-jacquiot@ti.com>
Cc: linux-c6x-dev@linux-c6x.org
Save some pointless copying of the kernel command line and just use
boot_command_line instead.
Also remove default_command_line as it is not referenced anywhere, and
the DT code already handles the default command line.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Tested-by: Mark Salter <msalter@redhat.com>
Acked-by: Mark Salter <msalter@redhat.com>
Cc: Aurelien Jacquiot <a-jacquiot@ti.com>
Cc: linux-c6x-dev@linux-c6x.org
Reviewed-by: Grant Likely <grant.likely@linaro.org>
This patch adds support for the TMS320C6678 SoC on an EVMC6678LE
evaluation board. The 6678 is a C66x family CPU which is very similar
to the already supported C64x CPUs with the addition of floating point
instructions.
Signed-off-by: Ken Cox <jkc@redhat.com>
Signed-off-by: Mark Salter <msalter@redhat.com>
CC: Aurelien Jacquiot <a-jacquiot@ti.com>
CC: linux-c6x-dev@linux-c6x.org
Disintegrate asm/system.h for C6X.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Mark Salter <msalter@redhat.com>
cc: linux-c6x-dev@linux-c6x.org
Commit ccbc60d3e1 requires CPU
topology information even in !SMP cases. This requires C6X to
add a call tp register_cpu() in order to avoid a panic at
boot time.
Signed-off-by: Mark Salter <msalter@redhat.com>
Recent memblock related commits require the following C6X changes:
* commit 24aa07882b
asm/memblock.h no longer required
* commit 1440c4e2c9
memblock_analyze() no longer needed to update total size
* commit fe091c208a
memblock_init() no longer needed
Signed-off-by: Mark Salter <msalter@redhat.com>
Original port to early 2.6 kernel using TI COFF toolchain.
Brought up to date by Mark Salter <msalter@redhat.com>
This patch provides the early boot code for C6X architecture. There is a
16 entry vector table which is used to direct reset and interrupt events. The
vector table entries contain a small amount of code (maximum of 8 opcodes)
which simply branches to the actual event handling code.
The head.S code simply clears BSS, setups up a few control registers, and calls
machine_init followed by start_kernel. The machine_init code in setup.c does
the early flat tree parsing (memory, commandline, etc). At setup_arch time, the
code does the usual memory setup and minimally scans the devicetree for any
needed information.
Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com>
Signed-off-by: Mark Salter <msalter@redhat.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>