Date: Wed, 6 Aug 1997 13:07:52 +0930 (CST) From: Michael Smith <msmith@atrad.adelaide.edu.au> To: ggm@connect.com.au (George Michaelson) Cc: msmith@atrad.adelaide.edu.au, current@freebsd.org Subject: Re: canonical issue wrt DMA & wd/wdc Message-ID: <199708060337.NAA03311@genesis.atrad.adelaide.edu.au> In-Reply-To: <19569.870837339@connect.com.au> from George Michaelson at "Aug 6, 97 01:15:39 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
George Michaelson stands accused of saying: > > This is nonsense; you can't put flags on 'wd' instances, and it works > fine on 'wdc' (the only place you _can_ put it). > > Goest thou and read LINT. I'm afraid you can flag wd0 as well as wdc0 > and as I said, flag wdc0 broke for me. Its highly position specific and > by adding said word, config blew up at me. # ST-506, ESDI, and IDE hard disks: `wdc' and `wd' # # NB: ``Enhanced IDE'' is NOT supported at this time. # # The flags fields are used to enable the multi-sector I/O and # the 32BIT I/O modes. The flags may be used in either the controller # definition or in the individual disk definitions. The controller # definition is supported for the boot configuration stuff. # # Each drive has a 16 bit flags value defined: # The low 8 bits are the maximum value for the multi-sector I/O, # where 0xff defaults to the maximum that the drive can handle. # The high bit of the 16 bit flags (0x8000) allows probing for # 32 bit transfers. # # The flags field for the drives can be specified in the controller # specification with the low 16 bits for drive 0, and the high 16 bits # for drive 1. # e.g.: #controller wdc0 at isa? port "IO_WD1" bio irq 14 flags 0x00ff8004 vector wdintr # # specifies that drive 0 will be allowed to probe for 32 bit transfers and # a maximum multi-sector transfer of 4 sectors, and drive 1 will not be # allowed to probe for 32 bit transfers, but will allow multi-sector # transfers up to the maximum that the drive supports. # # controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr disk wd0 at wdc0 drive 0 disk wd1 at wdc0 drive 1 controller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr disk wd2 at wdc1 drive 0 disk wd3 at wdc1 drive 1 I'd have to say I can't see any flags on the 'wdX' entries there, and the syntax given for 'wdc' has worked fine for me ever since it was introduced. > Which flags? The 80ff flags for each channel are required for 32-bit > and multi-block mode to be used, yes. > > Yes, but in the absence of any guidance, what does it buy me? I'm down-speeding > from SPARCland where its all moot. I am not clue-dense with respect to the > advantages one way or another. What more do you need to know that's not covered above? Ifyou know understand, can you encapsulate the information you obtained in a fashion that could be presented to other people in the uninformed state? > Bit concerned you abjure flags can't on devices and can on > controllers. Tain't what I see since cvsup last night. Flags can go on devices and controllers, but not disks. I suspect you are looking at the wrong entry in LINT. (Note the above excerpt is from version 1.356, dated four days ago with my name on it...) -- ]] Mike Smith, Software Engineer msmith@gsoft.com.au [[ ]] Genesis Software genesis@gsoft.com.au [[ ]] High-speed data acquisition and (GSM mobile) 0411-222-496 [[ ]] realtime instrument control. (ph) +61-8-8267-3493 [[ ]] Unix hardware collector. "Where are your PEZ?" The Tick [[
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199708060337.NAA03311>
