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

Commit 173d6681 authored by Chris Zankel's avatar Chris Zankel Committed by Linus Torvalds
Browse files

[PATCH] xtensa: remove extra header files



The Xtensa port contained many header files that were never needed.  This
rather lengthy patch removes all those files.  Unfortunately, there were
many dependencies that needed to be updated, so this patch touches quite a
few source files.

Signed-off-by: default avatarChris Zankel <chris@zankel.net>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent fd43fe19
Loading
Loading
Loading
Loading
+3 −18
Original line number Diff line number Diff line
@@ -48,25 +48,10 @@ menu "Processor type and features"

choice
	prompt "Xtensa Processor Configuration"
	default XTENSA_CPU_LINUX_BE
	default XTENSA_VARIANT_FSF

config XTENSA_CPU_LINUX_BE
	bool "linux_be"
	---help---
	  The linux_be processor configuration is the baseline Xtensa
	  configurations included in this kernel and also used by
	  binutils, gcc, and gdb. It contains no TIE, no coprocessors,
	  and the following configuration options:

	  Code Density Option                2 Misc Special Registers
	  NSA/NSAU Instructions              128-bit Data Bus Width
	  Processor ID                       8K, 2-way I and D Caches
	  Zero-Overhead Loops                2 Inst Address Break Registers
	  Big Endian                         2 Data Address Break Registers
	  64 General-Purpose Registers       JTAG Interface and Trace Port
	  17 Interrupts                      MMU w/ TLBs and Autorefill
	  3 Interrupt Levels                 8 Autorefill Ways (I/D TLBs)
	  3 Timers                           Unaligned Exceptions
config XTENSA_VARIANT_FSF
	bool "fsf"
endchoice

config MMU
+11 −14
Original line number Diff line number Diff line
@@ -11,13 +11,13 @@
# this architecture

# Core configuration.
# (Use CPU=<xtensa_config> to use another default compiler.)
# (Use VAR=<xtensa_config> to use another default compiler.)

cpu-$(CONFIG_XTENSA_CPU_LINUX_BE)	:= linux_be
cpu-$(CONFIG_XTENSA_CPU_LINUX_CUSTOM)	:= linux_custom
variant-$(CONFIG_XTENSA_VARIANT_FSF)		:= fsf
variant-$(CONFIG_XTENSA_VARIANT_LINUX_CUSTOM)	:= custom

CPU = $(cpu-y)
export CPU
VARIANT = $(variant-y)
export VARIANT

# Platform configuration

@@ -27,8 +27,6 @@ platform-$(CONFIG_XTENSA_PLATFORM_ISS) := iss
PLATFORM = $(platform-y)
export PLATFORM

CPPFLAGS	+= $(if $(KBUILD_SRC),-I$(srctree)/include/asm-xtensa/)
CPPFLAGS	+= -Iinclude/asm
CFLAGS		+= -pipe -mlongcalls

KBUILD_DEFCONFIG := iss_defconfig
@@ -41,12 +39,12 @@ core-$(CONFIG_EMBEDDED_RAMDISK) += arch/xtensa/boot/ramdisk/

# Test for cross compiling

ifneq ($(CPU),)
ifneq ($(VARIANT),)
  COMPILE_ARCH = $(shell uname -m)

  ifneq ($(COMPILE_ARCH), xtensa)
    ifndef CROSS_COMPILE
      CROSS_COMPILE = xtensa_$(CPU)-
      CROSS_COMPILE = xtensa_$(VARIANT)-
    endif
  endif
endif
@@ -68,14 +66,13 @@ archinc := include/asm-xtensa

archprepare: $(archinc)/.platform

# Update machine cpu and platform symlinks if something which affects
# Update processor variant and platform symlinks if something which affects
# them changed.

$(archinc)/.platform: $(wildcard include/config/arch/*.h) include/config/auto.conf
	@echo '  SYMLINK $(archinc)/xtensa/config -> $(archinc)/xtensa/config-$(CPU)'
	@echo '  SYMLINK $(archinc)/variant -> $(archinc)/variant-$(VARIANT)'
	$(Q)mkdir -p $(archinc)
	$(Q)mkdir -p $(archinc)/xtensa
	$(Q)ln -fsn $(srctree)/$(archinc)/xtensa/config-$(CPU) $(archinc)/xtensa/config
	$(Q)ln -fsn $(srctree)/$(archinc)/variant-$(VARIANT) $(archinc)/variant
	@echo '  SYMLINK $(archinc)/platform -> $(archinc)/platform-$(PLATFORM)'
	$(Q)ln -fsn $(srctree)/$(archinc)/platform-$(PLATFORM) $(archinc)/platform
	@touch $@
@@ -89,7 +86,7 @@ zImage zImage.initrd: vmlinux
	$(Q)$(MAKE) $(build)=$(boot) $@

CLEAN_FILES	+= arch/xtensa/vmlinux.lds                      \
		   $(archinc)/platform $(archinc)/xtensa/config \
		   $(archinc)/platform $(archinc)/variant	\
		   $(archinc)/.platform

define archhelp
+0 −3
Original line number Diff line number Diff line

#include <xtensa/config/specreg.h>
#include <xtensa/config/core.h>

#include <asm/bootparam.h>


+25 −12
Original line number Diff line number Diff line

#define _ASMLANGUAGE
#include <xtensa/config/specreg.h>
#include <xtensa/config/core.h>
#include <xtensa/cacheasm.h>

#include <asm/variant/core.h>
#include <asm/regs.h>
#include <asm/asmmacro.h>
#include <asm/cacheasm.h>
	/*
	 * RB-Data: RedBoot data/bss
	 * P:	    Boot-Parameters
@@ -77,8 +75,14 @@ _start:
	/* Note: The assembler cannot relax "addi a0, a0, ..." to an
	   l32r, so we load to a4 first. */

	addi	a4, a0, __start - __start_a0
	mov	a0, a4
	# addi	a4, a0, __start - __start_a0
	# mov	a0, a4

	movi	a4, __start
	movi	a5, __start_a0
	add	a4, a0, a4
	sub	a0, a4, a5

	movi	a4, __start
	movi	a5, __reloc_end

@@ -106,9 +110,13 @@ _start:
	/* We have to flush and invalidate the caches here before we jump. */

#if XCHAL_DCACHE_IS_WRITEBACK
	dcache_writeback_all  a5, a6

	___flush_dcache_all a5 a6

#endif
	icache_invalidate_all a5, a6

	___invalidate_icache_all a5 a6
	isync

	movi	a11, _reloc
	jx	a11
@@ -209,9 +217,14 @@ _reloc:
	/* jump to the kernel */
2:
#if XCHAL_DCACHE_IS_WRITEBACK
	dcache_writeback_all a5, a6

	___flush_dcache_all a5 a6

#endif
	icache_invalidate_all a5, a6

	___invalidate_icache_all a5 a6

	isync

	movi	a5, __start
	movi	a3, boot_initrd_start
+1 −5
Original line number Diff line number Diff line
@@ -53,11 +53,7 @@ CONFIG_CC_ALIGN_JUMPS=0
#
# Processor type and features
#
CONFIG_XTENSA_ARCH_LINUX_BE=y
# CONFIG_XTENSA_ARCH_LINUX_LE is not set
# CONFIG_XTENSA_ARCH_LINUX_TEST is not set
# CONFIG_XTENSA_ARCH_S5 is not set
# CONFIG_XTENSA_CUSTOM is not set
CONFIG_XTENSA_VARIANT_FSF=y
CONFIG_MMU=y
# CONFIG_XTENSA_UNALIGNED_USER is not set
# CONFIG_PREEMPT is not set
Loading