Blame view

kernel/linux-imx6_3.14.28/drivers/nfc/nfcmrvl/nfcmrvl.h 1.65 KB
6b13f685e   김민수   BSP 최초 추가
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
  /**
   * Marvell NFC driver
   *
   * Copyright (C) 2014, Marvell International Ltd.
   *
   * This software file (the "File") is distributed by Marvell International
   * Ltd. under the terms of the GNU General Public License Version 2, June 1991
   * (the "License").  You may use, redistribute and/or modify this File in
   * accordance with the terms and conditions of the License, a copy of which
   * is available on the worldwide web at
   * http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
   *
   * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE
   * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE
   * ARE EXPRESSLY DISCLAIMED.  The License provides additional details about
   * this warranty disclaimer.
   **/
  
  /* Define private flags: */
  #define NFCMRVL_NCI_RUNNING			1
  
  #define NFCMRVL_EXT_COEX_ID			0xE0
  #define NFCMRVL_NOT_ALLOWED_ID			0xE1
  #define NFCMRVL_ACTIVE_ID			0xE2
  #define NFCMRVL_EXT_COEX_ENABLE			1
  #define NFCMRVL_GPIO_PIN_NFC_NOT_ALLOWED	0xA
  #define NFCMRVL_GPIO_PIN_NFC_ACTIVE		0xB
  #define NFCMRVL_NCI_MAX_EVENT_SIZE		260
  
  struct nfcmrvl_private {
  	struct nci_dev *ndev;
  	unsigned long flags;
  	void *drv_data;
  	struct device *dev;
  	struct nfcmrvl_if_ops *if_ops;
  };
  
  struct nfcmrvl_if_ops {
  	int (*nci_open) (struct nfcmrvl_private *priv);
  	int (*nci_close) (struct nfcmrvl_private *priv);
  	int (*nci_send) (struct nfcmrvl_private *priv, struct sk_buff *skb);
  };
  
  void nfcmrvl_nci_unregister_dev(struct nfcmrvl_private *priv);
  int nfcmrvl_nci_recv_frame(struct nfcmrvl_private *priv, void *data, int count);
  struct nfcmrvl_private *nfcmrvl_nci_register_dev(void *drv_data,
  						 struct nfcmrvl_if_ops *ops,
  						 struct device *dev);