Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b91cba52 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (68 commits)
  sh: sh-rtc support for SH7709.
  sh: Revert __xdiv64_32 size change.
  sh: Update r7785rp defconfig.
  sh: Export div symbols for GCC 4.2 and ST GCC.
  sh: fix race in parallel out-of-tree build
  sh: Kill off dead mach.c for hp6xx.
  sh: hd64461.h cleanup and added comments.
  sh: Update the alignment when 4K stacks are used.
  sh: Add a .bss.page_aligned section for 4K stacks.
  sh: Don't let SH-4A clobber SH-4 CFLAGS.
  sh: Add parport stub for SuperIO ports.
  sh: Drop -Wa,-dsp for DSP tuning.
  sh: Update dreamcast defconfig.
  fb: pvr2fb: A few more __devinit annotations for PCI.
  fb: pvr2fb: Fix up section mismatch warnings.
  sh: Select IPR-IRQ for SH7091.
  sh: Correct __xdiv64_32/div64_32 return value size.
  sh: Fix timer-tmu build for SH-3.
  sh: Add cpu and mach links to CLEAN_FILES.
  sh: Preliminary support for the SH-X3 CPU.
  ...
parents 98283bb4 e509ac4b
Loading
Loading
Loading
Loading
+228 −213
Original line number Diff line number Diff line
@@ -55,8 +55,21 @@ config GENERIC_TIME
config GENERIC_CLOCKEVENTS
	def_bool n

config SYS_SUPPORTS_PM
	bool

config SYS_SUPPORTS_APM_EMULATION
	bool
	select SYS_SUPPORTS_PM

config SYS_SUPPORTS_SMP
	bool

config SYS_SUPPORTS_NUMA
	bool

config SYS_SUPPORTS_PCI
	bool

config ARCH_MAY_HAVE_PC_FDC
	bool
@@ -81,24 +94,146 @@ source "init/Kconfig"

menu "System type"

config SOLUTION_ENGINE
	bool
source "arch/sh/mm/Kconfig"

menu "Processor features"

choice
	prompt "SuperH system type"
	default SH_UNKNOWN
	prompt "Endianess selection" 
	default CPU_LITTLE_ENDIAN
	help
	  Some SuperH machines can be configured for either little or big
	  endian byte order. These modes require different kernels.

config CPU_LITTLE_ENDIAN
	bool "Little Endian"

config CPU_BIG_ENDIAN
	bool "Big Endian"

endchoice

config SH_FPU
	bool "FPU support"
	depends on CPU_SH4
	default y
	help
	  Selecting this option will enable support for SH processors that
	  have FPU units (ie, SH77xx).

	  This option must be set in order to enable the FPU.

config SH_FPU_EMU
	bool "FPU emulation support"
	depends on !SH_FPU && EXPERIMENTAL
	default n
	help
	  Selecting this option will enable support for software FPU emulation.
	  Most SH-3 users will want to say Y here, whereas most SH-4 users will
	  want to say N.

config SH_DSP
	bool "DSP support"
	default y if SH4AL_DSP || !CPU_SH4
	default n
	help
	  Selecting this option will enable support for SH processors that
	  have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).

	  This option must be set in order to enable the DSP.

config SH_ADC
	bool "ADC support"
	depends on CPU_SH3
	default y
	help
	  Selecting this option will allow the Linux kernel to use SH3 on-chip
	  ADC module.

	  If unsure, say N.

config SH_STORE_QUEUES
	bool "Support for Store Queues"
	depends on CPU_SH4
	help
	  Selecting this option will enable an in-kernel API for manipulating
	  the store queues integrated in the SH-4 processors.

config SPECULATIVE_EXECUTION
	bool "Speculative subroutine return"
	depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL
	help
	  This enables support for a speculative instruction fetch for
	  subroutine return. There are various pitfalls associated with
	  this, as outlined in the SH7780 hardware manual.

	  If unsure, say N.

config CPU_HAS_INTEVT
	bool

config CPU_HAS_PINT_IRQ
	bool

config CPU_HAS_MASKREG_IRQ
	bool

config CPU_HAS_INTC2_IRQ
	bool

config CPU_HAS_IPR_IRQ
	bool

