summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2022-01-31 17:49:34 +0300
committerTom Rini <trini@konsulko.com>2022-02-09 17:16:48 +0300
commite7b02781f5a962f7642aa929789235eec0c65b4d (patch)
tree5e4c53ce57feeb83a3db4f9f195abbbfedd89bf2 /drivers
parent6edb5dd388c749f03ec649ac6be98844abe0ea4f (diff)
downloadu-boot-e7b02781f5a962f7642aa929789235eec0c65b4d.tar.xz
sata: sata_sil: Only support BLK
No boards use this driver without CONFIG_BLK, so clean up the dead code. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/ata/sata_sil.c118
1 files changed, 3 insertions, 115 deletions
diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
index dda712f42c..a4f0dae4bb 100644
--- a/drivers/ata/sata_sil.c
+++ b/drivers/ata/sata_sil.c
@@ -6,7 +6,9 @@
*/
#include <common.h>
+#include <blk.h>
#include <cpu_func.h>
+#include <dm.h>
#include <log.h>
#include <pci.h>
#include <command.h>
@@ -17,13 +19,8 @@
#include <sata.h>
#include <libata.h>
#include <sata.h>
-#include <linux/delay.h>
-
-#if CONFIG_IS_ENABLED(BLK)
-#include <dm.h>
-#include <blk.h>
#include <dm/device-internal.h>
-#endif
+#include <linux/delay.h>
#include "sata_sil.h"
@@ -480,18 +477,12 @@ static void sil_sata_cmd_flush_cache_ext(struct sil_sata *sata)
/*
* SATA interface between low level driver and command layer
*/
-#if !CONFIG_IS_ENABLED(BLK)
-ulong sata_read(int dev, ulong blknr, lbaint_t blkcnt, void *buffer)
-{
- struct sil_sata *sata = (struct sil_sata *)sata_dev_desc[dev].priv;
-#else
static ulong sata_read(struct udevice *dev, lbaint_t blknr, lbaint_t blkcnt,
void *buffer)
{
struct sil_sata_priv *priv = dev_get_plat(dev);
int port_number = priv->port_num;
struct sil_sata *sata = priv->sil_sata_desc[port_number];
-#endif
ulong rc;
if (sata->lba48)
@@ -505,18 +496,12 @@ static ulong sata_read(struct udevice *dev, lbaint_t blknr, lbaint_t blkcnt,
/*
* SATA interface between low level driver and command layer
*/
-#if !CONFIG_IS_ENABLED(BLK)
-ulong sata_write(int dev, ulong blknr, lbaint_t blkcnt, const void *buffer)
-{
- struct sil_sata *sata = (struct sil_sata *)sata_dev_desc[dev].priv;
-#else
ulong sata_write(struct udevice *dev, lbaint_t blknr, lbaint_t blkcnt,
const void *buffer)
{
struct sil_sata_priv *priv = dev_get_plat(dev);
int port_number = priv->port_num;
struct sil_sata *sata = priv->sil_sata_desc[port_number];
-#endif
ulong rc;
if (sata->lba48) {
@@ -532,14 +517,9 @@ ulong sata_write(struct udevice *dev, lbaint_t blknr, lbaint_t blkcnt,
return rc;
}
-#if !CONFIG_IS_ENABLED(BLK)
-static int sil_init_sata(int dev)
-{
-#else
static int sil_init_sata(struct udevice *uc_dev, int dev)
{
struct sil_sata_priv *priv = dev_get_plat(uc_dev);
-#endif
struct sil_sata *sata;
void *port;
u32 tmp;
@@ -606,14 +586,9 @@ static int sil_init_sata(struct udevice *uc_dev, int dev)
memset((void *)sata, 0, sizeof(struct sil_sata));
/* Save the private struct to block device struct */
-#if !CONFIG_IS_ENABLED(BLK)
- sata_dev_desc[dev].priv = (void *)sata;
- sata->devno = sata_info.devno;
-#else
priv->sil_sata_desc[dev] = sata;
priv->port_num = dev;
sata->devno = uc_dev->parent;
-#endif
sata->id = dev;
sata->port = port;
sprintf(sata->name, "SATA#%d", dev);
@@ -625,85 +600,11 @@ static int sil_init_sata(struct udevice *uc_dev, int dev)
return 0;
}
-#if !CONFIG_IS_ENABLED(BLK)
-/*
- * SATA interface between low level driver and command layer
- */
-int init_sata(int dev)
-{
- static int init_done, idx;
- pci_dev_t devno;
- u16 word;
-
- if (init_done == 1 && dev < sata_info.maxport)
- goto init_start;
-
- init_done = 1;
-
- /* Find PCI device(s) */
- devno = pci_find_devices(supported, idx++);
- if (devno == -1)
- return 1;
-
- pci_read_config_word(devno, PCI_DEVICE_ID, &word);
-
- /* get the port count */
- word &= 0xf;
-
- sata_info.portbase = 0;
- sata_info.maxport = sata_info.portbase + word;
- sata_info.devno = devno;
-
- /* Read out all BARs */
- sata_info.iobase[0] = (ulong)pci_map_bar(devno,
- PCI_BASE_ADDRESS_0, PCI_REGION_MEM);
- sata_info.iobase[1] = (ulong)pci_map_bar(devno,
- PCI_BASE_ADDRESS_2, PCI_REGION_MEM);
-
- /* mask out the unused bits */
- sata_info.iobase[0] &= 0xffffff80;
- sata_info.iobase[1] &= 0xfffffc00;
-
- /* Enable Bus Mastering and memory region */
- pci_write_config_word(devno, PCI_COMMAND,
- PCI_COMMAND_MEMORY | PCI_COMMAND_MASTER);
-
- /* Check if mem accesses and Bus Mastering are enabled. */
- pci_read_config_word(devno, PCI_COMMAND, &word);
- if (!(word & PCI_COMMAND_MEMORY) ||
- (!(word & PCI_COMMAND_MASTER))) {
- printf("Error: Can not enable MEM access or Bus Mastering.\n");
- debug("PCI command: %04x\n", word);
- return 1;
- }
-
- /* GPIO off */
- writel(0, (void *)(sata_info.iobase[0] + HOST_FLASH_CMD));
- /* clear global reset & mask interrupts during initialization */
- writel(0, (void *)(sata_info.iobase[0] + HOST_CTRL));
-
-init_start:
- return sil_init_sata(dev);
-}
-
-int reset_sata(int dev)
-{
- return 0;
-}
-
-/*
- * SATA interface between low level driver and command layer
- */
-int scan_sata(int dev)
-{
- struct sil_sata *sata = (struct sil_sata *)sata_dev_desc[dev].priv;
-#else
static int scan_sata(struct udevice *blk_dev, int dev)
{
struct blk_desc *desc = dev_get_uclass_plat(blk_dev);
struct sil_sata_priv *priv = dev_get_plat(blk_dev);
struct sil_sata *sata = priv->sil_sata_desc[dev];
-#endif
unsigned char serial[ATA_ID_SERNO_LEN + 1];
unsigned char firmware[ATA_ID_FW_REV_LEN + 1];
unsigned char product[ATA_ID_PROD_LEN + 1];
@@ -727,16 +628,6 @@ static int scan_sata(struct udevice *blk_dev, int dev)
/* Product model */
ata_id_c_string(id, product, ATA_ID_PROD, sizeof(product));
-#if !CONFIG_IS_ENABLED(BLK)
- memcpy(sata_dev_desc[dev].product, serial, sizeof(serial));
- memcpy(sata_dev_desc[dev].revision, firmware, sizeof(firmware));
- memcpy(sata_dev_desc[dev].vendor, product, sizeof(product));
- /* Totoal sectors */
- sata_dev_desc[dev].lba = ata_id_n_sectors(id);
-#ifdef CONFIG_LBA48
- sata_dev_desc[dev].lba48 = sata->lba48;
-#endif
-#else
memcpy(desc->product, serial, sizeof(serial));
memcpy(desc->revision, firmware, sizeof(firmware));
memcpy(desc->vendor, product, sizeof(product));
@@ -744,7 +635,6 @@ static int scan_sata(struct udevice *blk_dev, int dev)
#ifdef CONFIG_LBA48
desc->lba48 = sata->lba48;
#endif
-#endif
#ifdef DEBUG
ata_dump_id(id);
@@ -754,7 +644,6 @@ static int scan_sata(struct udevice *blk_dev, int dev)
return 0;
}
-#if CONFIG_IS_ENABLED(BLK)
static const struct blk_ops sata_sil_blk_ops = {
.read = sata_read,
.write = sata_write,
@@ -916,4 +805,3 @@ U_BOOT_DRIVER(sil_ahci_pci) = {
};
U_BOOT_PCI_DEVICE(sil_ahci_pci, supported);
-#endif