Blame view

drivers/media/dvb-frontends/cxd2841er.h 1.58 KB
c942fddf8   Thomas Gleixner   treewide: Replace...
1
  /* SPDX-License-Identifier: GPL-2.0-or-later */
a6dc60ff1   Kozlov Sergey   [media] cxd2841er...
2
3
4
5
6
7
8
9
10
  /*
   * cxd2841er.h
   *
   * Sony CXD2441ER digital demodulator driver public definitions
   *
   * Copyright 2012 Sony Corporation
   * Copyright (C) 2014 NetUP Inc.
   * Copyright (C) 2014 Sergey Kozlov <serjk@netup.ru>
   * Copyright (C) 2014 Abylay Ospan <aospan@netup.ru>
a6dc60ff1   Kozlov Sergey   [media] cxd2841er...
11
12
13
14
    */
  
  #ifndef CXD2841ER_H
  #define CXD2841ER_H
a6dc60ff1   Kozlov Sergey   [media] cxd2841er...
15
  #include <linux/dvb/frontend.h>
03ab1bd5c   Daniel Scheller   [media] dvb-front...
16
17
18
  #define CXD2841ER_USE_GATECTRL	1	/* bit 0 */
  #define CXD2841ER_AUTO_IFHZ	2	/* bit 1 */
  #define CXD2841ER_TS_SERIAL	4	/* bit 2 */
7afe510ab   Daniel Scheller   [media] dvb-front...
19
  #define CXD2841ER_ASCOT		8	/* bit 3 */
763f857e4   Daniel Scheller   [media] dvb-front...
20
  #define CXD2841ER_EARLY_TUNE	16	/* bit 4 */
e3943aa6d   Daniel Scheller   [media] dvb-front...
21
  #define CXD2841ER_NO_WAIT_LOCK	32	/* bit 5 */
14fd86290   Daniel Scheller   [media] dvb-front...
22
  #define CXD2841ER_NO_AGCNEG	64	/* bit 6 */
bf51bbb04   Daniel Scheller   [media] dvb-front...
23
  #define CXD2841ER_TSBITS	128	/* bit 7 */
c7518d13f   Daniel Scheller   [media] dvb-front...
24

83808c23e   Abylay Ospan   [media] Add suppo...
25
26
27
28
29
  enum cxd2841er_xtal {
  	SONY_XTAL_20500, /* 20.5 MHz */
  	SONY_XTAL_24000, /* 24 MHz */
  	SONY_XTAL_41000 /* 41 MHz */
  };
a6dc60ff1   Kozlov Sergey   [media] cxd2841er...
30
31
  struct cxd2841er_config {
  	u8	i2c_addr;
83808c23e   Abylay Ospan   [media] Add suppo...
32
  	enum cxd2841er_xtal	xtal;
050863aac   Daniel Scheller   [media] dvb-front...
33
  	u32	flags;
a6dc60ff1   Kozlov Sergey   [media] cxd2841er...
34
35
36
37
38
  };
  
  #if IS_REACHABLE(CONFIG_DVB_CXD2841ER)
  extern struct dvb_frontend *cxd2841er_attach_s(struct cxd2841er_config *cfg,
  					       struct i2c_adapter *i2c);
3f3b48a0c   Abylay Ospan   [media] Change fr...
39
  extern struct dvb_frontend *cxd2841er_attach_t_c(struct cxd2841er_config *cfg,
a6dc60ff1   Kozlov Sergey   [media] cxd2841er...
40
  					       struct i2c_adapter *i2c);
a6dc60ff1   Kozlov Sergey   [media] cxd2841er...
41
42
43
44
45
  #else
  static inline struct dvb_frontend *cxd2841er_attach_s(
  					struct cxd2841er_config *cfg,
  					struct i2c_adapter *i2c)
  {
83808c23e   Abylay Ospan   [media] Add suppo...
46
47
  	pr_warn("%s: driver disabled by Kconfig
  ", __func__);
a6dc60ff1   Kozlov Sergey   [media] cxd2841er...
48
49
  	return NULL;
  }
3f3b48a0c   Abylay Ospan   [media] Change fr...
50
  static inline struct dvb_frontend *cxd2841er_attach_t_c(
83808c23e   Abylay Ospan   [media] Add suppo...
51
52
53
54
  		struct cxd2841er_config *cfg, struct i2c_adapter *i2c)
  {
  	pr_warn("%s: driver disabled by Kconfig
  ", __func__);
a6dc60ff1   Kozlov Sergey   [media] cxd2841er...
55
56
  	return NULL;
  }
83808c23e   Abylay Ospan   [media] Add suppo...
57

a6dc60ff1   Kozlov Sergey   [media] cxd2841er...
58
59
60
  #endif
  
  #endif