#include <linux/device.h>
#include <linux/dma-mapping.h>
#include <linux/nvmem-consumer.h>
#include <linux/nvmem-provider.h>
#include <linux/of.h>
#include <linux/of_device.h>
#include <linux/of_irq.h>
#include "internals.h"
#define to_nvmem_layout_driver(drv) …
#define to_nvmem_layout_device(_dev) …
static int nvmem_layout_bus_match(struct device *dev, const struct device_driver *drv)
{ … }
static int nvmem_layout_bus_probe(struct device *dev)
{ … }
static void nvmem_layout_bus_remove(struct device *dev)
{ … }
static const struct bus_type nvmem_layout_bus_type = …;
int __nvmem_layout_driver_register(struct nvmem_layout_driver *drv,
struct module *owner)
{ … }
EXPORT_SYMBOL_GPL(…);
void nvmem_layout_driver_unregister(struct nvmem_layout_driver *drv)
{ … }
EXPORT_SYMBOL_GPL(…);
static void nvmem_layout_release_device(struct device *dev)
{ … }
static int nvmem_layout_create_device(struct nvmem_device *nvmem,
struct device_node *np)
{ … }
static const struct of_device_id of_nvmem_layout_skip_table[] = …;
static int nvmem_layout_bus_populate(struct nvmem_device *nvmem,
struct device_node *layout_dn)
{ … }
struct device_node *of_nvmem_layout_get_container(struct nvmem_device *nvmem)
{ … }
EXPORT_SYMBOL_GPL(…);
int nvmem_populate_layout(struct nvmem_device *nvmem)
{ … }
void nvmem_destroy_layout(struct nvmem_device *nvmem)
{ … }
int nvmem_layout_bus_register(void)
{ … }
void nvmem_layout_bus_unregister(void)
{ … }