source: rtems/bsps/powerpc/qemuppc/irq/irq_init.c @ 32f5a195

Last change on this file since 32f5a195 was 32f5a195, checked in by Sebastian Huber <sebastian.huber@…>, on 06/29/21 at 12:06:03

bsps/irq: bsp_interrupt_vector_disable()

Return a status code for bsp_interrupt_vector_disable().

Update #3269.

  • Property mode set to 100644
File size: 3.2 KB
Line 
1/*===============================================================*\
2| Project: RTEMS generic MPC83xx BSP                              |
3+-----------------------------------------------------------------+
4|                    Copyright (c) 2007                           |
5|                    Embedded Brains GmbH                         |
6|                    Obere Lagerstr. 30                           |
7|                    D-82178 Puchheim                             |
8|                    Germany                                      |
9|                    rtems@embedded-brains.de                     |
10+-----------------------------------------------------------------+
11| The license and distribution terms for this file may be         |
12| found in the file LICENSE in this distribution or at            |
13|                                                                 |
14| http://www.rtems.org/license/LICENSE.                           |
15|                                                                 |
16+-----------------------------------------------------------------+
17| this file integrates the IPIC irq controller                    |
18\*===============================================================*/
19
20#include <rtems.h>
21
22#include <libcpu/powerpc-utility.h>
23
24#include <bsp.h>
25#include <bsp/irq.h>
26#include <bsp/irq-generic.h>
27#include <bsp/vectors.h>
28
29static int qemuppc_exception_handler(
30  BSP_Exception_frame *frame,
31  unsigned exception_number
32)
33{
34  rtems_panic("Unexpected interrupt occured");
35  return 0;
36}
37
38rtems_status_code bsp_interrupt_get_attributes(
39  rtems_vector_number         vector,
40  rtems_interrupt_attributes *attributes
41)
42{
43  return RTEMS_SUCCESSFUL;
44}
45
46rtems_status_code bsp_interrupt_is_pending(
47  rtems_vector_number vector,
48  bool               *pending
49)
50{
51  bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector));
52  bsp_interrupt_assert(pending != NULL);
53  *pending = false;
54  return RTEMS_UNSATISFIED;
55}
56
57rtems_status_code bsp_interrupt_raise(rtems_vector_number vector)
58{
59  bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector));
60  return RTEMS_UNSATISFIED;
61}
62
63rtems_status_code bsp_interrupt_clear(rtems_vector_number vector)
64{
65  bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector));
66  return RTEMS_UNSATISFIED;
67}
68
69rtems_status_code bsp_interrupt_vector_is_enabled(
70  rtems_vector_number vector,
71  bool               *enabled
72)
73{
74  bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector));
75  bsp_interrupt_assert(enabled != NULL);
76  *enabled = false;
77  return RTEMS_UNSATISFIED;
78}
79
80/*
81 * functions to enable/disable a source at the ipic
82 */
83rtems_status_code bsp_interrupt_vector_enable( rtems_vector_number irqnum)
84{
85  /* FIXME: do something */
86  bsp_interrupt_assert(bsp_interrupt_is_valid_vector(irqnum));
87  return RTEMS_SUCCESSFUL;
88}
89
90rtems_status_code bsp_interrupt_vector_disable( rtems_vector_number irqnum)
91{
92  /* FIXME: do something */
93  bsp_interrupt_assert(bsp_interrupt_is_valid_vector(irqnum));
94  return RTEMS_SUCCESSFUL;
95}
96
97rtems_status_code bsp_interrupt_facility_initialize(void)
98{
99  /* Install exception handler */
100  if (ppc_exc_set_handler( ASM_EXT_VECTOR, qemuppc_exception_handler)) {
101    return RTEMS_IO_ERROR;
102  }
103
104  return RTEMS_SUCCESSFUL;
105}
Note: See TracBrowser for help on using the repository browser.