forked from nns779/px4_drv
-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathm1ur_device.h
49 lines (41 loc) · 1.06 KB
/
m1ur_device.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
// SPDX-License-Identifier: GPL-2.0-only
/*
* PTX driver definitions for PLEX PX-M1UR device (m1ur_device.h)
*
* Copyright (c) 2023 techma.
*/
#ifndef __M1UR_DEVICE_H__
#define __M1UR_DEVICE_H__
#include <linux/atomic.h>
#include <linux/kref.h>
#include <linux/mutex.h>
#include <linux/completion.h>
#include <linux/device.h>
#include "ptx_chrdev.h"
#include "it930x.h"
#include "tc90522.h"
#include "r850.h"
#include "rt710.h"
#define M1UR_CHRDEV_NUM 1
struct m1ur_chrdev {
struct ptx_chrdev *chrdev;
struct tc90522_demod tc90522_t;
struct tc90522_demod tc90522_s;
struct r850_tuner r850;
struct rt710_tuner rt710;
};
struct m1ur_device {
struct kref kref;
atomic_t available;
struct device *dev;
struct completion *quit_completion;
struct ptx_chrdev_group *chrdev_group;
struct m1ur_chrdev chrdevm1ur;
struct it930x_bridge it930x;
void *stream_ctx;
};
int m1ur_device_init(struct m1ur_device *m1ur, struct device *dev,
struct ptx_chrdev_context *chrdev_ctx,
struct completion *quit_completion);
void m1ur_device_term(struct m1ur_device *m1ur);
#endif