config CPU_HAS_SR_RB
	bool "CPU has SR.RB"
	depends on CPU_SH3 || CPU_SH4
	default y
	help
	  This will enable the use of SR.RB register bank usage. Processors
	  that are lacking this bit must have another method in place for
	  accomplishing what is taken care of by the banked registers.

	  See <file:Documentation/sh/register-banks.txt> for further
	  information on SR.RB and register banking in the kernel in general.

config CPU_HAS_PTEA
	bool

endmenu

menu "Board support"

config SOLUTION_ENGINE
	bool

config SH_SOLUTION_ENGINE
	bool "SolutionEngine"
	select SOLUTION_ENGINE
	depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750
	help
	  Select SolutionEngine if configuring for a Hitachi SH7709
	  or SH7750 evaluation board.

config SH_7206_SOLUTION_ENGINE
	bool "SolutionEngine7206"
	select SOLUTION_ENGINE
	depends on CPU_SUBTYPE_SH7206
	help
	  Select 7206 SolutionEngine if configuring for a Hitachi SH7206
	  evaluation board.

config SH_7619_SOLUTION_ENGINE
	bool "SolutionEngine7619"
	select SOLUTION_ENGINE
	depends on CPU_SUBTYPE_SH7619
	help
	  Select 7619 SolutionEngine if configuring for a Hitachi SH7619
	  evaluation board.
	
config SH_7722_SOLUTION_ENGINE
	bool "SolutionEngine7722"
	select SOLUTION_ENGINE
	select CPU_SUBTYPE_SH7722
	depends on CPU_SUBTYPE_SH7722
	help
	  Select 7722 SolutionEngine if configuring for a Hitachi SH772
	  evaluation board.
@@ -106,7 +241,7 @@ config SH_7722_SOLUTION_ENGINE
config SH_7751_SOLUTION_ENGINE
	bool "SolutionEngine7751"
	select SOLUTION_ENGINE
	select CPU_SUBTYPE_SH7751
	depends on CPU_SUBTYPE_SH7751
	help
	  Select 7751 SolutionEngine if configuring for a Hitachi SH7751
	  evaluation board.
@@ -114,7 +249,8 @@ config SH_7751_SOLUTION_ENGINE
config SH_7780_SOLUTION_ENGINE
	bool "SolutionEngine7780"
	select SOLUTION_ENGINE
	select CPU_SUBTYPE_SH7780
	select SYS_SUPPORTS_PCI
	depends on CPU_SUBTYPE_SH7780
	help
	  Select 7780 SolutionEngine if configuring for a Renesas SH7780
	  evaluation board.
@@ -122,7 +258,7 @@ config SH_7780_SOLUTION_ENGINE
config SH_7300_SOLUTION_ENGINE
	bool "SolutionEngine7300"
	select SOLUTION_ENGINE
	select CPU_SUBTYPE_SH7300
	depends on CPU_SUBTYPE_SH7300
	help
	  Select 7300 SolutionEngine if configuring for a Hitachi
	  SH7300(SH-Mobile V) evaluation board.
@@ -130,7 +266,7 @@ config SH_7300_SOLUTION_ENGINE
config SH_7343_SOLUTION_ENGINE
	bool "SolutionEngine7343"
	select SOLUTION_ENGINE
	select CPU_SUBTYPE_SH7343
	depends on CPU_SUBTYPE_SH7343
	help
	  Select 7343 SolutionEngine if configuring for a Hitachi
	  SH7343 (SH-Mobile 3AS) evaluation board.
@@ -138,14 +274,14 @@ config SH_7343_SOLUTION_ENGINE
config SH_73180_SOLUTION_ENGINE
	bool "SolutionEngine73180"
	select SOLUTION_ENGINE
	select CPU_SUBTYPE_SH73180
	depends on CPU_SUBTYPE_SH73180
	help
	  Select 73180 SolutionEngine if configuring for a Hitachi
	  SH73180(SH-Mobile 3) evaluation board.

config SH_7751_SYSTEMH
	bool "SystemH7751R"
	select CPU_SUBTYPE_SH7751R
	depends on CPU_SUBTYPE_SH7751R
	help
	  Select SystemH if you are configuring for a Renesas SystemH
	  7751R evaluation board.
@@ -153,20 +289,17 @@ config SH_7751_SYSTEMH
config SH_HP6XX
	bool "HP6XX"
	select SYS_SUPPORTS_APM_EMULATION
	select HD6446X_SERIES
	depends on CPU_SUBTYPE_SH7709
	help
	  Select HP6XX if configuring for a HP jornada HP6xx.
	  More information (hardware only) at
	  <http://www.hp.com/jornada/>.

