#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/pm.h>
#include <linux/device.h>
#include <linux/platform_device.h>
#include <linux/libata.h>
#include <linux/ahci_platform.h>
#include "ahci.h"
#define DRV_NAME …
#define HARDRESET_RETRIES …
#define SATA_P0PHYCR_REG …
#define SATA_PHY_MPY(x) …
#define SATA_PHY_LOS(x) …
#define SATA_PHY_RXCDR(x) …
#define SATA_PHY_RXEQ(x) …
#define SATA_PHY_TXSWING(x) …
#define SATA_PHY_ENPLL(x) …
static void da850_sata_init(struct device *dev, void __iomem *pwrdn_reg,
void __iomem *ahci_base, u32 mpy)
{ … }
static u32 ahci_da850_calculate_mpy(unsigned long refclk_rate)
{ … }
static int ahci_da850_softreset(struct ata_link *link,
unsigned int *class, unsigned long deadline)
{ … }
static int ahci_da850_hardreset(struct ata_link *link,
unsigned int *class, unsigned long deadline)
{ … }
static struct ata_port_operations ahci_da850_port_ops = …;
static const struct ata_port_info ahci_da850_port_info = …;
static const struct scsi_host_template ahci_platform_sht = …;
static int ahci_da850_probe(struct platform_device *pdev)
{ … }
static SIMPLE_DEV_PM_OPS(ahci_da850_pm_ops, ahci_platform_suspend,
ahci_platform_resume);
static const struct of_device_id ahci_da850_of_match[] = …;
MODULE_DEVICE_TABLE(of, ahci_da850_of_match);
static struct platform_driver ahci_da850_driver = …;
module_platform_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;