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

Commit de50ada5 authored by Holger Macht's avatar Holger Macht Committed by Jeff Garzik
Browse files

[SCSI] add wrapper to access and set scsi_bus_type in struct acpi_bus_type



For being able to bind ata devices against acpi devices, scsi_bus_type
needs to be set as bus in struct acpi_bus_type. So add wrapper to
scsi_lib to accomplish that.

Signed-off-by: default avatarHolger Macht <holger@homac.de>
Signed-off-by: default avatarLin Ming <ming.m.lin@intel.com>
Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
parent 9acc7bde
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -68,6 +68,23 @@ static struct scsi_host_sg_pool scsi_sg_pools[] = {

struct kmem_cache *scsi_sdb_cache;

#ifdef CONFIG_ACPI
#include <acpi/acpi_bus.h>

int scsi_register_acpi_bus_type(struct acpi_bus_type *bus)
{
        bus->bus = &scsi_bus_type;
        return register_acpi_bus_type(bus);
}
EXPORT_SYMBOL_GPL(scsi_register_acpi_bus_type);

void scsi_unregister_acpi_bus_type(struct acpi_bus_type *bus)
{
	unregister_acpi_bus_type(bus);
}
EXPORT_SYMBOL_GPL(scsi_unregister_acpi_bus_type);
#endif

/*
 * When to reinvoke queueing after a resource shortage. It's 3 msecs to
 * not change behaviour from the previous unplug mechanism, experimentation
+10 −0
Original line number Diff line number Diff line
@@ -214,6 +214,16 @@ scsi_command_size(const unsigned char *cmnd)
		scsi_varlen_cdb_length(cmnd) : COMMAND_SIZE(cmnd[0]);
}

#ifdef CONFIG_ACPI
struct acpi_bus_type;

extern int
scsi_register_acpi_bus_type(struct acpi_bus_type *bus);

extern void
scsi_unregister_acpi_bus_type(struct acpi_bus_type *bus);
#endif

/*
 *  SCSI Architecture Model (SAM) Status codes. Taken from SAM-3 draft
 *  T10/1561-D Revision 4 Draft dated 7th November 2002.