config SH_SATURN
	bool "Saturn"
	select CPU_SUBTYPE_SH7604
	help
	  Select Saturn if configuring for a SEGA Saturn.

config SH_DREAMCAST
	bool "Dreamcast"
	select CPU_SUBTYPE_SH7091
	select SYS_SUPPORTS_PCI
	depends on CPU_SUBTYPE_SH7091
	help
	  Select Dreamcast if configuring for a SEGA Dreamcast.
	  More information at
@@ -175,6 +308,7 @@ config SH_DREAMCAST

config SH_MPC1211
	bool "Interface MPC1211"
	depends on CPU_SUBTYPE_SH7751 && BROKEN
	help
	  CTP/PCI-SH02 is a CPU module computer that is produced
	  by Interface Corporation.
@@ -182,6 +316,8 @@ config SH_MPC1211

config SH_SH03
	bool "Interface CTP/PCI-SH03"
	depends on CPU_SUBTYPE_SH7751 && BROKEN
	select SYS_SUPPORTS_PCI
	help
	  CTP/PCI-SH03 is a CPU module computer that is produced
	  by Interface Corporation.
@@ -189,7 +325,8 @@ config SH_SH03

config SH_SECUREEDGE5410
	bool "SecureEdge5410"
	select CPU_SUBTYPE_SH7751R
	depends on CPU_SUBTYPE_SH7751R
	select SYS_SUPPORTS_PCI
	help
	  Select SecureEdge5410 if configuring for a SnapGear SH board.
	  This includes both the OEM SecureEdge products as well as the
@@ -197,246 +334,76 @@ config SH_SECUREEDGE5410

config SH_HS7751RVOIP
	bool "HS7751RVOIP"
	select CPU_SUBTYPE_SH7751R
	depends on CPU_SUBTYPE_SH7751R
	help
	  Select HS7751RVOIP if configuring for a Renesas Technology
	  Sales VoIP board.

config SH_7710VOIPGW
	bool "SH7710-VOIP-GW"
	select CPU_SUBTYPE_SH7710
	depends on CPU_SUBTYPE_SH7710
	help
	  Select this option to build a kernel for the SH7710 based
	  VOIP GW.

config SH_RTS7751R2D
	bool "RTS7751R2D"
	select CPU_SUBTYPE_SH7751R
	depends on CPU_SUBTYPE_SH7751R
	select SYS_SUPPORTS_PCI
	help
	  Select RTS7751R2D if configuring for a Renesas Technology
	  Sales SH-Graphics board.

config SH_HIGHLANDER
	bool "Highlander"
	depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
	select SYS_SUPPORTS_PCI

config SH_EDOSK7705
	bool "EDOSK7705"
	select CPU_SUBTYPE_SH7705
	depends on CPU_SUBTYPE_SH7705

config SH_SH4202_MICRODEV
	bool "SH4-202 MicroDev"
	select CPU_SUBTYPE_SH4_202
	depends on CPU_SUBTYPE_SH4_202
	help
	  Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
	  with an SH4-202 CPU.

config SH_LANDISK
	bool "LANDISK"
	select CPU_SUBTYPE_SH7751R
	depends on CPU_SUBTYPE_SH7751R
	select SYS_SUPPORTS_PCI
	help
	  I-O DATA DEVICE, INC. "LANDISK Series" support.

config SH_TITAN
	bool "TITAN"
	select CPU_SUBTYPE_SH7751R
	depends on CPU_SUBTYPE_SH7751R
	select SYS_SUPPORTS_PCI
	help
	  Select Titan if you are configuring for a Nimble Microsystems
	  NetEngine NP51R.

config SH_SHMIN
	bool "SHMIN"
	select CPU_SUBTYPE_SH7706
	depends on CPU_SUBTYPE_SH7706
	help
	  Select SHMIN if configuring for the SHMIN board.

config SH_7206_SOLUTION_ENGINE
	bool "SolutionEngine7206"
	select CPU_SUBTYPE_SH7206
	help
	  Select 7206 SolutionEngine if configuring for a Hitachi SH7206
	  evaluation board.

