#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(rp1_pio_can_add_program, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_add_program, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_remove_program, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_clear_instr_mem, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_claim, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_unclaim, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_is_claimed, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_init, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_set_config, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_exec, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_clear_fifos, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_set_clkdiv, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_set_pins, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_set_pindirs, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_set_enabled, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_restart, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_clkdiv_restart, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_enable_sync, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_put, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_get, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_set_dmactrl, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_fifo_state, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_sm_drain_tx, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_gpio_init, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_gpio_set_function, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_gpio_set_pulls, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_gpio_set_outover, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_gpio_set_inover, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_gpio_set_oeover, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_gpio_set_input_enabled, "_gpl", "");
KSYMTAB_FUNC(rp1_pio_gpio_set_drive_strength, "_gpl", "");
KSYMTAB_FUNC(pio_open, "_gpl", "");
KSYMTAB_FUNC(pio_close, "_gpl", "");
KSYMTAB_FUNC(pio_set_error, "_gpl", "");
KSYMTAB_FUNC(pio_get_error, "_gpl", "");
KSYMTAB_FUNC(pio_clear_error, "_gpl", "");

SYMBOL_CRC(rp1_pio_can_add_program, 0xf7f0329f, "_gpl");
SYMBOL_CRC(rp1_pio_add_program, 0xb478565a, "_gpl");
SYMBOL_CRC(rp1_pio_remove_program, 0x2b0285ec, "_gpl");
SYMBOL_CRC(rp1_pio_clear_instr_mem, 0x0756c152, "_gpl");
SYMBOL_CRC(rp1_pio_sm_claim, 0x2048a782, "_gpl");
SYMBOL_CRC(rp1_pio_sm_unclaim, 0xb5560f7d, "_gpl");
SYMBOL_CRC(rp1_pio_sm_is_claimed, 0x9eb8debd, "_gpl");
SYMBOL_CRC(rp1_pio_sm_init, 0xa426d5b4, "_gpl");
SYMBOL_CRC(rp1_pio_sm_set_config, 0x87fbfafb, "_gpl");
SYMBOL_CRC(rp1_pio_sm_exec, 0x78684f51, "_gpl");
SYMBOL_CRC(rp1_pio_sm_clear_fifos, 0x6f4ad0c8, "_gpl");
SYMBOL_CRC(rp1_pio_sm_set_clkdiv, 0xc4b7b24f, "_gpl");
SYMBOL_CRC(rp1_pio_sm_set_pins, 0x20e33dc4, "_gpl");
SYMBOL_CRC(rp1_pio_sm_set_pindirs, 0xe73f23fd, "_gpl");
SYMBOL_CRC(rp1_pio_sm_set_enabled, 0x00cb1a1a, "_gpl");
SYMBOL_CRC(rp1_pio_sm_restart, 0x3ee8314e, "_gpl");
SYMBOL_CRC(rp1_pio_sm_clkdiv_restart, 0xdbaef7af, "_gpl");
SYMBOL_CRC(rp1_pio_sm_enable_sync, 0x755d559e, "_gpl");
SYMBOL_CRC(rp1_pio_sm_put, 0xf9eeca06, "_gpl");
SYMBOL_CRC(rp1_pio_sm_get, 0xf0a11f01, "_gpl");
SYMBOL_CRC(rp1_pio_sm_set_dmactrl, 0xf43c6805, "_gpl");
SYMBOL_CRC(rp1_pio_sm_fifo_state, 0xf4b58c42, "_gpl");
SYMBOL_CRC(rp1_pio_sm_drain_tx, 0xe6b798fa, "_gpl");
SYMBOL_CRC(rp1_pio_gpio_init, 0x2f64a4f6, "_gpl");
SYMBOL_CRC(rp1_pio_gpio_set_function, 0xf3280aea, "_gpl");
SYMBOL_CRC(rp1_pio_gpio_set_pulls, 0xfa7dabb0, "_gpl");
SYMBOL_CRC(rp1_pio_gpio_set_outover, 0x23fdeb26, "_gpl");
SYMBOL_CRC(rp1_pio_gpio_set_inover, 0x6cdb68a9, "_gpl");
SYMBOL_CRC(rp1_pio_gpio_set_oeover, 0x8ccd4baa, "_gpl");
SYMBOL_CRC(rp1_pio_gpio_set_input_enabled, 0xf54bb4a1, "_gpl");
SYMBOL_CRC(rp1_pio_gpio_set_drive_strength, 0x5697dd56, "_gpl");
SYMBOL_CRC(pio_open, 0x6605de67, "_gpl");
SYMBOL_CRC(pio_close, 0x20aba8e4, "_gpl");
SYMBOL_CRC(pio_set_error, 0xab9bd842, "_gpl");
SYMBOL_CRC(pio_get_error, 0x8226e8d0, "_gpl");
SYMBOL_CRC(pio_clear_error, 0x29206b15, "_gpl");

