summaryrefslogtreecommitdiffstats
path: root/arch/c6x/kernel/setup.c
Commit message (Collapse)AuthorAgeFilesLines
* locking/lockdep: Eliminate lockdep_init()Andrey Ryabinin2016-02-091-2/+0
| | | | | | | | | | | | | | | Lockdep is initialized at compile time now. Get rid of lockdep_init(). Signed-off-by: Andrey Ryabinin <aryabinin@virtuozzo.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Mike Krinkin <krinkin.m.u@gmail.com> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: linux-kernel@vger.kernel.org Cc: mm-commits@vger.kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
* c6x: kernel: setup: Export symbol memory_endChen Gang2015-03-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is needed by several modules, the related error with allmodconfig: MODPOST 3327 modules ERROR: "memory_end" [net/wireless/lib80211_crypt_tkip.ko] undefined! ERROR: "memory_end" [net/sunrpc/sunrpc.ko] undefined! ERROR: "memory_end" [net/sunrpc/auth_gss/rpcsec_gss_krb5.ko] undefined! ERROR: "memory_end" [net/rxrpc/rxkad.ko] undefined! ERROR: "memory_end" [net/mac802154/mac802154.ko] undefined! ERROR: "memory_end" [net/mac80211/mac80211.ko] undefined! ERROR: "memory_end" [net/ipv6/esp6.ko] undefined! ERROR: "memory_end" [net/ipv6/ah6.ko] undefined! ERROR: "memory_end" [net/ipv4/esp4.ko] undefined! ERROR: "memory_end" [net/ipv4/ah4.ko] undefined! ERROR: "memory_end" [net/ceph/libceph.ko] undefined! ERROR: "memory_end" [net/9p/9pnet_virtio.ko] undefined! ERROR: "memory_end" [drivers/usb/wusbcore/wusbcore.ko] undefined! ERROR: "memory_end" [drivers/usb/misc/usbtest.ko] undefined! ERROR: "memory_end" [drivers/usb/core/usbcore.ko] undefined! ERROR: "memory_end" [drivers/target/target_core_file.ko] undefined! ERROR: "memory_end" [drivers/net/wireless/brcm80211/brcmfmac/brcmfmac.ko] undefined! ERROR: "memory_end" [drivers/net/wireless/ath/ath6kl/ath6kl_sdio.ko] undefined! ERROR: "memory_end" [drivers/net/virtio_net.ko] undefined! ERROR: "memory_end" [drivers/net/usb/usbnet.ko] undefined! ERROR: "memory_end" [drivers/net/ppp/ppp_mppe.ko] undefined! ERROR: "memory_end" [drivers/mtd/nand/nand.ko] undefined! ERROR: "memory_end" [drivers/mmc/card/mmc_block.ko] undefined! ERROR: "memory_end" [drivers/crypto/qce/qcrypto.ko] undefined! ERROR: "memory_end" [drivers/block/drbd/drbd.ko] undefined! ERROR: "memory_end" [drivers/block/aoe/aoe.ko] undefined! ERROR: "memory_end" [crypto/tcrypt.ko] undefined! ERROR: "memory_end" [crypto/gcm.ko] undefined! ERROR: "memory_end" [crypto/cts.ko] undefined! ERROR: "memory_end" [crypto/ccm.ko] undefined! ERROR: "memory_end" [crypto/authencesn.ko] undefined! ERROR: "memory_end" [crypto/authenc.ko] undefined! Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com> Signed-off-by: Mark Salter <msalter@redhat.com>
* c6x: kernel: setup: Add screen_info global variableChen Gang2015-03-261-0/+3
| | | | | | | | | | | | | | | | | | 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>
* c6x: kernel: setup: Remove 'const' for local variables in machine_initChen Gang2015-03-261-2/+2
| | | | | | | | | | | | | | | | | 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>
* c6x: kernel: setup: Include "linux/console.h"Chen Gang2015-03-031-1/+1
| | | | | | | | | | | | | | | | | | 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>
* c6x: convert fdt pointers to opaque pointersRob Herring2014-04-301-2/+2
| | | | | | | | | | | 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>
* c6x: use early_init_dt_scanRob Herring2013-10-091-1/+1
| | | | | | | | | 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
* c6x: use boot_command_line instead of private c6x_command_lineRob Herring2013-10-091-10/+1
| | | | | | | | | | | | | | | 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>
* C6X: add basic support for TMS320C6678 SoCKen Cox2012-07-181-0/+4
| | | | | | | | | | | | 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 C6XDavid Howells2012-03-281-0/+1
| | | | | | | | 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
* C6X: add register_cpu callMark Salter2012-01-081-0/+15
| | | | | | | | | Commit ccbc60d3e19a1b6ae66ca0d89b3da02dde62088b 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>
* C6X: deal with memblock API changesMark Salter2012-01-081-3/+0
| | | | | | | | | | | | | | | Recent memblock related commits require the following C6X changes: * commit 24aa07882b672fff2da2f5c955759f0bd13d32d5 asm/memblock.h no longer required * commit 1440c4e2c918532f39131c3330fe2226e16be7b6 memblock_analyze() no longer needed to update total size * commit fe091c208a40299fba40e62292a610fb91e44b4e memblock_init() no longer needed Signed-off-by: Mark Salter <msalter@redhat.com>
* C6X: early boot codeAurelien Jacquiot2011-10-061-0/+498
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>
OpenPOWER on IntegriCloud