config SH_7619_SOLUTION_ENGINE
	bool "SolutionEngine7619"
	select CPU_SUBTYPE_SH7619
	help
	  Select 7619 SolutionEngine if configuring for a Hitachi SH7619
	  evaluation board.
	
config SH_LBOX_RE2
	bool "L-BOX RE2"
	select CPU_SUBTYPE_SH7751R
	depends on CPU_SUBTYPE_SH7751R
	select SYS_SUPPORTS_PCI
	help
	  Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.

config SH_UNKNOWN
	bool "BareCPU"
	help
	  "Bare CPU" aka "unknown" means an SH-based system which is not one
	  of the specific ones mentioned above, which means you need to enter
	  all sorts of stuff like CONFIG_MEMORY_START because the config
	  system doesn't already know what it is.  You get a machine vector
	  without any platform-specific code in it, so things like the RTC may
	  not work.

	  This option is for the early stages of porting to a new machine.

endchoice
endmenu

source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
source "arch/sh/boards/renesas/r7780rp/Kconfig"

source "arch/sh/mm/Kconfig"

config CF_ENABLER
	bool "Compact Flash Enabler support"
	depends on SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_SH03
	---help---
	  Compact Flash is a small, removable mass storage device introduced
	  in 1994 originally as a PCMCIA device.  If you say `Y' here, you
	  compile in support for Compact Flash devices directly connected to
	  a SuperH processor.  A Compact Flash FAQ is available at
	  <http://www.compactflash.org/faqs/faq.htm>.

	  If your board has "Directly Connected" CompactFlash at area 5 or 6,
	  you may want to enable this option.  Then, you can use CF as
	  primary IDE drive (only tested for SanDisk).

	  If in doubt, select 'N'.

choice
	prompt "Compact Flash Connection Area"
	depends on CF_ENABLER
	default CF_AREA6

config CF_AREA5
	bool "Area5"
	help
	  If your board has "Directly Connected" CompactFlash, You should
	  select the area where your CF is connected to.

	  - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
	  - "Area6" if it is connected to Area 6 (0x18000000)

	  "Area6" will work for most boards.

config CF_AREA6
	bool "Area6"

endchoice

config CF_BASE_ADDR
	hex
	depends on CF_ENABLER
	default "0xb8000000" if CF_AREA6
	default "0xb4000000" if CF_AREA5

menu "Processor features"

choice
	prompt "Endianess selection" 
	default CPU_LITTLE_ENDIAN
	help
	  Some SuperH machines can be configured for either little or big
	  endian byte order. These modes require different kernels.

config CPU_LITTLE_ENDIAN
	bool "Little Endian"

config CPU_BIG_ENDIAN
	bool "Big Endian"

endchoice

config SH_FPU
	bool "FPU support"
	depends on !CPU_SH3
	default y
	help
	  Selecting this option will enable support for SH processors that
	  have FPU units (ie, SH77xx).

	  This option must be set in order to enable the FPU.

config SH_FPU_EMU
	bool "FPU emulation support"
	depends on !SH_FPU && EXPERIMENTAL
	default n
	help
	  Selecting this option will enable support for software FPU emulation.
	  Most SH-3 users will want to say Y here, whereas most SH-4 users will
	  want to say N.

config SH_DSP
	bool "DSP support"
	default y if SH4AL_DSP || !CPU_SH4
	default n
	help
	  Selecting this option will enable support for SH processors that
	  have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).

	  This option must be set in order to enable the DSP.

config SH_ADC
	bool "ADC support"
	depends on CPU_SH3
	default y
	help
	  Selecting this option will allow the Linux kernel to use SH3 on-chip
	  ADC module.

	  If unsure, say N.

config SH_STORE_QUEUES
	bool "Support for Store Queues"
	depends on CPU_SH4
	help
	  Selecting this option will enable an in-kernel API for manipulating
	  the store queues integrated in the SH-4 processors.

config SPECULATIVE_EXECUTION
	bool "Speculative subroutine return"
	depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL
	help
	  This enables support for a speculative instruction fetch for
	  subroutine return. There are various pitfalls associated with
	  this, as outlined in the SH7780 hardware manual.

	  If unsure, say N.

config CPU_HAS_INTEVT
	bool

config CPU_HAS_PINT_IRQ
	bool

config CPU_HAS_MASKREG_IRQ
	bool

config CPU_HAS_INTC2_IRQ
	bool

config CPU_HAS_IPR_IRQ
	bool

config CPU_HAS_SR_RB
	bool "CPU has SR.RB"
	depends on CPU_SH3 || CPU_SH4
	default y
	help
	  This will enable the use of SR.RB register bank usage. Processors
	  that are lacking this bit must have another method in place for
	  accomplishing what is taken care of by the banked registers.

	  See <file:Documentation/sh/register-banks.txt> for further
	  information on SR.RB and register banking in the kernel in general.

config CPU_HAS_PTEA
	bool

endmenu

menu "Timer and clock configuration"

config SH_TMU
@@ -473,13 +440,13 @@ config SH_PCLK_FREQ
	int "Peripheral clock frequency (in Hz)"
	default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
	default "31250000" if CPU_SUBTYPE_SH7619
	default "32000000" if CPU_SUBTYPE_SH7722
	default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
			      CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
			      CPU_SUBTYPE_SH7206
	default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780 || \
			      CPU_SUBTYPE_SH7785
	default "60000000" if CPU_SUBTYPE_SH7751
	default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
	default "66000000" if CPU_SUBTYPE_SH4_202
	default "50000000"
	help
	  This option is used to specify the peripheral clock frequency.
	  This is necessary for determining the reference clock value on
@@ -487,8 +454,10 @@ config SH_PCLK_FREQ

config SH_CLK_MD
	int "CPU Mode Pin Setting"
	default 0
	depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
	default 6 if CPU_SUBTYPE_SH7206
	default 5 if CPU_SUBTYPE_SH7619
	default 0
	help
	  MD2 - MD0 pin setting.

@@ -560,6 +529,7 @@ config CRASH_DUMP

config SMP
	bool "Symmetric multi-processing support"
	depends on SYS_SUPPORTS_SMP
	---help---
	  This enables support for systems with more than one CPU. If you have
	  a system with only one CPU, like most personal computers, say N. If
@@ -584,6 +554,7 @@ config NR_CPUS
	int "Maximum number of CPUs (2-32)"
	range 2 32
	depends on SMP
	default "4" if CPU_SHX3
	default "2"
	help
	  This allows you to specify the maximum number of CPUs which this
@@ -623,6 +594,7 @@ config BOOT_LINK_OFFSET

config UBC_WAKEUP
	bool "Wakeup UBC on startup"
	depends on CPU_SH4
	help
	  Selecting this option will wakeup the User Break Controller (UBC) on
	  startup. Although the UBC is left in an awake state when the processor
@@ -651,8 +623,8 @@ menu "Bus options"
# we're not using PCMCIA, so we make it dependent on
# PCMCIA outright. -- PFM.
config ISA
	bool
	default y if PCMCIA
	def_bool y
	depends on PCMCIA && HD6446X_SERIES
	help
	  Find out whether you have ISA slots on your motherboard.  ISA is the
	  name of a bus system, i.e. the way the CPU talks to the other stuff
@@ -690,6 +662,49 @@ config SUPERHYWAY
	tristate "SuperHyway Bus support"
	depends on CPU_SUBTYPE_SH4_202

config CF_ENABLER
	bool "Compact Flash Enabler support"
	depends on SOLUTION_ENGINE || SH_SH03
	---help---
	  Compact Flash is a small, removable mass storage device introduced
	  in 1994 originally as a PCMCIA device.  If you say `Y' here, you
	  compile in support for Compact Flash devices directly connected to
	  a SuperH processor.  A Compact Flash FAQ is available at
	  <http://www.compactflash.org/faqs/faq.htm>.

	  If your board has "Directly Connected" CompactFlash at area 5 or 6,
	  you may want to enable this option.  Then, you can use CF as
	  primary IDE drive (only tested for SanDisk).

	  If in doubt, select 'N'.

