sil.h

システムインタフェースレイヤ(ターゲット共通部) [詳細]

#include <t_stddef.h>
#include <itron.h>
#include <sys_defs.h>
#include <cpu_defs.h>
#include <t_syslog.h>

sil.hのインクルード依存関係図

このグラフは、どのファイルから直接、間接的にインクルードされているかを示しています。

ソースコードを見る。

マクロ定義

#define SIL_ENDIAN_LITTLE   0
#define SIL_ENDIAN_BIG   1
#define SIL_PRE_LOC   BOOL _sil_loc_ = sns_loc()
#define SIL_LOC_INT()
#define SIL_UNL_INT()
#define SIL_REV_ENDIAN_H(data)   ((VH)((((UH)(data) & 0xff) << 8) | (((UH)(data) >> 8) & 0xff)))
#define SIL_REV_ENDIAN_W(data)
#define sil_rew_lem(mem)   sil_rew_mem(mem)
#define sil_wrw_lem(mem, data)   sil_wrw_mem(mem, data)

関数

void sil_dly_nse (UINT dlytim) throw ()
Inline VW sil_rew_mem (VP mem)
Inline void sil_wrw_mem (VP mem, VW data)
Inline VW sil_rew_bem (VP mem)
Inline void sil_wrw_bem (VP mem, VW data)


説明

システムインタフェースレイヤ(ターゲット共通部)

アセンブリ言語のソースファイルやシステムコンフィギュレーションファ イルからこのファイルをインクルードする時は,_MACRO_ONLY を定義して おくことで,マクロ定義以外の記述を除くことができる.

このインクルードファイルは,標準インクルードファイル(s_services.h) でインクルードされる.また,カーネルから呼ばれるデバイスドライバの インクルードファイルで,インライン関数などでシステムインタフェース レイヤを用いている場合にも,このファイルがインクルードされる.この 例外を除いて,他のファイルから直接インクルードされることはない.

この中でインクルードしているファイルを除いて,他のインクルードファ イルに依存していない.

sil.h で定義されています。


マクロ定義

#define SIL_ENDIAN_BIG   1
 

sil.h88 行で定義されています。

#define SIL_ENDIAN_LITTLE   0
 

sil.h87 行で定義されています。

 
#define SIL_LOC_INT  ) 
 

値:

((void)(!(_sil_loc_) \
                && (sns_ctx() ? iloc_cpu() : loc_cpu())))

sil.h97 行で定義されています。

#define SIL_PRE_LOC   BOOL _sil_loc_ = sns_loc()
 

sil.h96 行で定義されています。

#define SIL_REV_ENDIAN_H data   )     ((VH)((((UH)(data) & 0xff) << 8) | (((UH)(data) >> 8) & 0xff)))
 

sil.h112 行で定義されています。

参照元 sil_reh_bem()sil_wrh_bem().

#define SIL_REV_ENDIAN_W data   ) 
 

値:

((VW)((((UW)(data) & 0xff) << 24) | (((UW)(data) & 0xff00) << 8) \
        | (((UW)(data)>> 8) & 0xff00) | (((UW)(data) >> 24) & 0xff)))

sil.h117 行で定義されています。

参照元 sil_rew_bem()sil_wrw_bem().

#define sil_rew_lem mem   )     sil_rew_mem(mem)
 

sil.h262 行で定義されています。

 
#define SIL_UNL_INT  ) 
 

値:

((void)(!(_sil_loc_) \
                && (sns_ctx() ? iunl_cpu() : unl_cpu())))

sil.h99 行で定義されています。

#define sil_wrw_lem mem,
data   )     sil_wrw_mem(mem, data)
 

sil.h263 行で定義されています。


関数

void sil_dly_nse UINT  dlytim  )  throw ()
 

cpu_defs.h246 行で定義されています。

00247 {
00248 
00249 }

Inline VW sil_rew_bem VP  mem  ) 
 

sil.h268 行で定義されています。

参照先 SIL_REV_ENDIAN_W.

00269 {
00270     VW  data;
00271 
00272     data = *((volatile VW *) mem);
00273     return(SIL_REV_ENDIAN_W(data));
00274 }

Inline VW sil_rew_mem VP  mem  ) 
 

sil.h223 行で定義されています。

参照元 hw_timer_fetch_interrupt()hw_timer_get_current()mutex_init()mutex_try_lock()uart_disable_rcv()uart_disable_send()uart_enable_rcv()uart_enable_send()uart_getc()uart_getchar()uart_getready()uart_putc()uart_putready().

00224 {
00225     return(*((volatile VW *) mem));
00226 }

Inline void sil_wrw_bem VP  mem,
VW  data
 

sil.h280 行で定義されています。

参照先 SIL_REV_ENDIAN_W.

00281 {
00282     *((volatile VW *) mem) = SIL_REV_ENDIAN_W(data);
00283 }

Inline void sil_wrw_mem VP  mem,
VW  data
 

sil.h229 行で定義されています。

参照元 clear_ipi()hw_timer_get_current()hw_timer_initialize()hw_timer_int_clear()hw_timer_terminate()mutex_init()mutex_try_lock()mutex_unlock()raise_ipi()set_led()uart_cls_por()uart_disable_rcv()uart_disable_send()uart_enable_rcv()uart_enable_send()uart_opn_por()uart_putc()uart_putchar().

00230 {
00231     *((volatile VW *) mem) = data;
00232 }


Copyright © 2006 by TAKAGI Nobuhisa.
このページは Mon Apr 3 23:49:18 2006 に Doxygen によって生成されました。