103981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerer/***************************************************************************/ 203981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerer 31da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* 499e083747df366eb4689a550c4344bae63082de8Luis Alves * m68EZ328.c - 68EZ328 specific config 51da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 61da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Copyright (C) 1993 Hamish Macdonald 71da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Copyright (C) 1999 D. Jeff Dionne 81da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 91da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * This file is subject to the terms and conditions of the GNU General Public 101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * License. See the file COPYING in the main directory of this archive 111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * for more details. 121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */ 131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1403981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerer/***************************************************************************/ 1503981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerer 16df592eb5dc07c5df26a16318ed4bf2f96fa38a4dGeert Uytterhoeven#include <linux/init.h> 171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#include <linux/types.h> 181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#include <linux/kernel.h> 199517746131f62294ddd922bcd288415be5104c23Greg Ungerer#include <linux/rtc.h> 201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#include <asm/pgtable.h> 211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#include <asm/machdep.h> 221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#include <asm/MC68EZ328.h> 231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#ifdef CONFIG_UCSIMM 241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#include <asm/bootstd.h> 251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#endif 261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 2703981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerer/***************************************************************************/ 281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 299517746131f62294ddd922bcd288415be5104c23Greg Ungererint m68328_hwclk(int set, struct rtc_time *t); 301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 3103981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerer/***************************************************************************/ 321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 3303981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerervoid m68ez328_reset(void) 341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{ 351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds local_irq_disable(); 363448ff8967a00067cbc3b6ebe9a3741b4e72f6d0Greg Ungerer asm volatile ( 373448ff8967a00067cbc3b6ebe9a3741b4e72f6d0Greg Ungerer "moveal #0x10c00000, %a0;\n" 383448ff8967a00067cbc3b6ebe9a3741b4e72f6d0Greg Ungerer "moveb #0, 0xFFFFF300;\n" 393448ff8967a00067cbc3b6ebe9a3741b4e72f6d0Greg Ungerer "moveal 0(%a0), %sp;\n" 403448ff8967a00067cbc3b6ebe9a3741b4e72f6d0Greg Ungerer "moveal 4(%a0), %a0;\n" 413448ff8967a00067cbc3b6ebe9a3741b4e72f6d0Greg Ungerer "jmp (%a0);\n" 423448ff8967a00067cbc3b6ebe9a3741b4e72f6d0Greg Ungerer ); 431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} 441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 4503981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerer/***************************************************************************/ 4603981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerer 471da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsunsigned char *cs8900a_hwaddr; 481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsstatic int errno; 491da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 501da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#ifdef CONFIG_UCSIMM 511da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds_bsc0(char *, getserialnum) 521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds_bsc1(unsigned char *, gethwaddr, int, a) 531da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds_bsc1(char *, getbenv, char *, a) 541da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#endif 551da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 56df592eb5dc07c5df26a16318ed4bf2f96fa38a4dGeert Uytterhoevenvoid __init config_BSP(char *command, int len) 571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{ 581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds unsigned char *p; 591da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds printk(KERN_INFO "\n68EZ328 DragonBallEZ support (C) 1999 Rt-Control, Inc\n"); 611da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 621da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#ifdef CONFIG_UCSIMM 631da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds printk(KERN_INFO "uCsimm serial string [%s]\n",getserialnum()); 641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds p = cs8900a_hwaddr = gethwaddr(0); 651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds printk(KERN_INFO "uCsimm hwaddr %.2x:%.2x:%.2x:%.2x:%.2x:%.2x\n", 661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds p[0], p[1], p[2], p[3], p[4], p[5]); 671da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 681da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds p = getbenv("APPEND"); 691da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds if (p) strcpy(p,command); 701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds else command[0] = 0; 711da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#endif 720b1755160cbb17c01fceba42d55c49ec7a63671dDaniel Palmer 730b1755160cbb17c01fceba42d55c49ec7a63671dDaniel Palmer mach_sched_init = hw_timer_init; 749517746131f62294ddd922bcd288415be5104c23Greg Ungerer mach_hwclk = m68328_hwclk; 75f1353707b79cb863a7f081c77067db6280e8ce64Greg Ungerer mach_reset = m68ez328_reset; 761da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} 7703981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerer 7803981f2427c767cfcd917cb51197c43fe68ba5dbGreg Ungerer/***************************************************************************/ 79