choice
	prompt "Compact Flash Connection Area"
	depends on CF_ENABLER
	default CF_AREA6

config CF_AREA5
	bool "Area5"
	help
	  If your board has "Directly Connected" CompactFlash, You should
	  select the area where your CF is connected to.

	  - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
	  - "Area6" if it is connected to Area 6 (0x18000000)

	  "Area6" will work for most boards.

config CF_AREA6
	bool "Area6"

endchoice

config CF_BASE_ADDR
	hex
	depends on CF_ENABLER
	default "0xb8000000" if CF_AREA6
	default "0xb4000000" if CF_AREA5

source "arch/sh/drivers/pci/Kconfig"

source "drivers/pci/Kconfig"
@@ -707,7 +722,7 @@ source "fs/Kconfig.binfmt"
endmenu

menu "Power management options (EXPERIMENTAL)"
depends on EXPERIMENTAL
depends on EXPERIMENTAL && SYS_SUPPORTS_PM

source kernel/power/Kconfig

+5 −0
Original line number Diff line number Diff line
@@ -52,6 +52,10 @@ config EARLY_PRINTK
	  select both the EARLY_SCIF_CONSOLE and SH_STANDARD_BIOS, using
	  the kernel command line option to toggle back and forth.

config DEBUG_BOOTMEM
	depends on DEBUG_KERNEL
	bool "Debug BOOTMEM initialization"

