/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */
/*
 * Copyright (c) 2020 MediaTek Inc.
 */

#ifndef MDRV_DEMUX_TSP_H
#define MDRV_DEMUX_TSP_H

#include "mdrv_demux_ctrl.h"
#include "mdrv_demux_filter.h"
#include "mdrv_demux_tsio.h"
#include "mdrv_demux_pvr.h"

struct mdrv_demux_tsp {
	int irq;
	int pas_irq;

	struct mdrv_demux_res *res;
	struct mdrv_demux_ctrl ctrl;
	struct mdrv_demux_filter filter;
	struct mdrv_demux_tsio tsio;
	struct mdrv_demux_pvr pvr;
};

int mdrv_demux_tsp_init(struct platform_device *pdev, struct mdrv_demux_tsp *ptsp);
int mdrv_demux_tsp_exit(struct platform_device *pdev, struct mdrv_demux_tsp *ptsp);
int mdrv_demux_tsp_suspend(struct platform_device *pdev, struct mdrv_demux_tsp *ptsp);
int mdrv_demux_tsp_resume(struct platform_device *pdev, struct mdrv_demux_tsp *ptsp);

#endif				/* MDRV_DEMUX_TSP_H */
