This patch adds support for the ATA Security commands to atacontrol. It also includes trivial changes to sys/dev/ata/ata-queue.c to teach the kernel about the ATA Security commands when printing error messages. I've implemented the security commands using the T13 draft ATA 7 Volume 1 Revision 4b as primary reference. Please consider this patch for inclusion into -current. ATA Security adds commands to password protect a drive. Normally, ATA Security is handled by the BIOS and the security configuration is frozen before the OS is loaded. However, some BIOSes do not freeze the security configuration. In such cases, atacontrol can be used to issue security commands to a device, for instance to unlock a device, set a password, disable password protection, to wipe the device or just to freeze the security configuration as part of the OS initialization process. usage: atacontrol security <device> <security-command>: atacontrol security <device> atacontrol security <device> freeze atacontrol security <device> set master atacontrol security <device> set user high|maximum atacontrol security <device> unlock master|user atacontrol security <device> disable master|user atacontrol security <device> erase master|user [enhanced] See the patched manual page for details. Fix: The patch should apply to -current, but the code has been tested on RELENG_7_1, RELENG_7_0 and RELENG_6_3 only. You can also grab it from http://daniel.roe.ch/code/ata/atasecurity-20081007-complete.diff
State Changed From-To: open->suspended Work on the ATA subsytem has been suspended, because eventually it will get replaced by CAM.
atacontrol is no more after FreeBSD 9.x. Long live atacam and friends.