AMI-Aptio-BIOS-Reversed / AmiModulePkg / HddSmart / HddSMART /
@Ajax Dong Ajax Dong authored 2 days ago
..
HddSmart.c Recovering names (well, look still has huge cleanups) 2 days ago
HddSmart.h Recovering names (well, look still has huge cleanups) 2 days ago
HddSmart.md Restructure the repo 2 days ago
README.md Restructure the repo 2 days ago
README.md

HddSmart

Index: 0080 (80)
Size: 13728 bytes (PE32+ body)
Phase: DXE (Driver eXecution Environment)
Subsystem: EFI_BOOT_SERVICE_DRIVER (0x0B)

Overview

HDD SMART (Self-Monitoring, Analysis, and Reporting Technology) UEFI driver. Enumerates ATA/ATAPI devices, issues IDENTIFY and SMART commands via the ATA Pass-Through Protocol, and exposes drive health results through HII configuration forms. Provides a periodic timer that polls drive status and issues a notification when a predictive failure condition is detected.

Key Functions

  • HddSmartDriverEntry -- Module entry point; initializes the HDD SMART instance and registers HII forms
  • HddSmartAtaIdentify -- Issues ATA IDENTIFY command to enumerate drive capabilities
  • HddSmartReadData -- Issues SMART READ DATA command to retrieve drive health attributes
  • HddSmartPollTimer -- Periodic timer callback that checks drive status for predictive failures
  • HddSmartNotificationHandler -- Handles predictive failure notification and user alert
  • HddSmartFormCallback -- HII form callback for displaying SMART data in setup

Protocols / Dependencies

  • EFI_ATA_PASS_THRU_PROTOCOL -- Low-level ATA command interface
  • HII_CONFIG_ACCESS_PROTOCOL -- Configuration form callbacks
  • HII_DATABASE_PROTOCOL -- HII package list management
  • HII_PACKAGE_LIST_PROTOCOL -- IFR form data storage
  • UEFI Boot Services -- Timer event for periodic polling

Platform

HR650X BIOS (AMI UEFI firmware). Source originates from e:\hs\AmiModulePkg\HddSmart\HddSMART.c, x86-64 architecture.