SuperH 介面指南¶
- 作者:
Paul Mundt
記憶體管理¶
SH-4¶
儲存佇列 API¶
-
void sq_flush_range(unsigned long start, unsigned int len)¶
重新整理(預取)特定 SQ 範圍
引數
unsigned long start開始重新整理的儲存佇列地址
unsigned int len要重新整理的長度
描述
以線性方式將儲存佇列快取從 **start** 重新整理到 **start** + **len**。
-
unsigned long sq_remap(unsigned long phys, unsigned int size, const char *name, pgprot_t prot)¶
透過儲存佇列對映物理地址
引數
unsigned long phys對映的物理地址。
unsigned int size對映的長度。
const char *name呼叫對映的使用者。
pgprot_t prot保護位。
描述
透過下一個可用儲存佇列地址(長度為 **size**)重新對映物理地址 **phys**。**name** 會在引導時以及透過 sysfs 介面記錄下來。
-
void sq_unmap(unsigned long vaddr)¶
取消對映儲存佇列分配
引數
unsigned long vaddr預分配的儲存佇列對映。
描述
取消對映先前由 sq_remap() 建立的儲存佇列分配 **map**。同時釋放之前插入核心頁表的 pte 並丟棄 UTLB 轉換。
機器特定介面¶
mach-dreamcast¶
引數
struct device *devRTC 裝置(已忽略)
struct rtc_time *tm指向結果 RTC 時間結構的指標
描述
獲取當前 RTC 秒計數器並將其調整為 Unix Epoch。
引數
struct device *devRTC 裝置(已忽略)
struct rtc_time *tm指向新 RTC 時間結構的指標
描述
將給定的 **tv** 調整為 AICA Epoch 並設定 RTC 秒計數器。
mach-x3proto¶
-
int ilsel_enable(ilsel_source_t set)¶
啟用 ILSEL 集。
引數
ilsel_source_t setILSEL 源(參見 include/asm-sh/ilsel.h 中的 ilsel_source_t 列舉)。
描述
在最高的可用中斷級別啟用給定的非別名 ILSEL 源(<= ILSEL_KEY)。呼叫者應注意按中斷級別降序排列呼叫站點。別名 FPGA 和外部板 IRQ 需要使用 ilsel_enable_fixed()。
返回值是一個 IRQ 號,之後可以透過 ilsel_disable() 停用。
-
int ilsel_enable_fixed(ilsel_source_t set, unsigned int level)¶
在固定中斷級別啟用 ILSEL 集
引數
ilsel_source_t setILSEL 源(參見 include/asm-sh/ilsel.h 中的 ilsel_source_t 列舉)。
unsigned int level中斷級別 (1 - 15)
描述
在固定中斷級別啟用給定的 ILSEL 源。這對於級別保留以及僅存在於特殊 ILSEL# 上的別名源都是必需的。
返回一個 IRQ 號(與 ilsel_enable() 相同)。
-
void ilsel_disable(unsigned int irq)¶
停用 ILSEL 集
引數
unsigned int irqILSEL 設定值的位位置(來自啟用例程的返回值)
描述
停用先前已啟用的 ILSEL 集。
匯流排¶
Maple¶
-
int maple_driver_register(struct maple_driver *drv)¶
註冊一個 maple 驅動程式
引數
struct maple_driver *drv要註冊的 maple 驅動程式。
描述
註冊傳入的 **drv**,同時更新匯流排型別。具有匹配功能 ID 的裝置將自動被探測。
-
void maple_driver_unregister(struct maple_driver *drv)¶
登出一個 maple 驅動程式。
-
void maple_getcond_callback(struct maple_device *dev, void (*callback)(struct mapleq *mq), unsigned long interval, unsigned long function)¶
設定處理 MAPLE_COMMAND_GETCOND
引數
struct maple_device *dev響應裝置
void (*callback) (struct mapleq *mq)處理程式回撥
unsigned long interval回撥之間的 jiffies 間隔
unsigned long function裝置的函式程式碼
-
int maple_add_packet(struct maple_device *mdev, u32 function, u32 command, size_t length, void *data)¶
向 maple 匯流排佇列新增單個指令
引數
struct maple_device *mdevmaple 裝置
u32 function正在查詢裝置上的功能
u32 command要新增的 maple 命令
size_t length命令字串的長度(以 32 位字為單位)
void *data命令字串的其餘部分