提交 50373c1b 编写于 作者: P Paul Mundt 提交者: Linus Torvalds

[PATCH] sh: unknown mach-type updates

Trivial cleanup of the unknown machine type for some of the recent machvec
changes.
Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 de02797a
......@@ -2,5 +2,5 @@
# Makefile for unknown SH boards
#
obj-y := mach.o io.o setup.o
obj-y := setup.o
/*
* linux/arch/sh/kernel/io_unknown.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.
*
* I/O routine for unknown hardware.
*/
static unsigned int unknown_handler(void)
{
return 0;
}
#define UNKNOWN_ALIAS(fn) \
void unknown_##fn(void) __attribute__ ((alias ("unknown_handler")));
UNKNOWN_ALIAS(inb)
UNKNOWN_ALIAS(inw)
UNKNOWN_ALIAS(inl)
UNKNOWN_ALIAS(outb)
UNKNOWN_ALIAS(outw)
UNKNOWN_ALIAS(outl)
UNKNOWN_ALIAS(inb_p)
UNKNOWN_ALIAS(inw_p)
UNKNOWN_ALIAS(inl_p)
UNKNOWN_ALIAS(outb_p)
UNKNOWN_ALIAS(outw_p)
UNKNOWN_ALIAS(outl_p)
UNKNOWN_ALIAS(insb)
UNKNOWN_ALIAS(insw)
UNKNOWN_ALIAS(insl)
UNKNOWN_ALIAS(outsb)
UNKNOWN_ALIAS(outsw)
UNKNOWN_ALIAS(outsl)
UNKNOWN_ALIAS(readb)
UNKNOWN_ALIAS(readw)
UNKNOWN_ALIAS(readl)
UNKNOWN_ALIAS(writeb)
UNKNOWN_ALIAS(writew)
UNKNOWN_ALIAS(writel)
UNKNOWN_ALIAS(isa_port2addr)
UNKNOWN_ALIAS(ioremap)
UNKNOWN_ALIAS(iounmap)
/*
* linux/arch/sh/kernel/mach_unknown.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 specific code for an unknown machine (internal peripherials only)
*/
#include <linux/config.h>
#include <linux/init.h>
#include <asm/machvec.h>
#include <asm/machvec_init.h>
#include <asm/io_unknown.h>
#include <asm/rtc.h>
/*
* The Machine Vector
*/
struct sh_machine_vector mv_unknown __initmv = {
#if defined(CONFIG_CPU_SH4)
.mv_nr_irqs = 48,
#elif defined(CONFIG_CPU_SUBTYPE_SH7708)
.mv_nr_irqs = 32,
#elif defined(CONFIG_CPU_SUBTYPE_SH7709)
.mv_nr_irqs = 61,
#endif
.mv_inb = unknown_inb,
.mv_inw = unknown_inw,
.mv_inl = unknown_inl,
.mv_outb = unknown_outb,
.mv_outw = unknown_outw,
.mv_outl = unknown_outl,
.mv_inb_p = unknown_inb_p,
.mv_inw_p = unknown_inw_p,
.mv_inl_p = unknown_inl_p,
.mv_outb_p = unknown_outb_p,
.mv_outw_p = unknown_outw_p,
.mv_outl_p = unknown_outl_p,
.mv_insb = unknown_insb,
.mv_insw = unknown_insw,
.mv_insl = unknown_insl,
.mv_outsb = unknown_outsb,
.mv_outsw = unknown_outsw,
.mv_outsl = unknown_outsl,
.mv_readb = unknown_readb,
.mv_readw = unknown_readw,
.mv_readl = unknown_readl,
.mv_writeb = unknown_writeb,
.mv_writew = unknown_writew,
.mv_writel = unknown_writel,
.mv_ioremap = unknown_ioremap,
.mv_iounmap = unknown_iounmap,
.mv_isa_port2addr = unknown_isa_port2addr,
};
ALIAS_MV(unknown)
......@@ -7,10 +7,20 @@
* License. See linux/COPYING for more information.
*
* Setup code for an unknown machine (internal peripherials only)
*
* This is the simplest of all boards, and serves only as a quick and dirty
* method to start debugging a new board during bring-up until proper board
* setup code is written.
*/
#include <linux/config.h>
#include <linux/init.h>
#include <asm/machvec.h>
#include <asm/irq.h>
struct sh_machine_vector mv_unknown __initmv = {
.mv_nr_irqs = NR_IRQS,
};
ALIAS_MV(unknown)
const char *get_system_type(void)
{
......
......@@ -186,7 +186,7 @@ static inline void parse_cmdline (char ** cmdline_p, char mv_name[MV_NAME_SIZE],
static int __init sh_mv_setup(char **cmdline_p)
{
#if defined(CONFIG_SH_UNKNOWN)
#ifdef CONFIG_SH_UNKNOWN
extern struct sh_machine_vector mv_unknown;
#endif
struct sh_machine_vector *mv = NULL;
......@@ -196,7 +196,7 @@ static int __init sh_mv_setup(char **cmdline_p)
parse_cmdline(cmdline_p, mv_name, &mv, &mv_io_base, &mv_mmio_enable);
#ifdef CONFIG_SH_GENERIC
#ifdef CONFIG_SH_UNKNOWN
if (mv == NULL) {
mv = &mv_unknown;
if (*mv_name != '\0') {
......@@ -206,9 +206,6 @@ static int __init sh_mv_setup(char **cmdline_p)
}
sh_mv = *mv;
#endif
#ifdef CONFIG_SH_UNKNOWN
sh_mv = mv_unknown;
#endif
/*
* Manually walk the vec, fill in anything that the board hasn't yet
......@@ -231,10 +228,8 @@ static int __init sh_mv_setup(char **cmdline_p)
mv_set(readb); mv_set(readw); mv_set(readl);
mv_set(writeb); mv_set(writew); mv_set(writel);
mv_set(ioremap);
mv_set(iounmap);
mv_set(isa_port2addr);
mv_set(ioport_map);
mv_set(ioport_unmap);
mv_set(irq_demux);
#ifdef CONFIG_SH_UNKNOWN
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册