config DEBUG_STACKOVERFLOW
	bool "Check for stack overflows"
	depends on DEBUG_KERNEL
@@ -82,6 +86,7 @@ config SH_KGDB
	bool "Include KGDB kernel debugger"
	select FRAME_POINTER
	select DEBUG_INFO
	depends on CPU_SH3 || CPU_SH4
	help
	  Include in-kernel hooks for kgdb, the Linux kernel source level
	  debugger.  See <http://kgdb.sourceforge.net/> for more information.
+58 −46
Original line number Diff line number Diff line
@@ -34,20 +34,20 @@ isa-y := $(isa-y)-nofpu
endif
endif

cflags-$(CONFIG_CPU_SH2)		:= -m2
cflags-$(CONFIG_CPU_SH2A)		:= -m2a $(call cc-option,-m2a-nofpu,)
cflags-$(CONFIG_CPU_SH3)		:= -m3
cflags-$(CONFIG_CPU_SH4)		:= -m4 \
cflags-$(CONFIG_CPU_SH2)		:= $(call cc-option,-m2,)
cflags-$(CONFIG_CPU_SH2A)		+= $(call cc-option,-m2a,) \
					   $(call cc-option,-m2a-nofpu,)
cflags-$(CONFIG_CPU_SH3)		:= $(call cc-option,-m3,)
cflags-$(CONFIG_CPU_SH4)		:= $(call cc-option,-m4,) \
	$(call cc-option,-mno-implicit-fp,-m4-nofpu)
cflags-$(CONFIG_CPU_SH4A)		:= $(call cc-option,-m4a,) $(call cc-option,-m4a-nofpu,)
cflags-$(CONFIG_CPU_SH4A)		+= $(call cc-option,-m4a,) \
					   $(call cc-option,-m4a-nofpu,)

cflags-$(CONFIG_CPU_BIG_ENDIAN)		+= -mb
cflags-$(CONFIG_CPU_LITTLE_ENDIAN)	+= -ml

cflags-y	+= $(call as-option,-Wa$(comma)-isa=$(isa-y),) -ffreestanding

cflags-$(CONFIG_SH_DSP)			+= -Wa,-dsp

cflags-$(CONFIG_MORE_COMPILE_OPTIONS)	+= \
	$(shell echo $(CONFIG_COMPILE_OPTIONS) | sed -e 's/"//g')

@@ -87,39 +87,37 @@ core-y += arch/sh/kernel/ arch/sh/mm/
core-$(CONFIG_SH_FPU_EMU)	+= arch/sh/math-emu/

