Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5785bfad authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Martin K. Petersen
Browse files

scsi: esas2r: remove initialization / cleanup dead wood



esas2r has been converted to hotplug style initialization long ago, but
kept various remant of the old-style scsi_module.c initialization
around.  Remove those.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent fa1467fb
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -962,7 +962,6 @@ struct esas2r_adapter {
 * Function Declarations
 * SCSI functions
 */
int esas2r_release(struct Scsi_Host *);
const char *esas2r_info(struct Scsi_Host *);
int esas2r_write_params(struct esas2r_adapter *a, struct esas2r_request *rq,
			struct esas2r_sas_nvram *data);
@@ -984,7 +983,6 @@ int esas2r_target_reset(struct scsi_cmnd *cmd);
/* Internal functions */
int esas2r_init_adapter(struct Scsi_Host *host, struct pci_dev *pcid,
			int index);
int esas2r_cleanup(struct Scsi_Host *host);
int esas2r_read_fw(struct esas2r_adapter *a, char *buf, long off, int count);
int esas2r_write_fw(struct esas2r_adapter *a, const char *buf, long off,
		    int count);
+0 −21
Original line number Diff line number Diff line
@@ -661,27 +661,6 @@ void esas2r_kill_adapter(int i)
	}
}

int esas2r_cleanup(struct Scsi_Host *host)
{
	struct esas2r_adapter *a;
	int index;

	if (host == NULL) {
		int i;

		esas2r_debug("esas2r_cleanup everything");
		for (i = 0; i < MAX_ADAPTERS; i++)
			esas2r_kill_adapter(i);
		return -1;
	}

	esas2r_debug("esas2r_cleanup called for host %p", host);
	a = (struct esas2r_adapter *)host->hostdata;
	index = a->index;
	esas2r_kill_adapter(index);
	return index;
}

int esas2r_suspend(struct pci_dev *pdev, pm_message_t state)
{
	struct Scsi_Host *host = pci_get_drvdata(pdev);
+4 −68
Original line number Diff line number Diff line
@@ -235,7 +235,6 @@ static struct scsi_host_template driver_template = {
	.module				= THIS_MODULE,
	.show_info			= esas2r_show_info,
	.name				= ESAS2R_LONGNAME,
	.release			= esas2r_release,
	.info				= esas2r_info,
	.ioctl				= esas2r_ioctl,
	.queuecommand			= esas2r_queuecommand,
@@ -520,44 +519,16 @@ static int esas2r_probe(struct pci_dev *pcid,

static void esas2r_remove(struct pci_dev *pdev)
{
	struct Scsi_Host *host;
	int index;

	if (pdev == NULL) {
		esas2r_log(ESAS2R_LOG_WARN, "esas2r_remove pdev==NULL");
		return;
	}

	host = pci_get_drvdata(pdev);

	if (host == NULL) {
		/*
		 * this can happen if pci_set_drvdata was already called
		 * to clear the host pointer.  if this is the case, we
		 * are okay; this channel has already been cleaned up.
		 */

		return;
	}
	struct Scsi_Host *host = pci_get_drvdata(pdev);
	struct esas2r_adapter *a = (struct esas2r_adapter *)host->hostdata;

	esas2r_log_dev(ESAS2R_LOG_INFO, &(pdev->dev),
		       "esas2r_remove(%p) called; "
		       "host:%p", pdev,
		       host);

	index = esas2r_cleanup(host);

	if (index < 0)
		esas2r_log_dev(ESAS2R_LOG_WARN, &(pdev->dev),
			       "unknown host in %s",
			       __func__);

	esas2r_kill_adapter(a->index);
	found_adapters--;

	/* if this was the last adapter, clean up the rest of the driver */

	if (found_adapters == 0)
		esas2r_cleanup(NULL);
}

static int __init esas2r_init(void)
@@ -638,30 +609,7 @@ static int __init esas2r_init(void)
	for (i = 0; i < MAX_ADAPTERS; i++)
		esas2r_adapters[i] = NULL;

	/* initialize */

	driver_template.module = THIS_MODULE;

	if (pci_register_driver(&esas2r_pci_driver) != 0)
		esas2r_log(ESAS2R_LOG_CRIT, "pci_register_driver FAILED");
	else
		esas2r_log(ESAS2R_LOG_INFO, "pci_register_driver() OK");

	if (!found_adapters) {
		pci_unregister_driver(&esas2r_pci_driver);
		esas2r_cleanup(NULL);

		esas2r_log(ESAS2R_LOG_CRIT,
			   "driver will not be loaded because no ATTO "
			   "%s devices were found",
			   ESAS2R_DRVR_NAME);
		return -1;
	} else {
		esas2r_log(ESAS2R_LOG_INFO, "found %d adapters",
			   found_adapters);
	}

	return 0;
	return pci_register_driver(&esas2r_pci_driver);
}

/* Handle ioctl calls to "/proc/scsi/esas2r/ATTOnode" */
@@ -753,18 +701,6 @@ int esas2r_show_info(struct seq_file *m, struct Scsi_Host *sh)

}

int esas2r_release(struct Scsi_Host *sh)
{
	esas2r_log_dev(ESAS2R_LOG_INFO, &(sh->shost_gendev),
		       "esas2r_release() called");

	esas2r_cleanup(sh);
	if (sh->irq)
		free_irq(sh->irq, NULL);
	scsi_unregister(sh);
	return 0;
}

const char *esas2r_info(struct Scsi_Host *sh)
{
	struct esas2r_adapter *a = (struct esas2r_adapter *)sh->hostdata;