summaryrefslogtreecommitdiff
path: root/arch/m68k
AgeCommit message (Collapse)Author
2016-01-20m68k: M54418TWR: drop board/freescale/m54418twr/config.mkMasahiro Yamada
The board/freescale/m54418twr/config.mk defined TEXT_BASE, which has the same value as CONFIG_SYS_TEXT_BASE. The TEXT_BASE is referenced by two files: - arch/m68k/cpu/mcf5445x/start.S and include/ - include/configs/M54418TWR.h Replace the references with CONFIG_SYS_TEXT_BASE and delete board/freescale/m54418twr/config.mk. Signed-off-by: Masahiro Yamada <[email protected]> Acked-by: Angelo Dureghello <angelo at sysam.it>
2016-01-19Add more SPDX-License-Identifier tagsTom Rini
In a number of places we had wordings of the GPL (or LGPL in a few cases) license text that were split in such a way that it wasn't caught previously. Convert all of these to the correct SPDX-License-Identifier tag. Signed-off-by: Tom Rini <[email protected]>
2015-12-13m68k: add private libgcc[email protected]
Add private libgcc Signed-off-by: Angelo Dureghello <[email protected]>
2015-11-09Replace "extern inline" with "static inline"Måns Rullgård
A number of headers define functions as "extern inline" which is causing problems with gcc5. The reason is that starting with version 5.1, gcc defaults to the standard C99 semantics for the inline keyword. Under the traditional GNU inline semantics, an "extern inline" function would never create an external definition, the same as inline *without* extern in C99. In C99, and "extern inline" definition is simply an external definition with an inline hint. In short, the meanings of inline with and without extern are swapped between GNU and C99. The upshot is that all these definitions in header files create an external definition wherever those headers are included, resulting in multiple definition errors at link time. Changing all these functions to "static inline" fixes the problem since this works as desired in all gcc versions. Although the semantics are slightly different (a static inline definition may result in an actual function being emitted), it works as intended in practice. This patch also removes extern prototype declarations for the changed functions where they existed. Signed-off-by: Mans Rullgard <[email protected]>
2015-11-05m68k: Use the generic bitops headersFabio Estevam
The generic bitops headers are required when calling logarithmic functions, such as ilog2(). Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Heiko Schocher <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2015-08-12m68k: cache: add an empty stub functions for invalidate/flush dcacheWu, Josh
Since some driver like ohci, lcd used dcache functions. But m68k don't implement the invalidate_dcache_range()/flush_dcache_range() functions. To avoid compiling errors this patch adds an weak empty stub function for all m68k cpu. Also each cpu can implement its own implementation. If not implemented then by default is using an empty function. Signed-off-by: Josh Wu <[email protected]> Acked-by: Angelo Dureghello <[email protected]>
2015-05-12arch: Make board selection choices optionalJoe Hershberger
By making the board selections optional, every defconfig will include the board selection when running savedefconfig so if a new board is added to the top of the list of choices the former top's defconfig will still be correct. Signed-off-by: Joe Hershberger <[email protected]> Cc: Masahiro Yamada <[email protected]> Acked-by: Stephen Warren <[email protected]> Cc: Tom Rini <[email protected]>
2015-04-23m68k: add architecture-specific u-boot.lds[email protected]
Add architecture-specific u-boot.lds and remove all board-specific u-boot.lds. All the .text customization that was board-specific have been moved inside the related include/configs, inside a LDS_BOARD_TEXT define. Signed-off-by: Angelo Dureghello <[email protected]>
2015-03-28m68k: merge per-CPU config.mk into arch/m68k/MakefileMasahiro Yamada
Collect CPU specific flags into the single place. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Alison Wang <[email protected]> Cc: Angelo Dureghello <[email protected]>
2015-03-28m68k: mcf547x_8x: move CPU type to Kconfig and refactor config.mkMasahiro Yamada
Move the CPU type config options from include/configs/*.h to arch/m68k/Kconfig and refactor the CPU flags select in arch/m68k/cpu/mcf547x_8x/config.mk. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Alison Wang <[email protected]> Cc: Angelo Dureghello <[email protected]>
2015-03-28m68k: mcf523x: move CPU type to Kconfig and refactor config.mkMasahiro Yamada
Move the CPU type config options from include/configs/M5235EVB.h to arch/m68k/Kconfig and refactor the CPU flags select in arch/m68k/cpu/mcf523x/config.mk. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Alison Wang <[email protected]> Cc: Angelo Dureghello <[email protected]>
2015-03-28m68k: mcf5227x: move CPU type to Kconfig and refactor config.mkMasahiro Yamada
Move the CPU type config options from include/configs/M52277EVB.h to arch/m68k/Kconfig and refactor the CPU flags select in arch/m68k/cpu/mcf5227x/config.mk. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Alison Wang <[email protected]> Cc: Angelo Dureghello <[email protected]>
2015-03-28m68k: mcf5445x: move CPU type to Kconfig and refactor config.mkMasahiro Yamada
This commit intends to stop grepping CPU type in arch/m68k/cpu/mcf5445x/config.mk. Move the CPU type config options from include/configs/*.h to arch/m68k/Kconfig and refactor the CPU flags select in arch/m68k/cpu/mcf5445x/config.mk. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Alison Wang <[email protected]> Cc: Angelo Dureghello <[email protected]>
2015-03-28m68k: mcf532x: move CPU type to Kconfig and refactor config.mkMasahiro Yamada
This commit intends to stop grepping CPU type in arch/m68k/cpu/mcf532x/config.mk. Move the CPU type config options from include/configs/*.h to arch/m68k/Kconfig and refactor the CPU flags select in arch/m68k/cpu/mcf532x/config.mk. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Alison Wang <[email protected]> Cc: Angelo Dureghello <[email protected]>
2015-03-28m68k: mcf530x: move CPU type to Kconfig and refactor config.mkMasahiro Yamada
This commit intends to stop grepping CPU type in arch/m68k/cpu/mcf530x/config.mk. Move the CPU type config options from include/configs/amcore.h to arch/m68k/Kconfig and refactor the CPU flags select in arch/m68k/cpu/mcf530x/config.mk. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Alison Wang <[email protected]> Cc: Angelo Dureghello <[email protected]>
2015-03-28m68k: mcf52x2: move CPU type to Kconfig and refactor config.mkMasahiro Yamada
This commit intends to stop grepping CPU type in arch/m68k/cpu/mcf52x2/config.mk. Move the CPU type config options from include/configs/*.h to arch/m68k/Kconfig and refactor the CPU flags select in arch/m68k/cpu/mcf52x2/config.mk. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Alison Wang <[email protected]> Cc: Angelo Dureghello <[email protected]>
2015-03-28m68k: remove arch/m68k/lib/board.cMasahiro Yamada
All the M68000 boards have switched to Generic Board. This file is no longer necessary. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Huan Wang <[email protected]> Cc: Angelo Dureghello <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2015-03-28generic-board: select SYS_GENERIC_BOARD for some architecturesMasahiro Yamada
We have done with the generic board conversion for all the boards of ARC, Blackfin, M68000, MicroBlaze, MIPS, NIOS2, Sandbox, X86. Let's select SYS_GENERIC_BOARD for those architectures, so we can tell which architecture has finished the conversion at a glance. Signed-off-by: Masahiro Yamada <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Alexey Brodkin <[email protected]>
2015-03-28generic-board: move __HAVE_ARCH_GENERIC_BOARD to KconfigMasahiro Yamada
Move the option to Kconfig renaming it to CONFIG_HAVE_GENERIC_BOARD. Signed-off-by: Masahiro Yamada <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Alexey Brodkin <[email protected]>
2015-03-05m68k: add generic-board support[email protected]
Add generic-board support for the m68k architecture. Signed-off-by: Angelo Dureghello <[email protected]>
2015-03-05m68k: add mcf5307 cpu support[email protected]
Add Freescale MCF5307 cpu support. Signed-off-by: Angelo Dureghello <[email protected]>
2015-03-05m68k: add amcore board support[email protected]
Add Sysam Amcore m68k-based board support. Signed-off-by: Angelo Dureghello <[email protected]>
2015-01-13m68k: remove TASREG boardMatthias Fuchs
Signed-off-by: Matthias Fuchs <[email protected]> Acked-by: Stefan Roese <[email protected]>
2014-12-08Kbuild: introduce Makefile in arch/$ARCH/Daniel Schwierzeck
Introduce a Makefile under arch/$ARCH/ and include it in the top Makefile (similar to Linux kernel). This allows further refactoringi like moving architecture-specific code out of global makefiles, deprecating config variables (CPU, CPUDIR, SOC) or deprecating arch/$ARCH/config.mk. In contrary to Linux kernel, U-Boot defines the ARCH variable by Kconfig, thus the arch Makefile can only included conditionally after the top config.mk. Signed-off-by: Daniel Schwierzeck <[email protected]> Acked-by: Masahiro Yamada <[email protected]>
2014-09-13kconfig: remove redundant "string" type in arch and board KconfigsMasahiro Yamada
Now the types of CONFIG_SYS_{ARCH, CPU, SOC, VENDOR, BOARD, CONFIG_NAME} are specified in arch/Kconfig. We can delete the ones in arch and board Kconfig files. This commit can be easily reproduced by the following command: find . -name Kconfig -a ! -path ./arch/Kconfig | xargs sed -i -e ' /config[[:space:]]SYS_\(ARCH\|CPU\|SOC\|\VENDOR\|BOARD\|CONFIG_NAME\)/ { N s/\n[[:space:]]*string// } ' Signed-off-by: Masahiro Yamada <[email protected]>
2014-07-30kconfig: delete redundant CONFIG_${ARCH} definitionMasahiro Yamada
CONFIG_${ARCH} is defined by Kconfig. Signed-off-by: Masahiro Yamada <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2014-07-30kconfig: switch to KconfigMasahiro Yamada
This commit enables Kconfig. Going forward, we use Kconfig for the board configuration. mkconfig will never be used. Nor will include/config.mk be generated. Kconfig must be adjusted for U-Boot because our situation is a little more complicated than Linux Kernel. We have to generate multiple boot images (Normal, SPL, TPL) from one source tree. Each image needs its own configuration input. Usage: Run "make <board>_defconfig" to do the board configuration. It will create the .config file and additionally spl/.config, tpl/.config if SPL, TPL is enabled, respectively. You can use "make config", "make menuconfig" etc. to create a new .config or modify the existing one. Use "make spl/config", "make spl/menuconfig" etc. for spl/.config and do likewise for tpl/.config file. The generic syntax of configuration targets for SPL, TPL is: <target_image>/<config_command> Here, <target_image> is either 'spl' or 'tpl' <config_command> is 'config', 'menuconfig', 'xconfig', etc. When the configuration is done, run "make". (Or "make <board>_defconfig all" will do the configuration and build in one time.) For futher information of how Kconfig works in U-Boot, please read the comment block of scripts/multiconfig.py. By the way, there is another item worth remarking here: coexistence of Kconfig and board herder files. Prior to Kconfig, we used C headers to define a set of configs. We expect a very long term to migrate from C headers to Kconfig. Two different infractructure must coexist in the interim. In our former configuration scheme, include/autoconf.mk was generated for use in makefiles. It is still generated under include/, spl/include/, tpl/include/ directory for the Normal, SPL, TPL image, respectively. Signed-off-by: Masahiro Yamada <[email protected]> Acked-by: Simon Glass <[email protected]>
2014-07-30kconfig: add board Kconfig and defconfig filesMasahiro Yamada
This commit adds: - arch/${ARCH}/Kconfig provide a menu to select target boards - board/${VENDOR}/${BOARD}/Kconfig or board/${BOARD}/Kconfig set CONFIG macros to the appropriate values for each board - configs/${TARGET_BOARD}_defconfig default setting of each board (This commit was automatically generated by a conversion script based on boards.cfg) In Linux Kernel, defconfig files are located under arch/${ARCH}/configs/ directory. It works in Linux Kernel since ARCH is always given from the command line for cross compile. But in U-Boot, ARCH is not given from the command line. Which means we cannot know ARCH until the board configuration is done. That is why all the "*_defconfig" files should be gathered into a single directory ./configs/. Signed-off-by: Masahiro Yamada <[email protected]> Acked-by: Simon Glass <[email protected]>
2014-07-22m68k: define __kernel_size_t as unsinged int againMasahiro Yamada
Commit ddc94378d changed the definition of __kernel_size_t from unsigned int to unsigned long. It is true that it fixed warnings on some crosstools but it increased warnings on the others. The problem is that we cannot see consistency in terms of the typedef of __kernel_size_t on M68K architecture. However, I'd like to suggest to have __kernel_size_t to be unsigned int again. Rationale: [1] Linux Kernel defines __kernel_size_t on M68K as unsigned int. Let's stick to the Linux's way. [2] We want to build boards with popular pre-built toolchains, not the one locally-built by indivisuals. I think m68-linux-gcc which can be downloaded from www.kernel.org is the candidate for our _recommended_ toolchains. With this patch, all the m68k boards can be built without any warnings. Give it a try with the following crosstools: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.6.3/ x86_64-gcc-4.6.3-nolibc_m68k-linux.tar.xz or https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.9.0/ x86_64-gcc-4.9.0-nolibc_m68k-linux.tar.xz (The latter is newer.) Signed-off-by: Masahiro Yamada <[email protected]> Cc: Simon Glass <[email protected]> Cc: Jason Jin <[email protected]>
2014-07-07m68k: Fix incorrect memory access on M5235Vasili Galka
The csarX and cscrX registers in the fbcs_t struct are 16-bit for CONFIG_M5235 and 32-bit wide otherwise. The code in cpu_init.c accessed them always as 32-bit, effectively creating a wrong memory access on M5235. Fixed that by choosing out_be16/out_be32 depending on whether CONFIG_M5235 is defined or not. Cc: Jason Jin <[email protected]> Signed-off-by: Vasili Galka <[email protected]>
2014-07-07m68k: Fix bug, "address of" operator was forgottenVasili Galka
in_be16() shall be passed a pointer to register and not its value. This is clearly a typo resulting in a wrong memory access, so fix it. Cc: Alison Wang <[email protected]>, Jason Jin <[email protected]> Signed-off-by: Vasili Galka <[email protected]>
2014-06-19m68k: Remove CONFIG_CMD_BEDBUG related codeVasili Galka
This flag does not compile on m68k since 2003 (8bde7f7) when a required "cmd_bedbug.h" header was removed. Eleven years passed, lets clean up a little... Signed-off-by: Vasili Galka <[email protected]>
2014-06-19m68k:correct io macros about endianChao Fu
M68k is big endian cpu ,so use be_out and be_in in big endian. Signed-off-by: Chao Fu <[email protected]>
2014-06-19m68k: eliminate a warning in cpu_initMasahiro Yamada
Signed-off-by: Masahiro Yamada <[email protected]>
2014-06-11m68k: Fix warnings with gcc 4.6Simon Glass
Most of the warnings seem to be related to using 'int' for size_t. Change this and fix up the remaining warnings and problems. For bootm, the warning was masked by others, and there is an actual bug in the code. Signed-off-by: Simon Glass <[email protected]>
2014-05-29m68k: powerpc: Clean up do_mdm_initSimon Glass
This code seems unnecessarily complex. We really just need to check the global_data. Now that is it all in one place, and not arch-specific, this is pretty easy. Signed-off-by: Simon Glass <[email protected]>
2014-05-12bd_info: remove bi_barudrate member from struct bd_infoMasahiro Yamada
gd->bd->bi_baudrate is a copy of gd->baudrate. Since baudrate is a common feature for all architectures, keep gd->baudrate only. It is true that bi_baudrate was passed to the kernel in that structure but it was a long time ago. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Tom Rini <[email protected]> Cc: Simon Glass <[email protected]> Cc: Wolfgang Denk <[email protected]> Cc: Heiko Schocher <[email protected]> Acked-by: Michal Simek <[email protected]> (For microblaze)
2014-03-12kbuild: rename OBJTREE to objtreeMasahiro Yamada
Prior to Kbuild, $(OBJTREE) was used for pointing to the top of build directory with absolute path. In Kbuild style, $(objtree) is used instead. This commit renames OBJTREE to objtree and delete the defition of OBJTREE. Signed-off-by: Masahiro Yamada <[email protected]>
2014-03-12kbuild: rename TOPDIR to stctreeMasahiro Yamada
Prior to Kbuild, $(TOPDIR) or $(SRCTREE) was used for pointing to the top of source directory. (No difference between the two.) In Kbuild style, $(srctree) is used instead. This commit renames TOPDIR to srctree and delete the defition of TOPDIR. Signed-off-by: Masahiro Yamada <[email protected]>
2014-03-04kbuild: fix CROSS_COMPILE settings in config.mkMasahiro Yamada
The syntax CROSS_COMIPLE ?= <cross_compiler_prefix> does not work because config.mk is parsed after exporting CROSS_COMPILE. Like Linux Kernel's arch/$(ARCH)/Makefile, we must write as follows: ifeq ($(CROSS_COMPILE),) CROSS_COMPILE := <cross_compiler_prefix> endif Signed-off-by: Masahiro Yamada <[email protected]>
2014-03-04m68k: merge compile flags -ffixed-d7 -sep-dataMasahiro Yamada
All arch/m68k/cpu/*/config.mk define the same flags PLAGFORM_REFLFLAGS += -ffixed-d7 -msep-data Move it to arch/m68k/config.mk Signed-off-by: Masahiro Yamada <[email protected]> Cc: Jason Jin <[email protected]>
2014-02-19kbuild: use Linux Kernel build scriptsMasahiro Yamada
Now we are ready to switch over to real Kbuild. This commit disables temporary scripts: scripts/{Makefile.build.tmp, Makefile.host.tmp} and enables real Kbuild scripts: scripts/{Makefile.build,Makefile.host,Makefile.lib}. This switch is triggered by the line in scripts/Kbuild.include -build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build.tmp obj +build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build obj We need to adjust some build scripts for U-Boot. But smaller amount of modification is preferable. Additionally, we need to fix compiler flags which are locally added or removed. In Kbuild, it is not allowed to change CFLAGS locally. Instead, ccflags-y, asflags-y, cppflags-y, CFLAGS_$(basetarget).o, CFLAGS_REMOVE_$(basetarget).o are prepared for that purpose. Signed-off-by: Masahiro Yamada <[email protected]> Tested-by: Gerhard Sittig <[email protected]>
2013-11-08include: delete include/linux/config.hMasahiro Yamada
Linux Kernel abolished include/linux/config.h long time ago. (around version v2.6.18..v2.6.19) We don't need to provide Linux copatibility any more. This commit deletes include/linux/config.h and fixes source files not to include this. Signed-off-by: Masahiro Yamada <[email protected]>
2013-11-01m68k: convert makefiles to Kbuild styleMasahiro Yamada
Signed-off-by: Masahiro Yamada <[email protected]> Cc: Jason Jin <[email protected]>
2013-10-14Coding Style cleanup: replace leading SPACEs by TABsWolfgang Denk
Signed-off-by: Wolfgang Denk <[email protected]> [trini: Drop changes for PEP 4 following python tools] Signed-off-by: Tom Rini <[email protected]>
2013-10-14Coding Style cleanup: remove trailing white spaceWolfgang Denk
Signed-off-by: Wolfgang Denk <[email protected]>
2013-07-24Merge branch 'master' of git://git.denx.de/u-boot-i2cTom Rini
The sandburst-specific i2c drivers have been deleted, conflict was just over the SPDX conversion. Conflicts: board/sandburst/common/ppc440gx_i2c.c board/sandburst/common/ppc440gx_i2c.h Signed-off-by: Tom Rini <[email protected]>
2013-07-24Add GPL-2.0+ SPDX-License-Identifier to source filesWolfgang Denk
Signed-off-by: Wolfgang Denk <[email protected]> [trini: Fixup common/cmd_io.c] Signed-off-by: Tom Rini <[email protected]>
2013-07-23i2c, fsl_i2c: switch to new multibus/multiadapter supportHeiko Schocher
- added to fsl_i2c driver new multibus/multiadpater support - adapted all config files, which uses this driver Signed-off-by: Heiko Schocher <[email protected]> Cc: Simon Glass <[email protected]> Cc: Stephen Warren <[email protected]>
2013-07-23i2c, soft-i2c: switch to new multibus/multiadapter supportHeiko Schocher
- added to soft_i2c driver new multibus/multiadpater support - adapted all config files, which uses this driver Signed-off-by: Heiko Schocher <[email protected]> Cc: Simon Glass <[email protected]> Cc: Stephen Warren <[email protected]>