Re: [ltp] IBM HDAPS Someone interested? (Accelerometer)

From: Alejandro Bonilla
Date: Sat Jun 25 2005 - 14:16:03 EST


Pavel Machek wrote:

Hi!




Yup, it's just doing port IO. Get a kernel debugger for windows like
softice and this will be trivial to RE.
READ_PORT_USHORT / WRITE_PORT_UCHAR / READ_PORT_UCHAR


There are 3 ports involved. The 0xed "non-existant delay port" and a pair
of ports that are through the Super-I/O / IDE. They are used in a
index+value setup similar to reading/writing the AT keyboard


controller.



I think you got it... 2ports seem like enough for some kind of small
u-controller...



From what I remember, my conclusion was that these instructions were the
ones to park the heads and then lock the IDE bus. It's a couple of months
ago, but somewhere I have the simplified version of what it was doing...



Don't think so... parking heads will go through IDE layer...
Pavel



I have a question here, how do you guys think that the head is parked, is it done by the controller directly, which then sends the command to the HD to park the head, or this is done by the operating system in some kind of way?

I think the OS or user space is too slow like to react to send a park command to the hard drive, so this most be done directly by the embedded controller, but still I think it needs some input from the OS, to initialize it's settings. i.e. after all, in windows you do have the settings in the software for HDAPS, but it looks like it is _not_ managed by the operating system at all if there is some type of action to be taken. This is also probably why HDAPS won't kick in until booted, and that is because it needs to load its config setup by the software.

This is what I think, please correct me if I'm saying something crazy.


OS booted, sends settings to the controller, if settings changed, the OS will send the settings again to the controller. -> once the controller has the configuration from the user, which is in Windows, loaded by default, then the controller reacts depending on it's output from the accelerometer, sending inmediate commands or parking the head of the HD.

Then also, the OS is either notified about the movement, or actually it starts reading from the controller, for example, when doing the 3D view.

The 3D view software takes some time loading, if it would be normally monitoring, then It wouldn't take the 4 seconds it takes. I think the OS only reads to give the user a clue of their nice feature, but is all really done with the controller-> HD.

After all, IBM testing says that HDAPS worked perfectly from a 70cm fall.

.Alejandro

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/