xref: /kernel/linux/linux-5.10/arch/m68k/68000/m68328.c (revision 8c2ecf20)
18c2ecf20Sopenharmony_ci/***************************************************************************/
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ci/*
48c2ecf20Sopenharmony_ci *  m68328.c - 68328 specific config
58c2ecf20Sopenharmony_ci *
68c2ecf20Sopenharmony_ci *  Copyright (C) 1993 Hamish Macdonald
78c2ecf20Sopenharmony_ci *  Copyright (C) 1999 D. Jeff Dionne
88c2ecf20Sopenharmony_ci *
98c2ecf20Sopenharmony_ci * This file is subject to the terms and conditions of the GNU General Public
108c2ecf20Sopenharmony_ci * License.  See the file COPYING in the main directory of this archive
118c2ecf20Sopenharmony_ci * for more details.
128c2ecf20Sopenharmony_ci *
138c2ecf20Sopenharmony_ci * VZ Support/Fixes             Evan Stawnyczy <e@lineo.ca>
148c2ecf20Sopenharmony_ci */
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci/***************************************************************************/
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ci#include <linux/init.h>
198c2ecf20Sopenharmony_ci#include <linux/types.h>
208c2ecf20Sopenharmony_ci#include <linux/kernel.h>
218c2ecf20Sopenharmony_ci#include <linux/rtc.h>
228c2ecf20Sopenharmony_ci#include <asm/machdep.h>
238c2ecf20Sopenharmony_ci#include <asm/MC68328.h>
248c2ecf20Sopenharmony_ci#if defined(CONFIG_PILOT) || defined(CONFIG_INIT_LCD)
258c2ecf20Sopenharmony_ci#include "bootlogo.h"
268c2ecf20Sopenharmony_ci#endif
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ci/***************************************************************************/
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ciint m68328_hwclk(int set, struct rtc_time *t);
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ci/***************************************************************************/
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_civoid m68328_reset (void)
358c2ecf20Sopenharmony_ci{
368c2ecf20Sopenharmony_ci  local_irq_disable();
378c2ecf20Sopenharmony_ci  asm volatile ("moveal #0x10c00000, %a0;\n\t"
388c2ecf20Sopenharmony_ci		"moveb #0, 0xFFFFF300;\n\t"
398c2ecf20Sopenharmony_ci		"moveal 0(%a0), %sp;\n\t"
408c2ecf20Sopenharmony_ci		"moveal 4(%a0), %a0;\n\t"
418c2ecf20Sopenharmony_ci		"jmp (%a0);");
428c2ecf20Sopenharmony_ci}
438c2ecf20Sopenharmony_ci
448c2ecf20Sopenharmony_ci/***************************************************************************/
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_civoid __init config_BSP(char *command, int len)
478c2ecf20Sopenharmony_ci{
488c2ecf20Sopenharmony_ci  pr_info("68328 support D. Jeff Dionne <jeff@uclinux.org>\n");
498c2ecf20Sopenharmony_ci  pr_info("68328 support Kenneth Albanowski <kjahds@kjshds.com>\n");
508c2ecf20Sopenharmony_ci  pr_info("68328/Pilot support Bernhard Kuhn <kuhn@lpr.e-technik.tu-muenchen.de>\n");
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ci  mach_hwclk = m68328_hwclk;
538c2ecf20Sopenharmony_ci  mach_reset = m68328_reset;
548c2ecf20Sopenharmony_ci}
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ci/***************************************************************************/
57