結合テスト準備

git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-09-30%20-%20paladin.7z/paladin/ctr_card_test@8 ff8ce827-af98-4349-adb5-4c00699b5328
This commit is contained in:
(no author) 2010-02-22 12:41:09 +00:00
parent ec416726f6
commit 4a3a2a1d4d
12 changed files with 184 additions and 56 deletions

View File

@ -2,7 +2,7 @@
using namespace nn::red::nakayama;
class BackupMemoryTest : public Program
class BackupMemoryTest : public CardTestProgram
{
virtual void Execute()
{

View File

@ -23,12 +23,20 @@ namespace nakayama{
bool cardFunctionTestStart(u8* buffer, size_t buffer_size, TestCaseID case_id, detailInfo* info)
{
NN_TLOG_("cardFunctionTestStart\n");
// 菅原さんが実装した関数を呼ぶ
return true;
}
bool cardFunctionTestEnd(void)
{
NN_TLOG_("cardFunctionTestEnd\n");
// 菅原さんが実装した関数を呼ぶ
return true;
}

View File

@ -25,6 +25,15 @@ namespace nn{
namespace red{
namespace nakayama{
/* **************************************************
define
************************************************** */
#define BUFFER_SIZE (2048 * 512) // 0x100000
//#define INTEGRATION_TEST
/* **************************************************
struct
@ -41,6 +50,7 @@ struct settingInfo {
u32 reserved2;
};
// 受信情報
struct detailInfo {
u32 mID1; //ID1
u32 mID2; //ID2
@ -53,6 +63,16 @@ struct detailInfo {
u64 errorData[10]; //Error Data
};
// ARM11 設定情報
struct settingData {
u32 AccessPattern :3; // [0: 2] AccessPattern(INC:0 - REPEAT:7)
u32 Loop :1; // [3] Loop(Once:0 - Repeat:1)
u32 ReadCount :2; // [4: 5] ReadCount(1000:0 - 10000000:3)
u32 BackUpMemory :3; // [6: 8] BackUpMemory(No:0 - 4MFlash:3)
u32 WriteData :3; // [9:11] WriteData(0000h:0 - Repeat:6)
u32 :0;
};
/* **************************************************
@ -79,9 +99,79 @@ enum TestCaseID {
};
bool cardFunctionTestStart(u8* buffer, size_t buffer_size, TestCaseID case_id, detailInfo* info);
enum CardType {
CARD_TYPE_S1,
CARD_TYPE_S2
};
// アクセスパターン
enum CardAccessPattern {
SETTING_ACCESS_PATTERN_INC,
SETTING_ACCESS_PATTERN_DEC,
SETTING_ACCESS_PATTERN_COMP,
SETTING_ACCESS_PATTERN_RAMDOM1,
SETTING_ACCESS_PATTERN_RAMDOM2,
SETTING_ACCESS_PATTERN_ID1,
SETTING_ACCESS_PATTERN_ID2,
SETTING_ACCESS_PATTERN_REPEAT
};
// DMAタイプ
enum CardDmaType {
SETTING_DMA_TYPE_REPEAT,
SETTING_DMA_TYPE_DMA0,
SETTING_DMA_TYPE_DMA1,
SETTING_DMA_TYPE_DMA2,
SETTING_DMA_TYPE_DMA3,
SETTING_DMA_TYPE_DMA4,
SETTING_DMA_TYPE_DMA5,
SETTING_DMA_TYPE_DMA6,
SETTING_DMA_TYPE_DMA7,
SETTING_DMA_TYPE_CPU
};
// ループ
enum CardLoopType {
SETTING_LOOP_TYPE_ONCE,
SETTING_LOOP_TYPE_REPEAT
};
// リードカウント
enum CardReadCount {
SETTING_READ_COUNT_10000,
SETTING_READ_COUNT_100000,
SETTING_READ_COUNT_1000000,
SETTING_READ_COUNT_10000000
};
// バックアップメモリ
enum CardBackupMemType {
SETTING_BACKUP_MEM_TYPE_NO,
SETTING_BACKUP_MEM_TYPE_64K_EEP,
SETTING_BACKUP_MEM_TYPE_1M_FLASH,
SETTING_BACKUP_MEM_TYPE_4M_FLASH
};
// ライトデータ
enum CardWriteData {
SETTING_WRITE_DATA_0000,
SETTING_WRITE_DATA_55AA,
SETTING_WRITE_DATA_00FF,
SETTING_WRITE_DATA_FFFF,
SETTING_WRITE_DATA_DEC,
SETTING_WRITE_DATA_INC,
SETTING_WRITE_DATA_REPEAT
};
bool cardFunctionTestEnd(void);
} /* nakayama */
} /* red */

View File

@ -43,14 +43,14 @@ public:
while (1)
{
pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::A))
{
#ifdef INTEGRATION_TEST
// 引数:buffer, BUFFER_SIZE, TestCaseID(TID_FUNC_RDID1), detailInfo
//cardFunctionTestStart();
cardFunctionTestStart( (u8*)card_test_buffer, BUFFER_SIZE, TID_FUNC_RDID1, &detail);
#endif
}
if (pad.IsTrigger(KeyPad::B))
@ -104,14 +104,14 @@ public:
while (1)
{
pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::A))
{
#ifdef INTEGRATION_TEST
// 引数:buffer, BUFFER_SIZE, TestCaseID(TID_FUNC_RDID2), detailInfo
//cardFunctionTestStart();
cardFunctionTestStart( (u8*)card_test_buffer, BUFFER_SIZE, TID_FUNC_RDID2, &detail);
#endif
}
if (pad.IsTrigger(KeyPad::B))
@ -127,8 +127,6 @@ public:
#define TEMP_BUFFER_SIZE 0x90
#define DUMP_NUM 0x100
#define ONE_PAGE_SIZE 0x80
#define DUMP_MAP_BASE_X 0
#define DUMP_MUP_BASE_Y 70
class ReadSeqPageVerify: public CardTestProgram
{
@ -176,9 +174,6 @@ public:
temp_buffer[index] = index & 0xff;
}
// キー操作読み出し用
KeyPad& pad = KeyPad::GetInstance();
// 表示用フラグ
bool done = false;
bool refresh = false;
@ -189,17 +184,29 @@ public:
// デバッグ用
verify_result = true;
// ƒL<C692>[<E28098>ì“ÇÝ<E2809A>oµ—p
KeyPad& pad = KeyPad::GetInstance();
// ループ
while (1)
{
pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::A))
{
// 引数:buffer, BUFFER_SIZE, TestCaseID(TID_FUNC_RDSEQ_WITH_VERIFY), detailInfo
//cardFunctionTestStart();
setting.up_down = 0;
setting.StartAddress = address.GetValue();
setting.size = read_size.GetValue();
setting.EndAddress = setting.StartAddress + setting.size;
setting.data = 0;
setting.reserved1 = 0;
setting.reserved2 = 0;
#ifdef INTEGRATION_TEST
cardSettingMenu( &setting );
cardFunctionTestStart( (u8*)card_test_buffer, BUFFER_SIZE, TID_FUNC_RDSEQ_WITH_VERIFY, &detail);
#endif
// ダンプ表示開始アドレス & 表示サイズ
dump_start_address = address.GetValue();
show_size = read_size.GetValue() > ONE_PAGE_SIZE ? ONE_PAGE_SIZE : read_size.GetValue();
@ -304,7 +311,6 @@ public:
while (1)
{
pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::A))
@ -393,7 +399,6 @@ public:
while (1)
{
pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::A))
@ -477,7 +482,6 @@ public:
while (1)
{
pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::A))
@ -557,7 +561,6 @@ public:
while (1)
{
pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::A))
@ -626,7 +629,6 @@ public:
while (1)
{
pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::A))
@ -670,7 +672,6 @@ public:
while (1)
{
pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::A))
@ -714,7 +715,6 @@ public:
while (1)
{
pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::B))

