1/* 2 * NCI based driver for Samsung S3FWRN5 NFC chip 3 * 4 * Copyright (C) 2015 Samsung Electrnoics 5 * Robert Baldyga <r.baldyga@samsung.com> 6 * 7 * This program is free software; you can redistribute it and/or modify it 8 * under the terms and conditions of the GNU General Public License, 9 * version 2 or later, as published by the Free Software Foundation. 10 * 11 * This program is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 * GNU General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with this program; if not, see <http://www.gnu.org/licenses/>. 18 */ 19 20#ifndef __LOCAL_S3FWRN5_NCI_H_ 21#define __LOCAL_S3FWRN5_NCI_H_ 22 23#include "s3fwrn5.h" 24 25#define NCI_PROP_AGAIN 0x01 26 27#define NCI_PROP_GET_RFREG 0x21 28#define NCI_PROP_SET_RFREG 0x22 29 30struct nci_prop_set_rfreg_cmd { 31 __u8 index; 32 __u8 data[252]; 33}; 34 35struct nci_prop_set_rfreg_rsp { 36 __u8 status; 37}; 38 39#define NCI_PROP_GET_RFREG_VER 0x24 40 41struct nci_prop_get_rfreg_ver_rsp { 42 __u8 status; 43 __u8 data[8]; 44}; 45 46#define NCI_PROP_SET_RFREG_VER 0x25 47 48struct nci_prop_set_rfreg_ver_cmd { 49 __u8 data[8]; 50}; 51 52struct nci_prop_set_rfreg_ver_rsp { 53 __u8 status; 54}; 55 56#define NCI_PROP_START_RFREG 0x26 57 58struct nci_prop_start_rfreg_rsp { 59 __u8 status; 60}; 61 62#define NCI_PROP_STOP_RFREG 0x27 63 64struct nci_prop_stop_rfreg_cmd { 65 __u16 checksum; 66}; 67 68struct nci_prop_stop_rfreg_rsp { 69 __u8 status; 70}; 71 72#define NCI_PROP_FW_CFG 0x28 73 74struct nci_prop_fw_cfg_cmd { 75 __u8 clk_type; 76 __u8 clk_speed; 77 __u8 clk_req; 78}; 79 80struct nci_prop_fw_cfg_rsp { 81 __u8 status; 82}; 83 84#define NCI_PROP_WR_RESET 0x2f 85 86void s3fwrn5_nci_get_prop_ops(struct nci_driver_ops **ops, size_t *n); 87int s3fwrn5_nci_rf_configure(struct s3fwrn5_info *info, const char *fw_name); 88 89#endif /* __LOCAL_S3FWRN5_NCI_H_ */ 90