nfc: constify nci_driver_ops (prop_ops and core_ops)
[linux-2.6-microblaze.git] / drivers / nfc / s3fwrn5 / nci.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * NCI based driver for Samsung S3FWRN5 NFC chip
4  *
5  * Copyright (C) 2015 Samsung Electrnoics
6  * Robert Baldyga <r.baldyga@samsung.com>
7  */
8
9 #ifndef __LOCAL_S3FWRN5_NCI_H_
10 #define __LOCAL_S3FWRN5_NCI_H_
11
12 #include "s3fwrn5.h"
13
14 #define NCI_PROP_SET_RFREG      0x22
15
16 struct nci_prop_set_rfreg_cmd {
17         __u8 index;
18         __u8 data[252];
19 };
20
21 struct nci_prop_set_rfreg_rsp {
22         __u8 status;
23 };
24
25 #define NCI_PROP_START_RFREG    0x26
26
27 struct nci_prop_start_rfreg_rsp {
28         __u8 status;
29 };
30
31 #define NCI_PROP_STOP_RFREG     0x27
32
33 struct nci_prop_stop_rfreg_cmd {
34         __u16 checksum;
35 };
36
37 struct nci_prop_stop_rfreg_rsp {
38         __u8 status;
39 };
40
41 #define NCI_PROP_FW_CFG         0x28
42
43 struct nci_prop_fw_cfg_cmd {
44         __u8 clk_type;
45         __u8 clk_speed;
46         __u8 clk_req;
47 };
48
49 struct nci_prop_fw_cfg_rsp {
50         __u8 status;
51 };
52
53 extern const struct nci_driver_ops s3fwrn5_nci_prop_ops[4];
54 int s3fwrn5_nci_rf_configure(struct s3fwrn5_info *info, const char *fw_name);
55
56 #endif /* __LOCAL_S3FWRN5_NCI_H_ */