blob: d04f31df502116c4e6b9f8eae846df986439a99c [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001// SPDX-License-Identifier: GPL-2.0+
Eran Liberty9095d4a2005-07-28 10:08:46 -05002/*
3 * (C) Copyright 2000-2002
4 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
5 *
6 * Copyright 2004 Freescale Semiconductor, Inc.
Eran Liberty9095d4a2005-07-28 10:08:46 -05007 */
8
9#include <common.h>
10#include <command.h>
Simon Glass9b61c7c2019-11-14 12:57:41 -070011#include <irq_func.h>
Eran Liberty9095d4a2005-07-28 10:08:46 -050012#include <mpc83xx.h>
13#include <asm/processor.h>
Simon Glass6b9f0102020-05-10 11:40:06 -060014#include <asm/ptrace.h>
Eran Liberty9095d4a2005-07-28 10:08:46 -050015
Wolfgang Denk6405a152006-03-31 18:32:53 +020016DECLARE_GLOBAL_DATA_PTR;
17
Eran Liberty9095d4a2005-07-28 10:08:46 -050018struct irq_action {
19 interrupt_handler_t *handler;
20 void *arg;
21 ulong count;
22};
23
Tom Rinice103982017-08-13 22:44:37 -040024void interrupt_init_cpu (unsigned *decrementer_count)
Eran Liberty9095d4a2005-07-28 10:08:46 -050025{
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020026 volatile immap_t *immr = (immap_t *) CONFIG_SYS_IMMR;
Kumar Gala3b16c282006-01-11 11:19:12 -060027
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020028 *decrementer_count = (gd->bus_clk / 4) / CONFIG_SYS_HZ;
Kumar Gala3b16c282006-01-11 11:19:12 -060029
30 /* Enable e300 time base */
31
32 immr->sysconf.spcr |= 0x00400000;
Eran Liberty9095d4a2005-07-28 10:08:46 -050033}
34
35
36/*
37 * Handle external interrupts
38 */
39
Simon Glassf87959b2019-11-14 12:57:40 -070040void external_interrupt(struct pt_regs *regs)
Eran Liberty9095d4a2005-07-28 10:08:46 -050041{
42}
43
44
45/*
46 * Install and free an interrupt handler.
47 */
48
49void
Simon Glassf87959b2019-11-14 12:57:40 -070050irq_install_handler(int irq, interrupt_handler_t * handler, void *arg)
Eran Liberty9095d4a2005-07-28 10:08:46 -050051{
52}
53
54
Simon Glassf87959b2019-11-14 12:57:40 -070055void irq_free_handler(int irq)
Eran Liberty9095d4a2005-07-28 10:08:46 -050056{
57}
58
59
60void timer_interrupt_cpu (struct pt_regs *regs)
61{
62 /* nothing to do here */
63 return;
64}
65
66
Jon Loeliger526e5ce2007-07-09 19:06:00 -050067#if defined(CONFIG_CMD_IRQ)
Eran Liberty9095d4a2005-07-28 10:08:46 -050068
69/* ripped this out of ppc4xx/interrupts.c */
70
71/*
72 * irqinfo - print information about PCI devices
73 */
74
Simon Glassed38aef2020-05-10 11:40:03 -060075void do_irqinfo(struct cmd_tbl *cmdtp, bd_t *bd, int flag, int argc,
76 char *const argv[])
Eran Liberty9095d4a2005-07-28 10:08:46 -050077{
78}
79
Jon Loeliger526e5ce2007-07-09 19:06:00 -050080#endif