This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

IDE configuration/identity


Hey All,

I'm looking to get a PC/104 platform going, using FAT/IDE on a CompactFlash device, and am having some trouble deciphering the configuration value. It looks like there was some debate when the code was originally posted, but I'm unsure of the resolution. The code (ide_disk.c) contains the check of the 16-bit configuration word with this:

       if (((ide_idData->general_conf>>8)&0x1f)!=2) {
           diag_printf("IDE device %d:%d is not a hard disk!\n",
                       info->port, info->chan);
           return false;
       }

The only reference I can find to this value is from the book, "The SCSI Bus and IDE Interface" by Friedhelm Schmidt, which claims this bit pattern for the configuration word:

   0  Reserved
   1  Hard-sectored drive
   2  Soft-sectored drive
   3  Encoding other than MFM
   4  Head switching time 15us
   5  Spindle motor control implemented
   6  Hard Drive
   7  Changeable medium
   8  Data rate to 5MHz
   9  Data rate between 5 and 10 MHz
   10 Data rate above 10 MHz
   11 Motor Speed tolerance above 0.5%
   12 Data clock offset available
   13 Track offset available
   14 Speed tolerance gap necessary
   15 Reserved

So, my questions... Am I looking at the right values? Can anyone confirm these bits? And if so, why is the driver rejecting devices based on these values?

Thanks,
Frank



--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]