sh: Kill off machvec aliases.

We now throw all of the machvecs in to .machvec.init and either
select one on the command line, or copy out the first (and
usually only) one to sh_mv. The rest are freed as usual.

This gets rid of all of the silly sh_mv aliasing and makes the
selection explicit rather than link-order dependent.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
Paul Mundt
2007-05-15 15:19:34 +09:00
committed by Paul Mundt
parent 25f8151bdc
commit 82f81f4784
32 changed files with 69 additions and 91 deletions

View File

@@ -13,7 +13,6 @@
#include <linux/types.h>
#include <linux/time.h>
#include <asm/machtypes.h>
#include <asm/machvec_init.h>
struct device;
@@ -68,4 +67,7 @@ extern struct sh_machine_vector sh_mv;
#define get_system_type() sh_mv.mv_name
#define __initmv \
__attribute_used__ __attribute__((__section__ (".machvec.init")))
#endif /* _ASM_SH_MACHVEC_H */

View File

@@ -1,19 +0,0 @@
/*
* include/asm-sh/machvec_init.h
*
* Copyright 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.
*
* This file has goodies to help simplify instantiation of machine vectors.
*/
#ifndef __SH_MACHVEC_INIT_H
#define __SH_MACHVEC_INIT_H
#define __initmv __attribute__((unused,__section__ (".machvec.init")))
#define ALIAS_MV(system) \
asm(".weak sh_mv\nsh_mv = mv_"#system );
#endif /* __SH_MACHVEC_INIT_H */