source: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tinet/netdev/if_enbt/if_mbed.h@ 400

Last change on this file since 400 was 400, checked in by coas-nagasima, 5 years ago

ファイルヘッダーの更新

  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/x-chdr;charset=UTF-8
File size: 4.7 KB
Line 
1/*
2 * TINET (TCP/IP Protocol Stack)
3 *
4 * Copyright (C) 2001-2009 by Dep. of Computer Science and Engineering
5 * Tomakomai National College of Technology, JAPAN
6 * Copyright (C) 2014-2019 Cores Co., Ltd. Japan
7 *
8 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
9 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
10 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
11 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
12 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
13 * スコード中に含まれていること.
14 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
15 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用
16 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記
17 * の無保証規定を掲載すること.
18 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
19 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ
20 * と.
21 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
22 * 作権表示,この利用条件および下記の無保証規定を掲載すること.
23 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
24 * 報告すること.
25 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
26 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
27 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
28 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
29 * 免責すること.
30 *
31 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お
32 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
33 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
34 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
35 * の責任を負わない.
36 *
37 * @(#) $Id$
38 */
39
40/*
41 * Copyright (C) 1993, David Greenman. This software may be used, modified,
42 * copied, distributed, and sold, in both source and binary form provided
43 * that the above copyright and these terms are retained. Under no
44 * circumstances is the author responsible for the proper functioning
45 * of this software, nor does the author assume any responsibility
46 * for damages incurred with its use.
47 */
48
49#ifndef _IF_MBED_H_
50#define _IF_MBED_H_
51
52#include "ethernet_api.h"
53
54/*
55 * NIC の選択マクロ
56 */
57
58#define IF_ETHER_NIC_GET_SOFTC() if_mbed_get_softc()
59#define IF_ETHER_NIC_WATCHDOG(i) if_mbed_watchdog(i)
60#define IF_ETHER_NIC_PROBE(i) if_mbed_probe(i)
61#define IF_ETHER_NIC_INIT(i) if_mbed_init(i)
62#define IF_ETHER_NIC_READ(i) if_mbed_read(i)
63#define IF_ETHER_NIC_RESET(i) if_mbed_reset(i)
64#define IF_ETHER_NIC_START(i,o) if_mbed_start(i,o)
65
66#define T_IF_ETHER_NIC_SOFTC struct t_mbed_softc
67
68/* IPv6 関係 */
69
70#define IF_ETHER_NIC_IN6_IFID(i,a) get_mac6_ifid(i,a) /* インタフェース識別子の設定 */
71#define IF_ETHER_NIC_ADDMULTI(s) if_mbed_addmulti(s) /* マルチキャストアドレスの登録 */
72
73#define PHY_TASK_WAIT 200000
74#define IF_MBED_PHY_PRIORITY 4
75#define IF_MBED_PHY_STACK_SIZE 256
76
77#if !defined(TOPPERS_MACRO_ONLY) && !defined(_MACRO_ONLY)
78
79/*
80 * 前方参照
81 */
82
83#ifndef T_IF_SOFTC_DEFINED
84
85typedef struct t_if_softc T_IF_SOFTC;
86
87#define T_IF_SOFTC_DEFINED
88
89#endif /* of #ifndef T_IF_SOFTC_DEFINED */
90
91#ifndef T_NET_BUF_DEFINED
92
93typedef struct t_net_buf T_NET_BUF;
94
95#define T_NET_BUF_DEFINED
96
97#endif /* of #ifndef T_NET_BUF_DEFINED */
98
99/*
100 * 関数
101 */
102
103extern T_IF_SOFTC *if_mbed_get_softc(void);
104extern void if_mbed_watchdog(T_IF_SOFTC *ic);
105extern void if_mbed_probe(T_IF_SOFTC *ic);
106extern void if_mbed_init(T_IF_SOFTC *ic);
107extern void if_mbed_reset(T_IF_SOFTC *ic);
108extern T_NET_BUF *if_mbed_read(T_IF_SOFTC *ic);
109extern void if_mbed_start(T_IF_SOFTC *ic, T_NET_BUF *output);
110extern ER if_mbed_addmulti(T_IF_SOFTC *ic);
111extern void if_mbed_eth_handler(void);
112void if_mbed_phy_task(intptr_t arg);
113
114#endif /* #if !defined(TOPPERS_MACRO_ONLY) && !defined(_MACRO_ONLY) */
115
116#endif /* of #ifndef _IF_MBED_H_ */
Note: See TracBrowser for help on using the repository browser.