Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 Dec 2017 12:31:43 +1100 (EST)
From:      Bruce Evans <brde@optusnet.com.au>
To:        Warner Losh <imp@bsdimp.com>
Cc:        Bruce Evans <brde@optusnet.com.au>, Cy Schubert <Cy.Schubert@komquats.com>, Hans Petter Selasky <hps@selasky.org>, Eitan Adler <lists@eitanadler.com>,  "Rodney W. Grimes" <freebsd-rwg@pdx.rh.cn85.dnsmgr.net>,  "freebsd-arch@freebsd.org" <arch@freebsd.org>
Subject:   Re: Deprecating / Removing floppy drive support
Message-ID:  <20171204115511.N1389@besplex.bde.org>
In-Reply-To: <CANCZdfrHq61_D9cXg36UqAgZ%2BLCFfrJO2bjpd22POz2Qj-Fxxg@mail.gmail.com>
References:  <freebsd-rwg@pdx.rh.CN85.dnsmgr.net> <201712031655.vB3GtIME041023@pdx.rh.CN85.dnsmgr.net> <201712032005.vB3K5Zki034723@slippy.cwsent.com> <CANCZdfq%2BiRDJeNFP9hKZXrDmcZZPn4jqzYZDpspiohJ%2BFMj9hA@mail.gmail.com> <20171204092457.I961@besplex.bde.org> <CANCZdfrHq61_D9cXg36UqAgZ%2BLCFfrJO2bjpd22POz2Qj-Fxxg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 3 Dec 2017, Warner Losh wrote:

> On Sun, Dec 3, 2017 at 4:40 PM, Bruce Evans <brde@optusnet.com.au> wrote:
>
>> On Sun, 3 Dec 2017, Warner Losh wrote:
>>
>> On Sun, Dec 3, 2017 at 1:05 PM, Cy Schubert <Cy.Schubert@komquats.com>
>>> wrote:
>>>
>>> In message <201712031655.vB3GtIME041023@pdx.rh.CN85.dnsmgr.net>, "Rodney
>>>> W.
>>>> Gri
>>>> mes" writes:
>>>>
>>>
>> The inner quoting is more broken than usual (split in the middle of
>> rgrimes' name).
>
> The googles are hating me... That is to say gmail does this automatically,
> and apparently with malice of forethought when rgrimes is involved.

:-)

>> ...
>> The floppy driver itself is fine. It relies, however, on ISADMA working. It
>>> got broken and nobody noticed. Also, FreeBSD has SMP while OpenBSD does
>>> not, so that's been a much larger code velocity over all.
>>>
>>> Reading works OK. It's writing that fails. So this datapoint is consistent
>>> with my experience. There's other issues that need to be fixed apart from
>>> ISADMA, but those are minor in comparison.
>>
>> ISADMA worked for writing by fdformat and cp of 1 floppy under -current
>> here.
>> I used a UP i386 system with 1GB.  If the bug only affects SMP, and64 or
>> large memory, then it is easy to work around by not using these.  Memory
>> above 4GB is especially easy to avoid using a boot option.
>
> I may have been booting a MP kernel when I tried. I'll have to give it
> another try. Just to confirm, this was a FreeBSD/i386 kernel, not a
> FreeBSD/amd64 kernel, right? And was this for a 5.25" drive or 3.5" drive?
> I know both on the same controller cannot work due to some unfortunate
> assumptions in the code that looked hard to change...

Yes, it was i386.  In fact, I have no amd64 system that supports fd drives,
so I can't test this.  Cy just tested it and found amd64 failing and i386
working.

It was for a 3.5" drive.  I can almost test the combination.  I have a
system for debugging/keeping old hardware with a 3.5" drive and an 5.25"
drive.  Unfortunately, the 5.25" drive broke 16-17 years ago (it is
detected by has seek problems after breaking it doing too many seeks
trying to recover from i/o errors for attempted recovery of disks 16-17
years ago).

> If the code is actually working today, for both read and write, then that
> changes my attitude, though not by a huge amount... Working code for old
> devices is almost never removed from the tree unless the device has lost
> all relevance (a hard case to be made here, since people still use them
> more often than many of the other things in the tree).

Lots of drivers probably have broken DMA or just broken addressing at the
4GB boundary, but are still in the tree and work perfectly on i386 without
PAE or amd64 with reduced memory, but are less useful than the fd driver
since they have backwards-compatible replacements for both hardware and
software.  There is no need to handle old media for devices like NICs,
but backwards compatibility requires supporting lower speeds.

> ...
>> So usb floppy drives can't even duplicate fdformat's functionality?
>> There is also hard to replace functionality in other utilites.
>
> The problem is that USB floppy definition is only for 3.5" 1.44MB
> diskettes. Well, to be honest, that's not entirely true, it also supports
> 720k DD 3.5" diskette and a total oddball 1.25MB HD diskette (77 tracks, 8
> sectors, 1024 bytes per sector). See table 35 in
> http://www.usb.org/developers/docs/devclass_docs/usbmass-ufi10.pdf if you
> want the details. I was disappointed that 5.25" wasn't supported at all in
> the specification, or there wasn't some generic way to specify things when
> I was looking at this for some rx50 work I did earlier this year..

I thought that you meant funky formatting used by some copy protection
schemes.  I have a (working) WDC fd controller and double density
drives on a 35-year old system that can do slightly more/different
formatting than the NEC controller, but no disks with copy protection
except the natural protection of obscure formats.

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20171204115511.N1389>