Sample example not working: fileio.exe

Till Straumann strauman at slac.stanford.edu
Wed Mar 12 19:27:13 UTC 2008


IIRC /dev/ide0 is the raw ide device (interface to IDE controller).
You need the ATA driver on top, initialize the partition table 
(rtems_ide_part_table_initialize("/dev/hda")) which
then creates 'block' (all devices registered by ioman have the S_IFCHR 
type) devices "/dev/hdaX" for individual partitions. It's those
you mount.

However, beware that using libblock (especially in combination flash 
devices) does
bad things (disable preemption).

Also, there are a few recent PRs affecting  ide/ata/libblock...

HTH
-- Till

Joel Sherrill wrote:
> Till Straumann wrote:
>> Did you look at PR649?
>>   
> Thanks.    It doesn't hang anymore but now how do I
> mount:
>
> RTEMS SHELL (Ver.1.0-FRC):/dev/console. Mar 12 2008. 'help' to list 
> commands.
> SHLL [/] # ls /dev/
> -rwxr-xr-x   1   root   root           0 Jan 01 00:00 console
> -rwxr-xr-x   1   root   root           0 Jan 01 00:00 ide0
> 2 files 0 bytes occupied
> SHLL [/] # mkdir /mnt
> SHLL [/] # mount -t msdos /dev/ide0 /mnt
> mount: mount failed: Block device required
> SHLL [/] #
>
> And for those who haven't tried the RTEMS shell recently, that is
> a command line interface with the recently added capability to
> execute simple script files. :D
>
> --joel
>
>> T.
>> Joel Sherrill wrote:
>>  
>>> Thomas,
>>>
>>> It is probably just a setup issue on my side but the IDE
>>> driver locks up during initialization on qemu before Init
>>> runs.
>>>
>>> Program received signal SIGINT, Interrupt.
>>> ata_process_request_on_init_phase (ctrl_minor=0, areq=0x15da10)
>>> at ../../../../../current/c/src/libchip/ide/ata.c:1422
>>> 1422 (!(byte & IDE_REGISTER_STATUS_DRDY)));
>>> (gdb) bt
>>> #0 ata_process_request_on_init_phase (ctrl_minor=0, areq=0x15da10)
>>> at ../../../../../current/c/src/libchip/ide/ata.c:1422
>>> #1 0x0010683c in ata_initialize (major=3, minor_arg=0, args=0x0)
>>> at ../../../../../current/c/src/libchip/ide/ata.c:1291
>>> #2 0x0011109b in _IO_Initialize_all_drivers ()
>>> at ../../../../../../current/c/src/../../cpukit/sapi/src/io.c:97
>>> #3 0x00111046 in rtems_initialize_executive_early (
>>> configuration_table=0x144460)
>>> at ../../../../../../current/c/src/../../cpukit/sapi/src/exinit.c:239
>>> #4 0x00108d3c in boot_card (argc=0, argv=0x0, envp=0x0)
>>> at
>>> ../../../../../../../../current/c/src/lib/libbsp/i386/pc386/../../shared/bootcard.c:91 
>>>
>>> #5 0x00100071 in zero_bss ()
>>> at
>>> ../../../../../../../../current/c/src/lib/libbsp/i386/pc386/start/start.S:184 
>>>
>>> #6 0x00000000 in ?? ()
>>>
>>> Stepping into the check, I see this:
>>>
>>> (gdb) s
>>> 102 uint32_t port = IDE_Controller_Table[minor].port1;
>>> (gdb) s
>>> 105 if (reg == IDE_REGISTER_DATA_WORD) {
>>> (gdb) s
>>> 111 inport_byte(port+reg, bval1);
>>> (gdb) p port
>>> $1 = 496
>>> (gdb) p reg
>>> $2 = 7
>>> (gdb) p/x port
>>> $3 = 0x1f0
>>>
>>> So it is hanging on the first IDE interface's status.
>>>
>>> My qemu invocation is:
>>>
>>> qemu -M isapc -m 8 -boot a -fda /home/joel/qemu/pc386_fda \
>>> -hda fat:/home/joel/qemu/hd -serial stdio -s
>>>
>>> I don't know if this is THE problem here or not but it is
>>> stopping for me. :)
>>>
>>> --joel
>>>
>>> Thomas Doerfler wrote:
>>>
>>>    
>>>> -----BEGIN PGP SIGNED MESSAGE-----
>>>> Hash: SHA1
>>>>
>>>> Vinod,
>>>>
>>>> can you give us more information about the disk/disks and interfaces
>>>> installed in that computer?
>>>>
>>>> wkr,
>>>> Thomas.
>>>>
>>>> Vinod Kulkarni schrieb:
>>>> | Hi Thomas,
>>>> |     Yes, I am testing it on 386 PC (computer).
>>>> |
>>>> | Regards
>>>> | Vinod
>>>> |
>>>> | -----Original Message-----
>>>> | From: Thomas Doerfler [mailto:Thomas.Doerfler at imd-systems.de]
>>>> | Sent: Wednesday, March 12, 2008 4:58 PM
>>>> | To: vinodk at tataelxsi.co.in
>>>> | Cc: rtems-users at rtems.com
>>>> | Subject: Re: Sample example not working: fileio.exe
>>>> |
>>>> | Vinod,
>>>> |
>>>> | one thing you should check: currently the disk interface is based 
>>>> on a
>>>> | IDE driver. Do you possibly have fileio.exe running on a machnie, 
>>>> that
>>>> | has a modified disk interface (like SATA...). I have no 
>>>> experience, how
>>>> | the RTEMS driver would cooperate with NON-PATA Interfaces.
>>>> |
>>>> | wkr,
>>>> | Thomas.
>>>> |
>>>> |
>>>> | Vinod Kulkarni schrieb:
>>>> | | Hi,
>>>> | |     I have built RTEMS for i386 (pc386) on Linux. I could 
>>>> execute sample
>>>> | | examples such as hello.exe. However, when I tried to execute
>>>> fileio.exe, I
>>>> | | am not able to see any output on the console. But as per the 
>>>> document
>>>> | | fileio.doc, it needs to display options such as "s" etc. Could
>>>> anyone tell
>>>> | | me what could be the problem?
>>>> | |
>>>> | | Regards
>>>> | | Vinod
>>>> | |
>>>> | |
>>>> | | The information contained in this electronic message and any
>>>> | attachments to this message are intended for the exclusive use of 
>>>> the
>>>> | addressee(s) and may contain proprietary, confidential or privileged
>>>> | information. If you are not the intended recipient, you should not
>>>> | disseminate, distribute or copy this e-mail. Please notify the 
>>>> sender
>>>> | immediately and destroy all copies of this message and any 
>>>> attachments
>>>> | contained in it.
>>>> | |
>>>> | | Contact your Administrator for further information.
>>>> | |
>>>> | | _______________________________________________
>>>> | | rtems-users mailing list
>>>> | | rtems-users at rtems.com
>>>> | | http://rtems.rtems.org/mailman/listinfo/rtems-users
>>>> |
>>>> |
>>>>
>>>> The information contained in this electronic message and any 
>>>> attachments
>>>> to this message are intended for the exclusive use of the addressee(s)
>>>> and may contain proprietary, confidential or privileged 
>>>> information. If
>>>> you are not the intended recipient, you should not disseminate,
>>>> distribute or copy this e-mail. Please notify the sender 
>>>> immediately and
>>>> destroy all copies of this message and any attachments contained in 
>>>> it.
>>>>
>>>> Contact your Administrator for further information.
>>>>
>>>>
>>>> - --
>>>> - --------------------------------------------
>>>> IMD Ingenieurbuero fuer Microcomputertechnik
>>>> Thomas Doerfler           Herbststrasse 8
>>>> D-82178 Puchheim          Germany
>>>> email:    Thomas.Doerfler at imd-systems.de
>>>> PGP public key available at:
>>>> ~     http://www.imd-systems.de/pgpkey_en.html
>>>> -----BEGIN PGP SIGNATURE-----
>>>> Version: GnuPG v1.4.3 (MingW32)
>>>> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>>>>
>>>> iD8DBQFH188bwHyg4bDtfjQRAk67AJ0epgjbJBPv/tYPVkkohUz5TcrosACcDUGM
>>>> zJzx80ixdHALZC75tWxx64E=
>>>> =ewYD
>>>> -----END PGP SIGNATURE-----
>>>> _______________________________________________
>>>> rtems-users mailing list
>>>> rtems-users at rtems.com
>>>> http://rtems.rtems.org/mailman/listinfo/rtems-users
>>>>
>>>>
>>>>       
>>>
>>>     
>>
>>   
>
>




More information about the users mailing list