無線まわりのコードメンテナンス、およびコメント追加。

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1899 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
sato_masaki 2008-07-15 07:17:00 +00:00
parent f95a83c40d
commit 7b1ec519cd

View File

@ -52,14 +52,14 @@
*---------------------------------------------------------------------------*/ *---------------------------------------------------------------------------*/
#define WM_WL_HEAP_SIZE 0x2100 #define WM_WL_HEAP_SIZE 0x2100
#define ATH_DRV_HEAP_SIZE 0x5800 /* TBD */ #define ATH_DRV_HEAP_SIZE 0x5800
#define WPA_HEAP_SIZE 0x0000 /* TBD */ #define WPA_HEAP_SIZE 0x1C00
#define MEM_TYPE_WRAM 0 #define MEM_TYPE_WRAM 0
#define MEM_TYPE_MAIN 1 #define MEM_TYPE_MAIN 1
/* Priorities of each threads */ /* Priorities of each threads */
#define THREAD_PRIO_MCU 1 //4 /* ハードウェアリセット時に他のスレッドに優先して動く必要アリ */ #define THREAD_PRIO_MCU 1 /* ハードウェアリセット時に他のスレッドに優先して動く必要アリ */
#define THREAD_PRIO_SPI 2 #define THREAD_PRIO_SPI 2
#define THREAD_PRIO_SYSMMCU 6 #define THREAD_PRIO_SYSMMCU 6
#define THREAD_PRIO_SND 6 #define THREAD_PRIO_SND 6
@ -97,7 +97,8 @@ static void DummyThread(void* arg);
static void ReadUserInfo(void); static void ReadUserInfo(void);
static void VBlankIntr(void); static void VBlankIntr(void);
static void InitializeFatfs(void); static void InitializeFatfs(void);
static void InitializeNwm(OSHeapHandle drvHeapHandle, OSHeapHandle wpaHeapHandle); static void InitializeNwm(OSArenaId drvArenaId, OSHeapHandle drvHeapHandle,
OSArenaId wpaArenaId, OSHeapHandle wpaHeapHandle);
static void InitializeCdc(void); static void InitializeCdc(void);
static void AdjustVolume(void); static void AdjustVolume(void);
/*---------------------------------------------------------------------------* /*---------------------------------------------------------------------------*
@ -190,7 +191,10 @@ TwlSpMain(void)
if (OS_IsRunOnTwl() == TRUE) if (OS_IsRunOnTwl() == TRUE)
{ {
InitializeFatfs(); // FATFS 初期化 InitializeFatfs(); // FATFS 初期化
InitializeNwm(mainHeapHandle, mainHeapHandle); // NWM 初期化 // NWM 初期化
InitializeNwm(OS_ARENA_MAIN_SUBPRIV, mainHeapHandle, // heap setting for TWL wireless host driver
OS_ARENA_MAIN_SUBPRIV, mainHeapHandle // heap setting for wpa
);
#ifndef SDK_NOCRYPTO #ifndef SDK_NOCRYPTO
AES_Init(THREAD_PRIO_AES); // AES 初期化 AES_Init(THREAD_PRIO_AES); // AES 初期化
@ -236,7 +240,7 @@ TwlSpMain(void)
// RTC 初期化 // RTC 初期化
RTC_Init(THREAD_PRIO_RTC); RTC_Init(THREAD_PRIO_RTC);
// (旧無線初期化はmain loopで行う。) // ランチャーでは、旧無線の初期化はmain loopで行う。
// SPI 初期化 // SPI 初期化
// ※ARM9側のOS_Init内のPM_InitでPMのPXIコールバック待ちをしており、ここでARM9と同期が取られる。 // ※ARM9側のOS_Init内のPM_InitでPMのPXIコールバック待ちをしており、ここでARM9と同期が取られる。
@ -276,9 +280,12 @@ TwlSpMain(void)
while (TRUE) while (TRUE)
{ {
OS_Halt(); OS_Halt();
// 無線ファームのロード完了後に旧無線を初期化する // 無線ファームのロード完了をチェック
if (TRUE == NWMSPi_CheckInstalledNotification()) if (TRUE == NWMSPi_CheckInstalledNotification())
{ {
/* M&M chipでは無線ファームのDL完了 → 旧無線初期化の順序を守る必要あり。
DL完了通知をmain loopでチェックし
NWMに確認通知を送る[twl-dev:0980] */
WVR_Begin(wramHeapHandle); WVR_Begin(wramHeapHandle);
NWMSPi_NotifyConfirmation(); NWMSPi_NotifyConfirmation();
} }
@ -422,7 +429,8 @@ InitializeFatfs(void)
Returns: None. Returns: None.
*---------------------------------------------------------------------------*/ *---------------------------------------------------------------------------*/
static void static void
InitializeNwm(OSHeapHandle drvHeapHandle, OSHeapHandle wpaHeapHandle) InitializeNwm(OSArenaId drvArenaId, OSHeapHandle drvHeapHandle,
OSArenaId wpaArenaId, OSHeapHandle wpaHeapHandle)
{ {
NwmspInit nwmInit; NwmspInit nwmInit;
@ -430,13 +438,14 @@ InitializeNwm(OSHeapHandle drvHeapHandle, OSHeapHandle wpaHeapHandle)
nwmInit.cmdPrio = THREAD_PRIO_NWM_COMMMAND; nwmInit.cmdPrio = THREAD_PRIO_NWM_COMMMAND;
nwmInit.evtPrio = THREAD_PRIO_NWM_EVENT; nwmInit.evtPrio = THREAD_PRIO_NWM_EVENT;
nwmInit.sdioPrio = THREAD_PRIO_NWM_SDIO; nwmInit.sdioPrio = THREAD_PRIO_NWM_SDIO;
nwmInit.drvHeap.id = OS_ARENA_MAIN_SUBPRIV; /* [TODO] */ nwmInit.drvHeap.id = drvArenaId;
nwmInit.drvHeap.handle = drvHeapHandle; nwmInit.drvHeap.handle = drvHeapHandle;
nwmInit.wpaPrio = THREAD_PRIO_NWM_WPA; nwmInit.wpaPrio = THREAD_PRIO_NWM_WPA;
nwmInit.wpaHeap.id = OS_ARENA_MAIN_SUBPRIV; /* [TODO] */ nwmInit.wpaHeap.id = wpaArenaId;
nwmInit.wpaHeap.handle = wpaHeapHandle; nwmInit.wpaHeap.handle = wpaHeapHandle;
/* 新無線初期化(ランチャー専用) */
NWMSP_InitForLauncher(&nwmInit); NWMSP_InitForLauncher(&nwmInit);
} }