source: rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/edma.h @ 97fa2f1b

4.11
Last change on this file since 97fa2f1b was 97fa2f1b, checked in by Sebastian Huber <sebastian.huber@…>, on Aug 31, 2011 at 3:50:30 PM

2011-08-31 Sebastian Huber <sebastian.huber@…>

  • mpc55xx/include/fsl-mpc551x.h, mpc55xx/include/fsl-mpc555x.h, mpc55xx/include/fsl-mpc556x.h, mpc55xx/include/fsl-mpc567x.h, mpc55xx/include/regs-edma.h, mpc55xx/include/regs-mmu.h: New files.
  • Makefile.am, M preinstall.am: Reflect changes above.
  • mpc55xx/dspi/dspi.c: Update due to API changes.
  • mpc55xx/include/edma.h, mpc55xx/edma/edma.c: Rework to support multiple eDMA modules. Removed complex error interrupt handling.
  • mpc55xx/include/esci.h, mpc55xx/esci/esci.c: Support interrupt mode and printk(). Use configure options.
  • mpc55xx/include/irq.h: More defines. API changes.
  • mpc55xx/include/mpc55xx.h: API changes.
  • mpc55xx/include/reg-defs.h: Added register defines.
  • mpc55xx/include/regs.h: Use new register header files.
  • mpc55xx/include/siu.h: Fixed includes.
  • mpc55xx/misc/fmpll.S, mpc55xx/misc/copy.S, mpc55xx/misc/flash.S: Changed sections. API changes. Support MPC5674F.
  • Property mode set to 100644
File size: 1.2 KB
Line 
1/**
2 * @file
3 *
4 * @ingroup mpc55xx
5 *
6 * @brief Enhanced Direct Memory Access (eDMA).
7 */
8
9/*
10 * Copyright (c) 2008
11 * Embedded Brains GmbH
12 * Obere Lagerstr. 30
13 * D-82178 Puchheim
14 * Germany
15 * rtems@embedded-brains.de
16 *
17 * The license and distribution terms for this file may be found in the file
18 * LICENSE in this distribution or at http://www.rtems.com/license/LICENSE.
19 */
20
21#ifndef LIBCPU_POWERPC_MPC55XX_EDMA_H
22#define LIBCPU_POWERPC_MPC55XX_EDMA_H
23
24#include <stdbool.h>
25#include <stdint.h>
26
27#include <rtems.h>
28#include <rtems/chain.h>
29
30#ifdef __cplusplus
31extern "C" {
32#endif /* __cplusplus */
33
34typedef struct mpc55xx_edma_channel_entry {
35  rtems_chain_node node;
36  unsigned channel;
37  void (*done)( struct mpc55xx_edma_channel_entry *, uint32_t);
38  rtems_id id;
39} mpc55xx_edma_channel_entry;
40
41void mpc55xx_edma_init(void);
42
43rtems_status_code mpc55xx_edma_obtain_channel( mpc55xx_edma_channel_entry *e, unsigned irq_priority);
44
45void mpc55xx_edma_release_channel( mpc55xx_edma_channel_entry *e);
46
47void mpc55xx_edma_enable_hardware_requests( unsigned channel, bool enable);
48
49void mpc55xx_edma_enable_error_interrupts( unsigned channel, bool enable);
50
51#ifdef __cplusplus
52}
53#endif /* __cplusplus */
54
55#endif /* LIBCPU_POWERPC_MPC55XX_EDMA_H */
Note: See TracBrowser for help on using the repository browser.