From: Alan Cox <alan@lxorguk.ukuu.org.uk>
To: Mark Lord <liml@rtr.ca>
Cc: Tejun Heo <htejun@gmail.com>, Jeff Garzik <jeff@garzik.org>,
jb.faq@gmx.de,
IDE/ATA development list <linux-ide@vger.kernel.org>
Subject: Re: [PATCH #upstream-fixes] libata: assume no device is attached if both IDENTIFYs are aborted
Date: Wed, 26 Mar 2008 15:44:24 +0000 [thread overview]
Message-ID: <20080326154424.0d523ab0@core> (raw)
In-Reply-To: <47EA6230.1090301@rtr.ca>
> > How did they work anyway? By specifying geometry manually to the
> > driver? I think we can do that. We just need another cute HORKAGE.
> > ATA_HORKAGE_NO_IDENITFY and some massaging around EH to handle it.
> > Heh... That's gonna be a silly but fun project. :-)
> ..
>
> Geometry from CMOS, BIOS, partition table, or kernel command line.
Thats the only bit we really need - I've already got the rest of the
support code back to MFM drives sitting in my test tree waiting a finish
and polish. The actual probe code for the initial detect is quite
different anyway - you either rely on BIOS settings or you watch TRKZ and
try to restore to track zero.
The needed fake block is pretty small
memset(buf, 0, 512);
id[0] = 0x8000; /* ATA */
id[1] = d->cyls;
id[2] = 0xC837;
id[3] = d->heads;
id[6] = d->sectors;
memset(id + 10, " ", 20);
/* FIXME: Set some kind of unique serial */
memcpy(id + 23, "ATAHD001", 8);
memcpy(id + 27, "ATA HD EMULATION OF MFM/RLL ", 40);
id[47] = 0x8000;
id[49] = 0x30;
In fact if we had the proposed memcpy_to_sg/memcpy_from_sg type
interfaces discussed between Matthew Wilcox and Jeff in the download
microcode thread we could actually intercept IDENTIFY in the MFM driver
and fix it up there (after all we can't issue it to the
MFM/RLL controller).
Alan
prev parent reply other threads:[~2008-03-26 16:02 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-23 6:16 [PATCH #upstream-fixes] libata: assume no device is attached if both IDENTIFYs are aborted Tejun Heo
2008-03-23 12:46 ` Alan Cox
2008-03-25 2:26 ` Jeff Garzik
2008-03-26 14:05 ` Mark Lord
2008-03-26 14:43 ` Tejun Heo
2008-03-26 14:48 ` Mark Lord
2008-03-26 15:44 ` Alan Cox [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080326154424.0d523ab0@core \
--to=alan@lxorguk.ukuu.org.uk \
--cc=htejun@gmail.com \
--cc=jb.faq@gmx.de \
--cc=jeff@garzik.org \
--cc=liml@rtr.ca \
--cc=linux-ide@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).