linux/arch/m68k/68000/m68EZ328.c
<<
>>
Prefs
   1/***************************************************************************/
   2
   3/*
   4 *  m68EZ328.c - 68EZ328 specific config
   5 *
   6 *  Copyright (C) 1993 Hamish Macdonald
   7 *  Copyright (C) 1999 D. Jeff Dionne
   8 *
   9 * This file is subject to the terms and conditions of the GNU General Public
  10 * License.  See the file COPYING in the main directory of this archive
  11 * for more details.
  12 */
  13
  14/***************************************************************************/
  15
  16#include <linux/init.h>
  17#include <linux/types.h>
  18#include <linux/kernel.h>
  19#include <linux/rtc.h>
  20#include <asm/pgtable.h>
  21#include <asm/machdep.h>
  22#include <asm/MC68EZ328.h>
  23#ifdef CONFIG_UCSIMM
  24#include <asm/bootstd.h>
  25#endif
  26
  27/***************************************************************************/
  28
  29int m68328_hwclk(int set, struct rtc_time *t);
  30
  31/***************************************************************************/
  32
  33void m68ez328_reset(void)
  34{
  35  local_irq_disable();
  36  asm volatile (
  37    "moveal #0x10c00000, %a0;\n"
  38    "moveb #0, 0xFFFFF300;\n"
  39    "moveal 0(%a0), %sp;\n"
  40    "moveal 4(%a0), %a0;\n"
  41    "jmp (%a0);\n"
  42    );
  43}
  44
  45/***************************************************************************/
  46
  47unsigned char *cs8900a_hwaddr;
  48static int errno;
  49
  50#ifdef CONFIG_UCSIMM
  51_bsc0(char *, getserialnum)
  52_bsc1(unsigned char *, gethwaddr, int, a)
  53_bsc1(char *, getbenv, char *, a)
  54#endif
  55
  56void __init config_BSP(char *command, int len)
  57{
  58  unsigned char *p;
  59
  60  pr_info("68EZ328 DragonBallEZ support (C) 1999 Rt-Control, Inc\n");
  61
  62#ifdef CONFIG_UCSIMM
  63  pr_info("uCsimm serial string [%s]\n", getserialnum());
  64  p = cs8900a_hwaddr = gethwaddr(0);
  65  pr_info("uCsimm hwaddr %pM\n", p);
  66
  67  p = getbenv("APPEND");
  68  if (p) strcpy(p,command);
  69  else command[0] = 0;
  70#endif
  71
  72  mach_sched_init = hw_timer_init;
  73  mach_hwclk = m68328_hwclk;
  74  mach_reset = m68ez328_reset;
  75}
  76
  77/***************************************************************************/
  78