#include <linux/module.h>
#define INCLUDE_VERMAGIC
#include <linux/build-salt.h>
#include <linux/elfnote-lto.h>
#include <linux/export-internal.h>
#include <linux/vermagic.h>
#include <linux/compiler.h>

#ifdef CONFIG_UNWINDER_ORC
#include <asm/orc_header.h>
ORC_HEADER;
#endif

BUILD_SALT;
BUILD_LTO_INFO;

MODULE_INFO(vermagic, VERMAGIC_STRING);
MODULE_INFO(name, KBUILD_MODNAME);

__visible struct module __this_module
__section(".gnu.linkonce.this_module") = {
	.name = KBUILD_MODNAME,
	.init = init_module,
#ifdef CONFIG_MODULE_UNLOAD
	.exit = cleanup_module,
#endif
	.arch = MODULE_ARCH_INIT,
};

MODULE_INFO(intree, "Y");

#ifdef CONFIG_RETPOLINE
MODULE_INFO(retpoline, "Y");
#endif

KSYMTAB_FUNC(sas_remove_children, "", "");
KSYMTAB_FUNC(sas_remove_host, "", "");
KSYMTAB_FUNC(sas_get_address, "", "");
KSYMTAB_FUNC(sas_tlr_supported, "_gpl", "");
KSYMTAB_FUNC(sas_disable_tlr, "_gpl", "");
KSYMTAB_FUNC(sas_enable_tlr, "_gpl", "");
KSYMTAB_FUNC(sas_is_tlr_enabled, "_gpl", "");
KSYMTAB_FUNC(sas_phy_alloc, "", "");
KSYMTAB_FUNC(sas_phy_add, "", "");
KSYMTAB_FUNC(sas_phy_free, "", "");
KSYMTAB_FUNC(sas_phy_delete, "", "");
KSYMTAB_FUNC(scsi_is_sas_phy, "", "");
KSYMTAB_FUNC(sas_port_alloc, "", "");
KSYMTAB_FUNC(sas_port_alloc_num, "", "");
KSYMTAB_FUNC(sas_port_add, "", "");
KSYMTAB_FUNC(sas_port_free, "", "");
KSYMTAB_FUNC(sas_port_delete, "", "");
KSYMTAB_FUNC(scsi_is_sas_port, "", "");
KSYMTAB_FUNC(sas_port_get_phy, "", "");
KSYMTAB_FUNC(sas_port_add_phy, "", "");
KSYMTAB_FUNC(sas_port_delete_phy, "", "");
KSYMTAB_FUNC(sas_port_mark_backlink, "", "");
KSYMTAB_FUNC(sas_read_port_mode_page, "", "");
KSYMTAB_FUNC(sas_end_device_alloc, "", "");
KSYMTAB_FUNC(sas_expander_alloc, "", "");
KSYMTAB_FUNC(sas_rphy_add, "", "");
KSYMTAB_FUNC(sas_rphy_free, "", "");
KSYMTAB_FUNC(sas_rphy_delete, "", "");
KSYMTAB_FUNC(sas_rphy_unlink, "", "");
KSYMTAB_FUNC(sas_rphy_remove, "", "");
KSYMTAB_FUNC(scsi_is_sas_rphy, "", "");
KSYMTAB_FUNC(sas_attach_transport, "", "");
KSYMTAB_FUNC(sas_release_transport, "", "");

