linux/drivers/media/platform/chips-media/wave5/wave5-vpu.c

// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause)
/*
 * Wave5 series multi-standard codec IP - platform driver
 *
 * Copyright (C) 2021-2023 CHIPS&MEDIA INC
 */
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/clk.h>
#include <linux/firmware.h>
#include <linux/interrupt.h>
#include <linux/reset.h>
#include "wave5-vpu.h"
#include "wave5-regdefine.h"
#include "wave5-vpuconfig.h"
#include "wave5.h"

#define VPU_PLATFORM_DEVICE_NAME
#define VPU_CLK_NAME

#define WAVE5_IS_ENC
#define WAVE5_IS_DEC

struct wave5_match_data {};

static int vpu_poll_interval =;
module_param(vpu_poll_interval, int, 0644);

int wave5_vpu_wait_interrupt(struct vpu_instance *inst, unsigned int timeout)
{}

static void wave5_vpu_handle_irq(void *dev_id)
{}

static irqreturn_t wave5_vpu_irq_thread(int irq, void *dev_id)
{}

static void wave5_vpu_irq_work_fn(struct kthread_work *work)
{}

static enum hrtimer_restart wave5_vpu_timer_callback(struct hrtimer *timer)
{}

static int wave5_vpu_load_firmware(struct device *dev, const char *fw_name,
				   u32 *revision)
{}

static int wave5_vpu_probe(struct platform_device *pdev)
{}

static void wave5_vpu_remove(struct platform_device *pdev)
{}

static const struct wave5_match_data ti_wave521c_data =;

static const struct of_device_id wave5_dt_ids[] =;
MODULE_DEVICE_TABLE(of, wave5_dt_ids);

static struct platform_driver wave5_vpu_driver =;

module_platform_driver();
MODULE_DESCRIPTION();
MODULE_LICENSE();