#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include "vitesse-vsc73xx.h"
#define VSC73XX_CMD_PLATFORM_BLOCK_SHIFT …
#define VSC73XX_CMD_PLATFORM_BLOCK_MASK …
#define VSC73XX_CMD_PLATFORM_SUBBLOCK_SHIFT …
#define VSC73XX_CMD_PLATFORM_SUBBLOCK_MASK …
#define VSC73XX_CMD_PLATFORM_REGISTER_SHIFT …
struct vsc73xx_platform { … };
static const struct vsc73xx_ops vsc73xx_platform_ops;
static u32 vsc73xx_make_addr(u8 block, u8 subblock, u8 reg)
{ … }
static int vsc73xx_platform_read(struct vsc73xx *vsc, u8 block, u8 subblock,
u8 reg, u32 *val)
{ … }
static int vsc73xx_platform_write(struct vsc73xx *vsc, u8 block, u8 subblock,
u8 reg, u32 val)
{ … }
static int vsc73xx_platform_probe(struct platform_device *pdev)
{ … }
static void vsc73xx_platform_remove(struct platform_device *pdev)
{ … }
static void vsc73xx_platform_shutdown(struct platform_device *pdev)
{ … }
static const struct vsc73xx_ops vsc73xx_platform_ops = …;
static const struct of_device_id vsc73xx_of_match[] = …;
MODULE_DEVICE_TABLE(of, vsc73xx_of_match);
static struct platform_driver vsc73xx_platform_driver = …;
module_platform_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;