SYMBOL_CRC(sas_remove_children, 0x58a2eaea, "");
SYMBOL_CRC(sas_remove_host, 0x971b0057, "");
SYMBOL_CRC(sas_get_address, 0xe8d05620, "");
SYMBOL_CRC(sas_tlr_supported, 0xcbb7200c, "_gpl");
SYMBOL_CRC(sas_disable_tlr, 0xdd9a3b3b, "_gpl");
SYMBOL_CRC(sas_enable_tlr, 0xed8ffba9, "_gpl");
SYMBOL_CRC(sas_is_tlr_enabled, 0x0aa8f32b, "_gpl");
SYMBOL_CRC(sas_phy_alloc, 0x3ec2f953, "");
SYMBOL_CRC(sas_phy_add, 0x10c1396d, "");
SYMBOL_CRC(sas_phy_free, 0xa85b1d0d, "");
SYMBOL_CRC(sas_phy_delete, 0xdd6da1e3, "");
SYMBOL_CRC(scsi_is_sas_phy, 0xce23bf0d, "");
SYMBOL_CRC(sas_port_alloc, 0xb9082bad, "");
SYMBOL_CRC(sas_port_alloc_num, 0xe3d880bc, "");
SYMBOL_CRC(sas_port_add, 0x88914935, "");
SYMBOL_CRC(sas_port_free, 0xa35c3c27, "");
SYMBOL_CRC(sas_port_delete, 0x012abef1, "");
SYMBOL_CRC(scsi_is_sas_port, 0x96a0fe04, "");
SYMBOL_CRC(sas_port_get_phy, 0xf0898f93, "");
SYMBOL_CRC(sas_port_add_phy, 0xf0e7335e, "");
SYMBOL_CRC(sas_port_delete_phy, 0x9c87449d, "");
SYMBOL_CRC(sas_port_mark_backlink, 0xf9fca5a5, "");
SYMBOL_CRC(sas_read_port_mode_page, 0x042df315, "");
SYMBOL_CRC(sas_end_device_alloc, 0x755af69b, "");
SYMBOL_CRC(sas_expander_alloc, 0x2395e191, "");
SYMBOL_CRC(sas_rphy_add, 0xe45d32be, "");
SYMBOL_CRC(sas_rphy_free, 0xd4abaf0c, "");
SYMBOL_CRC(sas_rphy_delete, 0xed6864a0, "");
SYMBOL_CRC(sas_rphy_unlink, 0xcdc6d04f, "");
SYMBOL_CRC(sas_rphy_remove, 0x4f248a45, "");
SYMBOL_CRC(scsi_is_sas_rphy, 0x2103ba5b, "");
SYMBOL_CRC(sas_attach_transport, 0x54fdcbdf, "");
SYMBOL_CRC(sas_release_transport, 0x85d5e67a, "");

static const struct modversion_info ____versions[]
__used __section("__versions") = {
	{ 0x2fad8d7b, "device_for_each_child" },
	{ 0xe16b094c, "put_device" },
	{ 0x37a0cba, "kfree" },
	{ 0x15961654, "device_add" },
	{ 0xa0b272c4, "transport_add_device" },
	{ 0xe2ff241e, "transport_configure_device" },
	{ 0xa21e5f9c, "device_del" },
	{ 0xbec5f8d9, "transport_destroy_device" },
	{ 0x4dfa8d4b, "mutex_lock" },
	{ 0xe127bd74, "get_device" },
	{ 0x3213f038, "mutex_unlock" },
	{ 0x86b959ae, "sysfs_create_link" },
	{ 0x122c3a7e, "_printk" },
	{ 0xacbf06f9, "scsi_scan_target" },
	{ 0xf58ff57, "bsg_setup_queue" },
	{ 0x656e4a6e, "snprintf" },
	{ 0x3c3ff9fd, "sprintf" },
	{ 0x98cf60b3, "strlen" },
	{ 0x5a921311, "strncmp" },
	{ 0xd19c96de, "transport_class_register" },
	{ 0xe760122c, "transport_class_unregister" },
	{ 0x3d3f430, "transport_remove_device" },
	{ 0xe61a6d75, "kmalloc_caches" },
	{ 0x29977925, "kmalloc_trace" },
	{ 0xc2ce3f1f, "attribute_container_register" },
	{ 0x8f5dd148, "sysfs_remove_link" },
	{ 0x950eb34e, "__list_del_entry_valid_or_report" },
	{ 0x7696f8c7, "__list_add_valid_or_report" },
	{ 0xdba5c481, "_dev_printk" },
	{ 0x46912be1, "scsi_mode_sense" },
	{ 0x4f5df2cc, "attribute_container_unregister" },
	{ 0xacdad3f, "scsi_remove_host" },
	{ 0x57d674d4, "bsg_remove_queue" },
	{ 0xed635c12, "scsi_remove_target" },
	{ 0x8d158c1a, "scsi_is_host_device" },
	{ 0x7ebc429e, "_dev_warn" },
	{ 0x54457215, "bsg_job_done" },
	{ 0xcefb0c9f, "__mutex_init" },
	{ 0x35badebe, "dma_opt_mapping_size" },
	{ 0x69811386, "device_initialize" },
	{ 0xaedc350b, "dev_set_name" },
	{ 0xfe8054fd, "transport_setup_device" },
	{ 0x938326dd, "scsi_get_vpd_page" },
	{ 0x17608925, "module_layout" },
};

MODULE_INFO(depends, "");

