cancel
Showing results for 
Search instead for 
Did you mean: 

stpc elite ide

fboudra
Associate II
Posted on February 17, 2004 at 13:17

stpc elite ide

3 REPLIES 3
fboudra
Associate II
Posted on February 10, 2004 at 11:00

Hi,

i try to use the loader from the stpckit. With the evaluation board, it works fine.

But with my card, it hang in HWIDE_GetHardDiskInfo :

BEGIN : HWIDE_GetHardDiskInfo

ulDevice = 0x1 (1)

pucInfo = 0x56180

BRANCH : Secondary IDE

BRAnCH : Master drive

LOOP : Wait not busy

On the evaluation board, i use an ide harddisk in secondary master (like the sample).

On my card, we got an ide flashdisk and only one connector for the flashdisk so it's in primary master.

the ReadBlockSector256Max and the conversion from LBA to CHS doesn't work :

BEGIN : HWID_ReadBlockSector256Max

ulDeviceID = 0x20020003 (537001987)

ulLBA = 0x0 (0)

pucBuffer = 0x563e0

ulCount = 0x1 (1)

BRANCH : Primary IDE

BRANCH : Master drive

INFO : Convert LBA to CHS

usCylinder = 0x0

ucHead = 0x0

ucSector = 0x1 (1)

An other thing, i don't understand, my card doesn't hang always in the same function.