static const struct modversion_info ____versions[]
__used __section("__versions") = {
	{ 0x449ad0a7, "memcmp" },
	{ 0xcf2a6966, "up" },
	{ 0xb32ff74f, "__platform_driver_register" },
	{ 0x5fa6ad21, "devm_rp1_firmware_get" },
	{ 0xe45534a3, "rp1_firmware_get_feature" },
	{ 0x7543c29d, "devm_kmalloc" },
	{ 0xcefb0c9f, "__mutex_init" },
	{ 0x71005a25, "devm_platform_get_and_ioremap_resource" },
	{ 0xe3ec2f2b, "alloc_chrdev_region" },
	{ 0x239a6460, "cdev_init" },
	{ 0x718913cd, "cdev_add" },
	{ 0x53f11844, "class_create" },
	{ 0xdf026a31, "of_alias_get_id" },
	{ 0x3c3ff9fd, "sprintf" },
	{ 0xa8f33eda, "device_create" },
	{ 0xa067cb11, "_dev_info" },
	{ 0xf92fa991, "_dev_err" },
	{ 0x6091b333, "unregister_chrdev_region" },
	{ 0x6c1042bf, "cdev_del" },
	{ 0x359b0681, "class_destroy" },
	{ 0xf0fdf6cb, "__stack_chk_fail" },
	{ 0xa441e61e, "platform_driver_unregister" },
	{ 0x8f73577f, "kmalloc_caches" },
	{ 0xe0f7f8a8, "kmalloc_trace" },
	{ 0xdcb764ad, "memset" },
	{ 0xf2926e01, "rp1_firmware_message" },
	{ 0x4829a47e, "memcpy" },
	{ 0x6cbbfc54, "__arch_copy_to_user" },
	{ 0x7682ba4e, "__copy_overflow" },
	{ 0xa2c09d6, "dma_free_attrs" },
	{ 0xdf259f3, "dma_release_channel" },
	{ 0xba8fbd64, "_raw_spin_lock" },
	{ 0xb5b54b34, "_raw_spin_unlock" },
	{ 0x585a8db1, "dma_request_chan" },
	{ 0x2cf0c910, "sg_init_table" },
	{ 0xf1d93f20, "dma_alloc_attrs" },
	{ 0x12a4e128, "__arch_copy_from_user" },
	{ 0x92e683f5, "down_timeout" },
	{ 0x4dfa8d4b, "mutex_lock" },
	{ 0x3213f038, "mutex_unlock" },
	{ 0x37a0cba, "kfree" },
	{ 0x126bac03, "module_layout" },
};

MODULE_INFO(depends, "rp1");

MODULE_ALIAS("of:N*T*Craspberrypi,rp1-pio");
MODULE_ALIAS("of:N*T*Craspberrypi,rp1-pioC*");

MODULE_INFO(srcversion, "51E54A5BBB291CA2FE9161D");
