1/* SPDX-License-Identifier: GPL-2.0-or-later */ 2/* 3 * AHCI SATA platform driver 4 * 5 * Copyright 2004-2005 Red Hat, Inc. 6 * Jeff Garzik <jgarzik@pobox.com> 7 * Copyright 2010 MontaVista Software, LLC. 8 * Anton Vorontsov <avorontsov@ru.mvista.com> 9 */ 10 11#ifndef _AHCI_PLATFORM_H 12#define _AHCI_PLATFORM_H 13 14#include <linux/compiler.h> 15 16struct device; 17struct ata_port_info; 18struct ahci_host_priv; 19struct platform_device; 20struct scsi_host_template; 21 22int ahci_platform_enable_clks(struct ahci_host_priv *hpriv); 23void ahci_platform_disable_clks(struct ahci_host_priv *hpriv); 24int ahci_platform_enable_regulators(struct ahci_host_priv *hpriv); 25void ahci_platform_disable_regulators(struct ahci_host_priv *hpriv); 26int ahci_platform_enable_resources(struct ahci_host_priv *hpriv); 27void ahci_platform_disable_resources(struct ahci_host_priv *hpriv); 28struct ahci_host_priv *ahci_platform_get_resources( 29 struct platform_device *pdev, unsigned int flags); 30int ahci_platform_init_host(struct platform_device *pdev, 31 struct ahci_host_priv *hpriv, 32 const struct ata_port_info *pi_template, 33 struct scsi_host_template *sht); 34 35void ahci_platform_shutdown(struct platform_device *pdev); 36 37int ahci_platform_suspend_host(struct device *dev); 38int ahci_platform_resume_host(struct device *dev); 39int ahci_platform_suspend(struct device *dev); 40int ahci_platform_resume(struct device *dev); 41 42#define AHCI_PLATFORM_GET_RESETS 0x01 43 44#endif /* _AHCI_PLATFORM_H */ 45