# Boards
machdir-$(CONFIG_SH_SOLUTION_ENGINE)		:= se/770x
machdir-$(CONFIG_SH_7722_SOLUTION_ENGINE)	:= se/7722
machdir-$(CONFIG_SH_7751_SOLUTION_ENGINE)	:= se/7751
machdir-$(CONFIG_SH_7780_SOLUTION_ENGINE)	:= se/7780
machdir-$(CONFIG_SH_7300_SOLUTION_ENGINE)	:= se/7300
machdir-$(CONFIG_SH_7343_SOLUTION_ENGINE)	:= se/7343
machdir-$(CONFIG_SH_73180_SOLUTION_ENGINE)	:= se/73180
machdir-$(CONFIG_SH_HP6XX)			:= hp6xx
machdir-$(CONFIG_SH_SATURN)			:= saturn
machdir-$(CONFIG_SH_DREAMCAST)			:= dreamcast
machdir-$(CONFIG_SH_MPC1211)			:= mpc1211
machdir-$(CONFIG_SH_SH03)			:= sh03
machdir-$(CONFIG_SH_SECUREEDGE5410)		:= snapgear
machdir-$(CONFIG_SH_HS7751RVOIP)		:= renesas/hs7751rvoip
machdir-$(CONFIG_SH_RTS7751R2D)			:= renesas/rts7751r2d
machdir-$(CONFIG_SH_7751_SYSTEMH)		:= renesas/systemh
machdir-$(CONFIG_SH_EDOSK7705)			:= renesas/edosk7705
machdir-$(CONFIG_SH_HIGHLANDER)			:= renesas/r7780rp
machdir-$(CONFIG_SH_7710VOIPGW)			:= renesas/sh7710voipgw
machdir-$(CONFIG_SH_SH4202_MICRODEV)		:= superh/microdev
machdir-$(CONFIG_SH_LANDISK)			:= landisk
machdir-$(CONFIG_SH_TITAN)			:= titan
machdir-$(CONFIG_SH_SHMIN)			:= shmin
machdir-$(CONFIG_SH_7206_SOLUTION_ENGINE)	:= se/7206
machdir-$(CONFIG_SH_7619_SOLUTION_ENGINE)	:= se/7619
machdir-$(CONFIG_SH_LBOX_RE2)			:= lboxre2
machdir-$(CONFIG_SH_UNKNOWN)			:= unknown
machdir-$(CONFIG_SH_SOLUTION_ENGINE)		+= se/770x
machdir-$(CONFIG_SH_7722_SOLUTION_ENGINE)	+= se/7722
machdir-$(CONFIG_SH_7751_SOLUTION_ENGINE)	+= se/7751
machdir-$(CONFIG_SH_7780_SOLUTION_ENGINE)	+= se/7780
machdir-$(CONFIG_SH_7300_SOLUTION_ENGINE)	+= se/7300
machdir-$(CONFIG_SH_7343_SOLUTION_ENGINE)	+= se/7343
machdir-$(CONFIG_SH_73180_SOLUTION_ENGINE)	+= se/73180
machdir-$(CONFIG_SH_HP6XX)			+= hp6xx
machdir-$(CONFIG_SH_DREAMCAST)			+= dreamcast
machdir-$(CONFIG_SH_MPC1211)			+= mpc1211
machdir-$(CONFIG_SH_SH03)			+= sh03
machdir-$(CONFIG_SH_SECUREEDGE5410)		+= snapgear
machdir-$(CONFIG_SH_HS7751RVOIP)		+= renesas/hs7751rvoip
machdir-$(CONFIG_SH_RTS7751R2D)			+= renesas/rts7751r2d
machdir-$(CONFIG_SH_7751_SYSTEMH)		+= renesas/systemh
machdir-$(CONFIG_SH_EDOSK7705)			+= renesas/edosk7705
machdir-$(CONFIG_SH_HIGHLANDER)			+= renesas/r7780rp
machdir-$(CONFIG_SH_7710VOIPGW)			+= renesas/sh7710voipgw
machdir-$(CONFIG_SH_SH4202_MICRODEV)		+= superh/microdev
machdir-$(CONFIG_SH_LANDISK)			+= landisk
machdir-$(CONFIG_SH_TITAN)			+= titan
machdir-$(CONFIG_SH_SHMIN)			+= shmin
machdir-$(CONFIG_SH_7206_SOLUTION_ENGINE)	+= se/7206
machdir-$(CONFIG_SH_7619_SOLUTION_ENGINE)	+= se/7619
machdir-$(CONFIG_SH_LBOX_RE2)			+= lboxre2

incdir-y	:= $(notdir $(machdir-y))
incdir-$(CONFIG_SH_HP6XX)			:= hp6xx

ifneq ($(machdir-y),)
core-y				+= arch/sh/boards/$(machdir-y)/
core-y	+= $(addprefix arch/sh/boards/, \
	     $(filter-out ., $(patsubst %,%/,$(machdir-y))))
endif