View File

@ -7,7 +7,7 @@
using namespace nn::red::nakayama;
class CtrCardTest: public Program
class CtrCardTest: public CardTestProgram
{
public:
virtual void Execute()

View File

@ -55,10 +55,18 @@ public:
{
run = true;
// S1なら 引数:buffer, BUFFER_SIZE, TestCaseID(TID_FUNC_TEST1), detailInfo
// S2なら 引数:buffer, BUFFER_SIZE, TestCaseID(TID_FUNC_TEST2), detailInfo
//cardFunctionTestStart();
#ifdef INTEGRATION_TEST
if ( card_type == CARD_TYPE_S1 )
{
// S1Èç ˆø<CB86>”:buffer, BUFFER_SIZE, TestCaseID(TID_FUNC_TEST1), detailInfo
cardFunctionTestStart( (u8*)card_test_buffer, BUFFER_SIZE, TID_FUNC_TEST1, &detail);
}
else
{
// S2Èç ˆø<CB86>”:buffer, BUFFER_SIZE, TestCaseID(TID_FUNC_TEST2), detailInfo
cardFunctionTestStart( (u8*)card_test_buffer, BUFFER_SIZE, TID_FUNC_TEST2, &detail);
}
#endif
}
}
@ -68,7 +76,11 @@ public:
if( run )
{
run = false;
#ifdef INTEGRATION_TEST
cardFunctionTestEnd();
#endif
}
else
{
@ -121,9 +133,10 @@ public:
{
run = true;
#ifdef INTEGRATION_TEST
// ˆø<CB86>”:buffer, BUFFER_SIZE, TestCaseID(TID_FUNC_INTEG), detailInfo
//cardFunctionTestStart();
cardFunctionTestStart( (u8*)card_test_buffer, BUFFER_SIZE, TID_FUNC_INTEG, &detail);
#endif
}
}
@ -133,7 +146,10 @@ public:
if( run )
{
run = false;
#ifdef INTEGRATION_TEST
cardFunctionTestEnd();
#endif
}
else
{

View File

@ -20,7 +20,6 @@ SOURCES[] =
nakayama.cpp
CtrCardTest.cpp
FunctionTest.cpp
CardTestFunction.cpp
LIBS += libnn_demo

View File

@ -2,7 +2,7 @@
using namespace nn::red::nakayama;
class AgingTestRWMem: public Program
class AgingTestRWMem: public CardTestProgram
{
public:
virtual void Execute()
@ -99,7 +99,7 @@ public:
while (1)
{
pad.ReadKey();
// pad.ReadKey();
page.Show(Display::GetInstance(Display::Lower));
if (pad.IsTrigger(KeyPad::B))
@ -112,7 +112,7 @@ public:
};
};
class ReadTestRWMem: public Program
class ReadTestRWMem: public CardTestProgram
{
public:
virtual void Execute()
@ -185,7 +185,7 @@ public:
};
class WriteTestRWMem: public Program
class WriteTestRWMem: public CardTestProgram
{
public:
virtual void Execute()
@ -258,7 +258,7 @@ public:
};
class ReadSpeedRWMem: public Program
class ReadSpeedRWMem: public CardTestProgram
{
public:
virtual void Execute()
@ -298,7 +298,7 @@ public:
};
class WriteSpeedRWMem: public Program
class WriteSpeedRWMem: public CardTestProgram
{
public:
virtual void Execute()
@ -338,7 +338,7 @@ public:
};
class ReadOnlyRWMem: public Program
class ReadOnlyRWMem: public CardTestProgram
{
public:
virtual void Execute()
@ -379,7 +379,7 @@ public:
};
};
class WriteOnlyRWMem: public Program
class WriteOnlyRWMem: public CardTestProgram
{
public:
virtual void Execute()
@ -422,7 +422,7 @@ public:
#define ID_NUM 3
class ReliabilityTestForRWMemory: public Program
class ReliabilityTestForRWMemory: public CardTestProgram
{
virtual void Execute()
{
@ -440,7 +440,7 @@ class ReliabilityTestForRWMemory: public Program
date.Text = __DATE__;
page.Add(date);
Selector<Program> menu;
Selector<CardTestProgram> menu;
menu.X = 20;
menu.Y = 40;
page.Add(menu);

View File

@ -2,7 +2,7 @@
using namespace nn::red::nakayama;
class AgingTestRom: public Program
class AgingTestRom: public CardTestProgram
{
public:
virtual void Execute()
@ -109,7 +109,7 @@ public:
};
};
class ReadTestRom: public Program
class ReadTestRom: public CardTestProgram
{
public:
virtual void Execute()
@ -227,7 +227,7 @@ public:
};
};
class ReadSpeedRom: public Program
class ReadSpeedRom: public CardTestProgram
{
public:
virtual void Execute()
@ -266,7 +266,7 @@ public:
};
};
class ReadOnlyRom: public Program
class ReadOnlyRom: public CardTestProgram
{
public:
virtual void Execute()
@ -309,7 +309,7 @@ public:
#define ID_NUM 3
class ReliabilityTestForRom: public Program
class ReliabilityTestForRom: public CardTestProgram
{
virtual void Execute()
{
@ -327,7 +327,7 @@ class ReliabilityTestForRom: public Program
date.Text = __DATE__;
page.Add(date);
Selector<Program> menu;
Selector<CardTestProgram> menu;
menu.X = 20;
menu.Y = 40;
page.Add(menu);

View File

@ -18,6 +18,10 @@
#include <nn/os.h>
#include <nn/dbg.h>
#ifdef INTEGRATION_TEST
#include <nn/os/os_DeviceMemory.h>
#endif
#include "nakayama.h"
#include "CtrCardTest.cpp"
@ -25,8 +29,17 @@ using namespace nn::red::nakayama;
extern "C" void nnMain()
{
CtrCardTest program;
program.Execute();
CtrCardTest program;
#ifdef INTEGRATION_TEST
// 連続したバッファの確保
nn::os::DeviceMemoryBlock* pDeviceMemoryBlock = new nn::os::DeviceMemoryBlock(BUFFER_SIZE, false);
// 確保したバッファを登録
program.card_test_buffer = pDeviceMemoryBlock->GetAddress();
#endif
program.Execute();
while(1){};
while(1){};
}

View File

@ -618,12 +618,13 @@ void ValueSelector::KeyIn(KeyPad& key)
*---------------------------------------------------------------------------*/
void VariableSelector::KeyIn(KeyPad& key)
{
if( !EditMode )
{
ValueSelector::KeyIn(key);
// 選択中のアイテムが編集可能オブジェクト
if( selector::items[selector::current_item]->Editable )
if( items[current_item]->Editable )
{
// 右ボタンが押された場合
if( key.IsTrigger(KeyPad::RIGHT) )

View File

@ -1480,14 +1480,15 @@ public:
class CardTestProgram : public Program{
public:
static settingInfo setting;
static detailInfo detail;
settingInfo setting;
detailInfo detail;
CardType card_type;
bool verify_result;
void* card_test_buffer;
};
//settingInfo CardTestProgram::setting;
//detailInfo CardTestProgram::detail;
/*!--------------------------------------------------------------------------*