#include <linux/ahci_platform.h>
#include <linux/bitfield.h>
#include <linux/bits.h>
#include <linux/clk.h>
#include <linux/device.h>
#include <linux/kernel.h>
#include <linux/libata.h>
#include <linux/log2.h>
#include <linux/mfd/syscon.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/pm.h>
#include <linux/regmap.h>
#include "ahci.h"
#define DRV_NAME …
#define AHCI_DWC_FBS_PMPN_MAX …
#define AHCI_DWC_HOST_OOBR …
#define AHCI_DWC_HOST_OOB_WE …
#define AHCI_DWC_HOST_CWMIN_MASK …
#define AHCI_DWC_HOST_CWMAX_MASK …
#define AHCI_DWC_HOST_CIMIN_MASK …
#define AHCI_DWC_HOST_CIMAX_MASK …
#define AHCI_DWC_HOST_GPCR …
#define AHCI_DWC_HOST_GPSR …
#define AHCI_DWC_HOST_TIMER1MS …
#define AHCI_DWC_HOST_TIMV_MASK …
#define AHCI_DWC_HOST_GPARAM1R …
#define AHCI_DWC_HOST_ALIGN_M …
#define AHCI_DWC_HOST_RX_BUFFER …
#define AHCI_DWC_HOST_PHY_DATA_MASK …
#define AHCI_DWC_HOST_PHY_RST …
#define AHCI_DWC_HOST_PHY_CTRL_MASK …
#define AHCI_DWC_HOST_PHY_STAT_MASK …
#define AHCI_DWC_HOST_LATCH_M …
#define AHCI_DWC_HOST_PHY_TYPE_MASK …
#define AHCI_DWC_HOST_RET_ERR …
#define AHCI_DWC_HOST_AHB_ENDIAN_MASK …
#define AHCI_DWC_HOST_S_HADDR …
#define AHCI_DWC_HOST_M_HADDR …
#define AHCI_DWC_HOST_S_HDATA_MASK …
#define AHCI_DWC_HOST_M_HDATA_MASK …
#define AHCI_DWC_HOST_GPARAM2R …
#define AHCI_DWC_HOST_FBS_MEM_S …
#define AHCI_DWC_HOST_FBS_PMPN_MASK …
#define AHCI_DWC_HOST_FBS_SUP …
#define AHCI_DWC_HOST_DEV_CP …
#define AHCI_DWC_HOST_DEV_MP …
#define AHCI_DWC_HOST_ENCODE_M …
#define AHCI_DWC_HOST_RXOOB_CLK_M …
#define AHCI_DWC_HOST_RXOOB_M …
#define AHCI_DWC_HOST_TXOOB_M …
#define AHCI_DWC_HOST_RXOOB_M …
#define AHCI_DWC_HOST_RXOOB_CLK_MASK …
#define AHCI_DWC_HOST_PPARAMR …
#define AHCI_DWC_HOST_TX_MEM_M …
#define AHCI_DWC_HOST_TX_MEM_S …
#define AHCI_DWC_HOST_RX_MEM_M …
#define AHCI_DWC_HOST_RX_MEM_S …
#define AHCI_DWC_HOST_TXFIFO_DEPTH …
#define AHCI_DWC_HOST_RXFIFO_DEPTH …
#define AHCI_DWC_HOST_TESTR …
#define AHCI_DWC_HOST_PSEL_MASK …
#define AHCI_DWC_HOST_TEST_IF …
#define AHCI_DWC_HOST_VERSIONR …
#define AHCI_DWC_HOST_IDR …
#define AHCI_DWC_PORT_DMACR …
#define AHCI_DWC_PORT_RXABL_MASK …
#define AHCI_DWC_PORT_TXABL_MASK …
#define AHCI_DWC_PORT_RXTS_MASK …
#define AHCI_DWC_PORT_TXTS_MASK …
#define AHCI_DWC_PORT_PHYCR …
#define AHCI_DWC_PORT_PHYSR …
#define AHCI_BT1_HOST_PHYCR …
#define AHCI_BT1_HOST_MPLM_MASK …
#define AHCI_BT1_HOST_LOSDT_MASK …
#define AHCI_BT1_HOST_CRR …
#define AHCI_BT1_HOST_CRW …
#define AHCI_BT1_HOST_CRCD …
#define AHCI_BT1_HOST_CRCA …
#define AHCI_BT1_HOST_CRDI_MASK …
#define AHCI_BT1_HOST_PHYSR …
#define AHCI_BT1_HOST_CRA …
#define AHCI_BT1_HOST_CRDO_MASK …
struct ahci_dwc_plat_data { … };
struct ahci_dwc_host_priv { … };
static int ahci_bt1_init(struct ahci_host_priv *hpriv)
{ … }
static struct ahci_host_priv *ahci_dwc_get_resources(struct platform_device *pdev)
{ … }
static void ahci_dwc_check_cap(struct ahci_host_priv *hpriv)
{ … }
static void ahci_dwc_init_timer(struct ahci_host_priv *hpriv)
{ … }
static int ahci_dwc_init_dmacr(struct ahci_host_priv *hpriv)
{ … }
static int ahci_dwc_init_host(struct ahci_host_priv *hpriv)
{ … }
static int ahci_dwc_reinit_host(struct ahci_host_priv *hpriv)
{ … }
static void ahci_dwc_clear_host(struct ahci_host_priv *hpriv)
{ … }
static void ahci_dwc_stop_host(struct ata_host *host)
{ … }
static struct ata_port_operations ahci_dwc_port_ops = …;
static const struct ata_port_info ahci_dwc_port_info = …;
static const struct scsi_host_template ahci_dwc_scsi_info = …;
static int ahci_dwc_probe(struct platform_device *pdev)
{ … }
static int ahci_dwc_suspend(struct device *dev)
{ … }
static int ahci_dwc_resume(struct device *dev)
{ … }
static DEFINE_SIMPLE_DEV_PM_OPS(ahci_dwc_pm_ops, ahci_dwc_suspend,
ahci_dwc_resume);
static struct ahci_dwc_plat_data ahci_dwc_plat = …;
static struct ahci_dwc_plat_data ahci_bt1_plat = …;
static const struct of_device_id ahci_dwc_of_match[] = …;
MODULE_DEVICE_TABLE(of, ahci_dwc_of_match);
static struct platform_driver ahci_dwc_driver = …;
module_platform_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;