# Companion chips
@@ -157,19 +155,31 @@ include/asm-sh/.cpu: $(wildcard include/config/cpu/*.h) \
#	Most boards have their own mach directories.  For the ones that
#	don't, just reference the parent directory so the semantics are
#	kept roughly the same.
#
#	When multiple boards are compiled in at the same time, preference
#	for the mach link is given to whichever has a directory for its
#	headers. However, this is only a workaround until platforms that
#	can live in the same kernel image back away from relying on the
#	mach link.

include/asm-sh/.mach: $(wildcard include/config/sh/*.h) \
		      include/config/auto.conf FORCE
	@echo -n '  SYMLINK include/asm-sh/mach -> '
	$(Q)if [ ! -d include/asm-sh ]; then mkdir -p include/asm-sh; fi
	$(Q)if [ -d $(incdir-prefix)$(incdir-y) ]; then \
		echo -e 'include/asm-sh/$(incdir-y)'; \
		ln -fsn $(incdir-prefix)$(incdir-y) \
	$(Q)rm -f include/asm-sh/mach
	$(Q)for i in $(incdir-y); do \
	if [ -d $(incdir-prefix)$$i ]; then \
		echo -n '  SYMLINK include/asm-sh/mach -> '; \
		echo -e "include/asm-sh/$$i"; \
		ln -fsn $(incdir-prefix)$$i \
			include/asm-sh/mach; \
	else \
		if [ ! -d include/asm-sh/mach ]; then \
			echo -n '  SYMLINK include/asm-sh/mach -> '; \
			echo -e 'include/asm-sh'; \
			ln -fsn $(incdir-prefix) include/asm-sh/mach; \
	fi
		fi; \
	fi; \
	done
	@touch $@

archprepare: include/asm-sh/.cpu include/asm-sh/.mach maketools
@@ -188,7 +198,9 @@ compressed: zImage
archclean:
	$(Q)$(MAKE) $(clean)=$(boot)

CLEAN_FILES += include/asm-sh/machtypes.h
CLEAN_FILES += include/asm-sh/machtypes.h \
	       include/asm-sh/cpu include/asm-sh/.cpu \
	       include/asm-sh/mach include/asm-sh/.mach

define archhelp
	@echo '* zImage 	           - Compressed kernel image'
+1 −2
Original line number Diff line number Diff line
@@ -60,7 +60,7 @@ static void __init dreamcast_setup(char **cmdline_p)
#endif
}

struct sh_machine_vector mv_dreamcast __initmv = {
static struct sh_machine_vector mv_dreamcast __initmv = {
	.mv_name		= "Sega Dreamcast",
	.mv_setup		= dreamcast_setup,
	.mv_irq_demux		= systemasic_irq_demux,
@@ -70,4 +70,3 @@ struct sh_machine_vector mv_dreamcast __initmv = {
	.mv_consistent_free	= dreamcast_consistent_free,
#endif
};
ALIAS_MV(dreamcast)

arch/sh/boards/hp6xx/mach.c

deleted100644 → 0
+0 −46
Original line number Diff line number Diff line
/*
 * linux/arch/sh/boards/hp6xx/mach.c
 *
 * Copyright (C) 2000 Stuart Menefy (stuart.menefy@st.com)
 *
 * May be copied or modified under the terms of the GNU General Public
 * License.  See linux/COPYING for more information.
 *
 * Machine vector for the HP680
 */
#include <asm/machvec.h>
#include <asm/hd64461.h>
#include <asm/io.h>
#include <asm/irq.h>

struct sh_machine_vector mv_hp6xx __initmv = {
	.mv_nr_irqs = HD64461_IRQBASE + HD64461_IRQ_NUM,

	.mv_inb = hd64461_inb,
	.mv_inw = hd64461_inw,
	.mv_inl = hd64461_inl,
	.mv_outb = hd64461_outb,
	.mv_outw = hd64461_outw,
	.mv_outl = hd64461_outl,

	.mv_inb_p = hd64461_inb_p,
	.mv_inw_p = hd64461_inw,
	.mv_inl_p = hd64461_inl,
	.mv_outb_p = hd64461_outb_p,
	.mv_outw_p = hd64461_outw,
	.mv_outl_p = hd64461_outl,

	.mv_insb = hd64461_insb,
	.mv_insw = hd64461_insw,
	.mv_insl = hd64461_insl,
	.mv_outsb = hd64461_outsb,
	.mv_outsw = hd64461_outsw,
	.mv_outsl = hd64461_outsl,

	.mv_readw = hd64461_readw,
	.mv_writew = hd64461_writew,

	.mv_irq_demux = hd64461_irq_demux,
};

ALIAS_MV(hp6xx)
Loading