Problem with ATA driver on pc386

Angelo Fraietta afraiett at bigpond.net.au
Wed Jul 21 01:46:48 UTC 2004



Angelo Fraietta wrote:
> 
> I changed the conditionals on the 2 do - while loops to include
> 
> ata_process_request_on_init_phase(rtems_device_minor_number  ctrl_minor,
>                                   ata_req_t                 *areq)
> {
>     unsigned16         byte;/* emphasize that only 8 low bits is 
> meaningful */
>     <snip>
>     do {
>         ide_controller_read_register(ctrl_minor, IDE_REGISTER_STATUS, 
> &byte);
>                 printk("Start ide_controller_read_register 1 Byte = 
> %x\r\n", byte);
>     } while (((byte & IDE_REGISTER_STATUS_BSY) ||
>              (!(byte & IDE_REGISTER_STATUS_DRDY))) && !(byte & 
> IDE_REGISTER_STATUS_DRDY));
>     <snip>
>     do {
>         ide_controller_read_register(ctrl_minor, IDE_REGISTER_STATUS, 
> &byte);
>                 printk("Start ide_controller_read_register 2 Byte = 
> %x\r\n", byte);
>     } while ((byte & IDE_REGISTER_STATUS_BSY)&& !(byte & 
> IDE_REGISTER_STATUS_DRDY));
> 
> This stopped from freezing. This however, was on the DIMMPC with the On 
> Board IDE enabled. When I plugged the PC104 in, the first one looped 
> indefinately with a byte value of 0. I disabled the primary IDE port in 
> the bios, which gave me the result as per the DIMMPC - Byte returns zero.
> 
> In performing theses tests, I beliee that the secondary IDE port is not 
> tested. Am I correct? If so, what would I need to do to test and mount it?
> 

I also found that the changes that I made also prevented the Primary 
Master from loading, so these changes don't work
-- 
Angelo Fraietta

PO Box 859
Hamilton NSW 2303

Home Page


http://www.users.bigpond.com/angelo_f/

There are those who seek knowledge for the sake of knowledge - that is 
CURIOSITY
There are those who seek knowledge to be known by others - that is VANITY
There are those who seek knowledge in order to serve - that is LOVE
     Bernard of Clairvaux (1090 - 1153)





More information about the users mailing list