#include <linux/io.h>
#include <linux/slab.h>
#include <linux/module.h>
#include <linux/of_fdt.h>
#include <linux/sys_soc.h>
#include <linux/of_address.h>
#include <linux/platform_device.h>
static struct soc_device_attribute soc_dev_attr;
static struct soc_device *soc_dev;
struct scfg_guts { … };
static struct guts { … } *guts;
struct loongson2_soc_die_attr { … };
static const struct loongson2_soc_die_attr loongson2_soc_die[] = …;
static const struct loongson2_soc_die_attr *loongson2_soc_die_match(
u32 svr, const struct loongson2_soc_die_attr *matches)
{ … }
static u32 loongson2_guts_get_svr(void)
{ … }
static int loongson2_guts_probe(struct platform_device *pdev)
{ … }
static void loongson2_guts_remove(struct platform_device *dev)
{ … }
static const struct of_device_id loongson2_guts_of_match[] = …;
MODULE_DEVICE_TABLE(of, loongson2_guts_of_match);
static struct platform_driver loongson2_guts_driver = …;
static int __init loongson2_guts_init(void)
{ … }
core_initcall(loongson2_guts_init);
static void __exit loongson2_guts_exit(void)
{ … }
module_exit(loongson2_guts_exit);
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;