Tejun Heo wrote: > Jeff Garzik wrote: >> Tejun Heo wrote: >>> Add dev->acpi_init_gtm and store initial GTM values on host >>> initialization. If the field is valid, ATA_PFLAG_INIT_GTM_VALID flag >>> is set. This is to remember BIOS/firmware programmed initial timing >>> for later use before reset and mode configuration modify it. >>> >>> Signed-off-by: Tejun Heo <htejun@xxxxxxxxx> >> It sounds like pata_via and pata_amd need a foo_save_initial_config() >> much like AHCI, during which they would fill ppriv->init_gtm rather than >> ap->init_gtm. Thoughts? Both drivers are calling ata_acpi_cbl() >> themselves, permitting the possibility of ppriv->init_gtm. >> >> This avoids forcing everyone else to bear the memory cost in ata_port >> for just these two drivers. > > The memory overhead is pretty small and more importantly there isn't a > good place to load initial GTM. ACPI is associated with the host during > host registration after all private host initialization is complete. > When the EH gets invoked, the first thing which is done is forcing PIO0 > before initial reset. > > Unless we add another hook, the only place to put this is in private > ->error_handler(). A driver can check whether it's being called for the > first time and record it in private structure, which isn't too pretty, > so I thought doing it this way was fair tradeoff. Jeff, do you agree or still think it's better done in LLDs? I'm okay either way. Thanks. -- tejun - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html