Commit 8dbdef22 authored by Yoshinori Sato's avatar Yoshinori Sato
Browse files

h8300: Build scripts



h8300's Makefile, Kconfig and memory layout.

Signed-off-by: default avatarYoshinori Sato <ysato@users.sourceforge.jp>
parent a71a29de
Loading
Loading
Loading
Loading

arch/h8300/Kconfig

0 → 100644
+77 −0
Original line number Diff line number Diff line
config H8300
        def_bool y
	select GENERIC_ATOMIC64
	select HAVE_UID16
	select VIRT_TO_BUS
	select ARCH_WANT_IPC_PARSE_VERSION
	select GENERIC_IRQ_SHOW
	select FRAME_POINTER
	select GENERIC_CPU_DEVICES
	select MODULES_USE_ELF_RELA
	select GENERIC_CLOCKEVENTS
	select CLKDEV_LOOKUP
	select COMMON_CLK
	select ARCH_WANT_FRAME_POINTERS
	select OF
	select OF_IRQ
	select OF_EARLY_FLATTREE
	select HAVE_MEMBLOCK
	select HAVE_DMA_ATTRS

config RWSEM_GENERIC_SPINLOCK
	def_bool y

config GENERIC_HWEIGHT
	def_bool y

config NO_IOPORT_MAP
	def_bool y

config GENERIC_CSUM
        def_bool y

config HZ
	int
	default 100

config NR_CPUS
	int
	default 1

source "init/Kconfig"

source "kernel/Kconfig.freezer"

source "arch/h8300/Kconfig.cpu"

menu "Kernel Features"

source "kernel/Kconfig.preempt"

source "mm/Kconfig"

endmenu

menu "Executable file formats"

source "fs/Kconfig.binfmt"

endmenu

source "net/Kconfig"

source "drivers/Kconfig"

source "fs/Kconfig"

menu "Kernel hacking"

source "lib/Kconfig.debug"

endmenu

source "security/Kconfig"

source "crypto/Kconfig"

source "lib/Kconfig"

arch/h8300/Kconfig.cpu

0 → 100644
+99 −0
Original line number Diff line number Diff line
config CPU_H8300H
	bool

config CPU_H8S
	bool

config H83069
	bool
	select CPU_H8300H
	select H8300_TMR16
	select RENESAS_H8300H_INTC

config H8S2678
	bool
	select CPU_H8S
	select H8300_TPU
	select RENESAS_H8S_INTC

config RAMKERNEL
	bool

config ROMKERNEL
	bool

menu "Processor type and features"

choice
prompt "H8/300 platform"

config H8300_AE3068
	bool "AE-3068/69"
	select H83069
	select RAMKERNEL
	help
	  AKI-H8/3068F / AKI-H8/3069F Flashmicom LAN Board Support
	  More Information. (Japanese Only)
	  <http://akizukidenshi.com/catalog/default.aspx>
	  AE-3068/69 Evaluation Board Support
	  More Information.
	  <http://www.microtronique.com/ae3069lan.htm>

config H8300_H8MAX
	bool "H8MAX"
	select H83069
	select RAMKERNEL
	select HAVE_IDE
	help
	  H8MAX Evaluation Board Support
	  More Information. (Japanese Only)
	  <http://strawberry-linux.com/h8/index.html>

config H8300_KANEBEBE
	bool "KaneBebe"
	select H83069
	select RAMKERNEL
	help
	  KaneBebe Evalition Board Support
	  More Information. (Japanese Only)
	  <http://www.nissin-tech.com/2009/10/uclinuxkane-bebe-h83069f.html>

config H8300H_SIM
	bool "H8/300H GDB Simulator"
	select H83069
	select ROMKERNEL
	help
	  GDB Simulator Support
	  More Information.
	  <http://sourceware.org/sid/>

config H8S_EDOSK2674
	bool "EDOSK-2674"
	select H8S2678
	select RAMKERNEL
	help
	  Renesas EDOSK-2674 Evaluation Board Support
	  More Information.
	  <http://www.azpower.com/H8-uClinux/index.html>
	  <http://www.renesas.eu/products/tools/introductory_evaluation_tools/evaluation_development_os_kits/edosk2674r/edosk2674r_software_tools_root.jsp>

config H8S_SIM
	bool "H8S GDB Simulator"
	select H8S2678
	select ROMKERNEL
	help
	  GDB Simulator Support
	  More Information.
	  <http://sourceware.org/sid/>

endchoice

config H8300_BUILTIN_DTB
        string "Builtin DTB"
	default ""

config OFFSET
        hex "Load offset"
	default 0

endmenu

arch/h8300/Makefile