How can i easily change the loader for only use the primary ide ? ( i don't have the secondary ide on my card )

What's the problem with the LBA and CHS ?

i join a capture of what i have if someone have got an idea.

thks

fboudra
Associate II
Posted on February 10, 2004 at 12:19

the attachment doesn't work :

Init Mem Shd Opt Pci Cpy Ldr

BEGIN : OSAL_Init

BEGIN : SWALLOC_NewHeap

psHeap = 0x66d4

pucBegin = 0x66fc

ulSize = 0x40000 (262144)

END : SWALLOC_NewHeap

BEGIN : HWTIMER_InitWaitFunction

BEGIN : HWTIMER_SetMode

ulTimer = 0x2 (2)

ucMode = 0x0 (0)

END : HWTIMER_SetMode

END : HWTIMER_InitWaitFunction

END : OSAL_Init

BEGIN : REGHOST_Init

ulLib = 0xffff (65535)

END : REGHOST_Init

BEGIN : DBGLOG_OpenSerial

BEGIN : DBGLOG_OpenSerial

Enable IDE controller...

BEGIN : HWPCI_ScanBus

BRANCH : Scan the bus for the first time

LOOP : Scan the 32 devices

BRANCH : Valid device found

BRANCH : Valid device found

BRANCH : Multiple functions device

LOOP : Scan the 7 other functions

BRANCH : Valid function found

BRANCH : Valid device found

BRANCH : Valid device found

BRANCH : Multiple functions device

LOOP : Scan the 7 other functions

BRANCH : Valid function found

BRANCH : Valid function found

BRANCH : Valid device found

LOOP : Send the function for each device

BEGIN : HWPCI_SetIDEInLegacyMode

ulDevice = 0x5800 (2252

ulParam = 0x0 (0)

END : HWPCI_SetIDEInLegacyMode

ulReturn = 0x1 (1)

BEGIN : HWPCI_SetIDEInLegacyMode

ulDevice = 0x6000 (24576)

ulParam = 0x0 (0)

END : HWPCI_SetIDEInLegacyMode

ulReturn = 0x1 (1)

BEGIN : HWPCI_SetIDEInLegacyMode

ulDevice = 0x6100 (24832)

ulParam = 0x0 (0)

BRANCH : Found IDE class code

BRANCH : This IDE device can be set in legacy mode

END : HWPCI_SetIDEInLegacyMode

ulReturn = 0x0 (0)

END : HWPCI_ScanBus

Look for kernel partition...

BEGIN : HWIDE_FindPartition

ulType = 0x21 (33)

pulDeviceID = 0x0

pulLBA = 0x0

pulSize = 0x0

BEGIN : HWIDE_LoadPartitionTable

LOOP : IDE device scan

BEGIN : HWIDE_GetDeviceID

ulDevice = 0x3 (3)

BRANCH : Use a temporary buffer for identify command

BRANCH : Start identify command

BEGIN : HWIDE_GetHardDiskInfo

ulDevice = 0x3 (3)

pucInfo = 0x56180

BRANCH : Primary IDE

BRANCH : Master drive

LOOP : Wait not busy

LOOP : Wait no more busy

BRANCH : No error

BRANCH : Data received

LOOP : Copy sector to buffer

END : HWIDE_GetHardDiskInfo

ulError = 0x0 (0)

BRANCH : Device found

END : HWIDE_GetDeviceID

ulID = 0x20020003 (537001987)

BRANCH : Valid IDE device

BEGIN : HWIDE_ReadBlockSectors

ulDeviceID = 0x20020003 (537001987)

ulLBA = 0x0 (0)

pucBuffer = 0x563e0

ulCount = 0x1 (1)

LOOP : 256 sectors read loop

BRANCH : Last 256 packet

BEGIN : HWIDE_ReadBlockSectors256Max

ulDeviceID = 0x20020003 (537001987)

ulLBA = 0x0 (0)

pucBuffer = 0x563e0

ulCount = 0x1 (1)

BRANCH : Primary IDE

BRANCH : Master drive

INFO : Convert LBA to CHS

usCylinder = 0x0 (0)

ucHead = 0x0 (0)

ucSector = 0x1 (1)

LOOP : Wait not busy

LOOP : Copy sectors

END : HWIDE_ReadBlockSectors256Max

ulError = 0x0 (0)

END : HWIDE_ReadBlockSectors

ulError = 0x0 (0)

BRANCH : Valid partition sector

LOOP : Scan the partition table

END : HWIDE_PartitionInfo

ulError = 0x0 (0)

BEGIN : HWIDE_GetDeviceID

ulDevice = 0x2 (2)

BRANCH : Use a temporary buffer for identify command

BRANCH : Start identify command

BEGIN : HWIDE_GetHardDiskInfo

ulDevice = 0x2 (2)

pucInfo = 0x56180

BRANCH : Primary IDE

BRANCH : Slave drive

LOOP : Wait not busy

LOOP : Wait no more busy

BRANCH : No error

BRANCH : No data received

END : HWIDE_GetHardDiskInfo

ulError = 0xfffffffd (4294967293)

BRANCH : No device found

END : HWIDE_GetDeviceID

ulID = 0xffffffff (4294967295)

BRANCH : No valid IDE device

BEGIN : HWIDE_GetDeviceID

ulDevice = 0x1 (1)

BRANCH : Use a temporary buffer for identify command

BRANCH : Start identify command

BEGIN : HWIDE_GetHardDiskInfo

ulDevice = 0x1 (1)

pucInfo = 0x56180

BRANCH : Secondary IDE

BRANCH : Master drive

LOOP : Wait not busy

WARNING : Data waiting to be process

END : HWIDE_GetHardDiskInfo

ulError = 0xfffffffe (4294967294)

BRANCH : No device found

END : HWIDE_GetDeviceID

ulID = 0xffffffff (4294967295)

BRANCH : No valid IDE device

BEGIN : HWIDE_GetDeviceID

ulDevice = 0x0 (0)

BRANCH : Use a temporary buffer for identify command

BRANCH : Start identify command

BEGIN : HWIDE_GetHardDiskInfo

ulDevice = 0x0 (0)

pucInfo = 0x56180

BRANCH : Secondary IDE

BRANCH : Slave drive

LOOP : Wait not busy

fboudra
Associate II
Posted on February 17, 2004 at 13:17

hi,

the stpckit/bootloader doesn't work with IDE flashdisk from M-Systems.

if no one can help on this forum/st support site, where can i find help ??

if someone successfully used linuxbios/freebios, i'm also interested.

best regards