source: rtems/c/src/libchip/network/dwmac-core.h @ 4953b724

4.115
Last change on this file since 4953b724 was 4953b724, checked in by Ralf Kirchner <ralf.kirchner@…>, on Feb 17, 2014 at 2:43:53 PM

libchip: Add dwmac 10/100/1000 network driver

  • Property mode set to 100644
File size: 1.9 KB
Line 
1/**
2 * @file
3 *
4 * @brief DWMAC 10/100/1000 Network Interface Controllers Core Handling
5 *
6 * DWMAC 10/100/1000 on-chip Synopsys IP Ethernet controllers.
7 * Driver core handling.
8 * This header file is NOT part of the driver API.
9 */
10
11/*
12 * Copyright (c) 2014 embedded brains GmbH.  All rights reserved.
13 *
14 *  embedded brains GmbH
15 *  Dornierstr. 4
16 *  82178 Puchheim
17 *  Germany
18 *  <rtems@embedded-brains.de>
19 *
20 * The license and distribution terms for this file may be
21 * found in the file LICENSE in this distribution or at
22 * http://www.rtems.org/license/LICENSE.
23 */
24
25#ifndef DWMAC_CORE_H_
26#define DWMAC_CORE_H_
27
28#include <stdint.h>
29#include "dwmac-common.h"
30
31#ifdef __cplusplus
32extern "C" {
33#endif /* __cplusplus */
34
35void dwmac_core_set_mac_addr(
36  const uint8_t      addr[6],
37  volatile uint32_t *reg_high,
38  volatile uint32_t *reg_low );
39
40void dwmac_core_set_mac(
41  dwmac_common_context *self,
42  const bool            enable );
43
44void dwmac_core_dma_start_tx( dwmac_common_context *self );
45
46void dwmac_core_dma_stop_tx( dwmac_common_context *self );
47
48void dwmac_core_dma_start_rx( dwmac_common_context *self );
49
50void dwmac_core_dma_stop_rx( dwmac_common_context *self );
51
52void dwmac_core_dma_restart_rx( dwmac_common_context *self );
53
54void dwmac_core_dma_restart_tx( dwmac_common_context *self );
55
56void dwmac_core_enable_dma_irq_rx( dwmac_common_context *self );
57
58void dwmac_core_enable_dma_irq_tx( dwmac_common_context *self );
59
60void dwmac_core_disable_dma_irq_tx( dwmac_common_context *self );
61
62void dwmac_core_disable_dma_irq_rx( dwmac_common_context *self );
63
64void dwmac_core_reset_dma_irq_status_tx( dwmac_common_context *self );
65
66void dwmac_core_reset_dma_irq_status_rx( dwmac_common_context *self );
67
68void dwmac_core_dma_interrupt( void *arg );
69
70void dwmac_core_dma_flush_tx_fifo( dwmac_common_context *self );
71
72#ifdef __cplusplus
73}
74#endif /* __cplusplus */
75
76#endif /* DWMAC_CORE_H_ */
Note: See TracBrowser for help on using the repository browser.