0 → 100644
+55 −0
Original line number Diff line number Diff line
#
# arch/h8300/Makefile
#
# This file is subject to the terms and conditions of the GNU General Public
# License.  See the file "COPYING" in the main directory of this archive
# for more details.
#
# (C) Copyright 2002-2015 Yoshinori Sato <ysato@users.sourceforge.jp>
#

cflags-$(CONFIG_CPU_H8300H)	:= -mh
aflags-$(CONFIG_CPU_H8300H)	:= -mh -Wa,--mach=h8300h
ldflags-$(CONFIG_CPU_H8300H)	:= -mh8300helf_linux
cflags-$(CONFIG_CPU_H8S)	:= -ms
aflags-$(CONFIG_CPU_H8S)	:= -ms -Wa,--mach=h8300s
ldflags-$(CONFIG_CPU_H8S)	:= -mh8300self_linux

KBUILD_CFLAGS += $(cflags-y)
KBUILD_CFLAGS += -mint32 -fno-builtin
KBUILD_CFLAGS += -D__linux__
KBUILD_CFLAGS += -DUTS_SYSNAME=\"uClinux\"
KBUILD_AFLAGS += $(aflags-y)
LDFLAGS += $(ldflags-y)

CROSS_COMPILE := h8300-unknown-linux-

core-y	+= arch/$(ARCH)/kernel/ arch/$(ARCH)/mm/
ifneq '$(CONFIG_H8300_BUILTIN_DTB)' '""'
core-y += arch/h8300/boot/dts/
endif

libs-y	+= arch/$(ARCH)/lib/

boot := arch/h8300/boot

%.dtb %.dtb.S %.dtb.o: | scripts
	$(Q)$(MAKE) $(build)=arch/h8300/boot/dts arch/h8300/boot/dts/$@

PHONY += dtbs
dtbs: scripts
	$(Q)$(MAKE) $(build)=arch/h8300/boot/dts

archmrproper:

archclean:
	$(Q)$(MAKE) $(clean)=$(boot)

vmlinux.srec vmlinux.bin zImage uImage.bin: vmlinux
	$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@

define archhelp
  @echo  'vmlinux.bin  - Create raw binary'
  @echo  'vmlinux.srec - Create srec binary'
  @echo  'zImage       - Compressed kernel image'
endef
+19 −0
Original line number Diff line number Diff line
#
# Makefile for the linux kernel.
#

extra-y := vmlinux.lds

obj-y := process.o traps.o ptrace.o \
	 signal.o setup.o syscalls.o \
	 irq.o entry.o dma.o

obj-$(CONFIG_ROMKERNEL) += head_rom.o
obj-$(CONFIG_RAMKERNEL) += head_ram.o

obj-$(CONFIG_MODULES) += module.o h8300_ksyms.o
obj-$(CONFIG_H8300H_SIM) += sim-console.o
obj-$(CONFIG_H8S_SIM) += sim-console.o

obj-$(CONFIG_CPU_H8300H) += ptrace_h.o
obj-$(CONFIG_CPU_H8S) += ptrace_s.o
+67 −0
Original line number Diff line number Diff line
#include <asm-generic/vmlinux.lds.h>
#include <asm/page.h>

#define ROMTOP 0x000000
#define RAMTOP 0x400000

jiffies = jiffies_64 + 4;

ENTRY(_start)

SECTIONS
{
#if defined(CONFIG_ROMKERNEL)
	. = ROMTOP;
	.vectors :
	{
	_vector = . ;
		*(.vector*)
	}
#else
	. = RAMTOP;
	_ramstart = .;
	. = . + CONFIG_OFFSET;
#endif
	_text = .;
	HEAD_TEXT_SECTION
	.text : {
	_stext = . ;
		TEXT_TEXT
		SCHED_TEXT
		LOCK_TEXT
#if defined(CONFIG_ROMKERNEL)
		*(.int_redirect)
#endif
	_etext = . ;
	}
	EXCEPTION_TABLE(16)
	NOTES
	RO_DATA_SECTION(4)
	ROMEND = .;
#if defined(CONFIG_ROMKERNEL)
	. = RAMTOP;
	_ramstart = .;
#define ADDR(x) ROMEND
#else
#endif
	_sdata = . ;
	__data_start = . ;
	RW_DATA_SECTION(0,0,0)
#if defined(CONFIG_ROMKERNEL)
#undef ADDR
#endif
	. = ALIGN(0x4) ;
	__init_begin = .;
	INIT_TEXT_SECTION(4)
	INIT_DATA_SECTION(4)
	SECURITY_INIT
	__init_end = .;
	_edata = . ;
	_begin_data = LOADADDR(.data);
	_sbss =.;
	BSS_SECTION(0, 0 ,0)
	_ebss =.;
	_ramend = .;
	_end = .;
	DISCARDS
}