summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorJing Lin <jinglin@codeaurora.org>2015-09-14 16:31:08 -0700
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-23 20:51:34 -0700
commite897567177bb5dd5c18b5d65594fa4e5bf974e6f (patch)
tree95f898797e92d4a0a5c15c51dbdb768d8a4eb733 /include/linux
parentbf4d97091667121ba15f7539db1b43351f7276b1 (diff)
input: maxim_sti: move header to uapi
Move kernel data structures to driver and keep the data structures shared between kernel and user space in the header file. Move the header to uapi to make it accesible to user space. Fix checkpatch errors to replace deprecated functions and hardcoded error return values. Change-Id: Ic3312c11ddda9f02da9807a6243206d582281995 Signed-off-by: Jing Lin <jinglin@codeaurora.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/input/maxim_sti.h358
1 files changed, 0 insertions, 358 deletions
diff --git a/include/linux/input/maxim_sti.h b/include/linux/input/maxim_sti.h
deleted file mode 100644
index 8cfc1f4ffd4c..000000000000
--- a/include/linux/input/maxim_sti.h
+++ /dev/null
@@ -1,358 +0,0 @@
-/* drivers/input/touchscreen/maxim_sti.c
- *
- * Maxim SmartTouch Imager Touchscreen Driver
- *
- * Copyright (c)2013 Maxim Integrated Products, Inc.
- * Copyright (C) 2013, NVIDIA Corporation. All Rights Reserved.
- * Copyright (c) 2015, The Linux Foundation. All rights reserved.
- *
- * This software is licensed under the terms of the GNU General Public
- * License version 2, as published by the Free Software Foundation, and
- * may be copied, distributed, and modified under those terms.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- */
-
-#ifndef __MAXIM_STI_H__
-#define __MAXIM_STI_H__
-
-#ifdef __KERNEL__
-#include <net/genetlink.h>
-#include <net/sock.h>
-#else
-#include <stdlib.h>
-#include "genetlink.h"
-#endif
-
-#define XSTR(s) STR(s)
-#define STR(s) #s
-
-#define DRV_VER_MAJOR 1
-#define DRV_VER_MINOR 1
-
-#define DRIVER_VERSION_STR XSTR(DRV_VER_MAJOR) "." XSTR(DRV_VER_MINOR)
-#define DRIVER_VERSION_NUM ((DRV_VER_MAJOR << 8) | DRV_VER_MINOR)
-
-#define DRIVER_VERSION DRIVER_VERSION_STR
-#define DRIVER_RELEASE "April 29, 2015"
-#define DRIVER_PROTOCOL 0x0102
-
-/****************************************************************************\
-* Netlink: common kernel/user space macros *
-\****************************************************************************/
-
-#define NL_BUF_SIZE 30720
-
-#define NL_ATTR_FIRST(nptr) \
- ((struct nlattr *)((void *)nptr + NLMSG_HDRLEN + GENL_HDRLEN))
-#define NL_ATTR_LAST(nptr) \
- ((struct nlattr *)((void *)nptr + \
- NLMSG_ALIGN(((struct nlmsghdr *)nptr)->nlmsg_len)))
-#define NL_SIZE(nptr) NLMSG_ALIGN(((struct nlmsghdr *)nptr)->nlmsg_len)
-#define NL_TYPE(nptr) (((struct nlmsghdr *)nptr)->nlmsg_type)
-#define NL_SEQ(nptr) (((struct nlmsghdr *)nptr)->nlmsg_seq)
-#define NL_OK(nptr) (NL_TYPE(nptr) >= NLMSG_MIN_TYPE)
-#define NL_ATTR_VAL(aptr, type) ((type *)((void *)aptr + NLA_HDRLEN))
-#define NL_ATTR_NEXT(aptr) \
- ((struct nlattr *)((void *)aptr + \
- NLA_ALIGN(((struct nlattr *)aptr)->nla_len)))
-#define GENL_CMP(name1, name2) strncmp(name1, name2, GENL_NAMSIZ)
-#define GENL_COPY(name1, name2) strncpy(name1, name2, GENL_NAMSIZ)
-#define GENL_CHK(name) (strlen(name) > (GENL_NAMSIZ - 1))
-#define MSG_TYPE(nptr) NL_ATTR_FIRST(nptr)->nla_type
-#define MSG_PAYLOAD(nptr) NL_ATTR_VAL(NL_ATTR_FIRST(nptr), void)
-
-/****************************************************************************\
-* Netlink: common kernel/user space inline functions *
-\****************************************************************************/
-
-static inline void
-nl_msg_init(void *buf, __u16 family_id, __u32 sequence, __u8 dst)
-{
- struct nlmsghdr *nlh = (struct nlmsghdr *)buf;
- struct genlmsghdr *genl = (struct genlmsghdr *)(buf + NLMSG_HDRLEN);
-
- memset(buf, 0, NLMSG_HDRLEN + GENL_HDRLEN);
- nlh->nlmsg_type = family_id;
- nlh->nlmsg_flags = NLM_F_REQUEST;
- nlh->nlmsg_seq = sequence;
- nlh->nlmsg_len = NLMSG_HDRLEN + GENL_HDRLEN;
- genl->cmd = dst;
-}
-
-static inline void
-*nl_alloc_attr(void *buf, __u16 type, __u16 len)
-{
- struct nlmsghdr *nlh = (struct nlmsghdr *)buf;
- struct nlattr *attr = NL_ATTR_LAST(nlh);
-
- if ((NL_SIZE(buf) + NLMSG_ALIGN(NLA_HDRLEN + len)) > NL_BUF_SIZE)
- return NULL;
-
- attr->nla_type = type;
- attr->nla_len = NLA_HDRLEN + len;
- nlh->nlmsg_len += NLMSG_ALIGN(attr->nla_len);
- return NL_ATTR_VAL(attr, void);
-}
-
-static inline int
-nl_add_attr(void *buf, __u16 type, void *ptr, __u16 len)
-{
- void *a_ptr;
-
- a_ptr = nl_alloc_attr(buf, type, len);
- if (a_ptr == NULL)
- return -1;
- memcpy(a_ptr, ptr, len);
- return 0;
-}
-
-/****************************************************************************\
-* Netlink: multicast groups enum and name strings *
-\****************************************************************************/
-
-enum {
- MC_DRIVER,
- MC_FUSION,
- MC_EVENT_BROADCAST,
- MC_GROUPS,
-};
-
-#define MC_DRIVER_NAME "driver"
-#define MC_FUSION_NAME "fusion"
-#define MC_EVENT_BROADCAST_NAME "event_broadcast"
-
-#define NL_FAMILY_VERSION 1
-
-#define TF_FAMILY_NAME "touch_fusion"
-
-/****************************************************************************\
-* Netlink: common parameter and message definitions *
-\****************************************************************************/
-
-enum {
- DR_STATE_BASIC,
- DR_STATE_ACTIVE,
- DR_STATE_SUSPEND,
- DR_STATE_RESUME,
- DR_STATE_FAULT,
-};
-
-enum {
- DR_INPUT_FINGER,
- DR_INPUT_STYLUS,
- DR_INPUT_ERASER,
-};
-
-enum {
- DR_IRQ_FALLING_EDGE,
- DR_IRQ_RISING_EDGE,
-};
-
-enum {
- DR_ADD_MC_GROUP,
- DR_ECHO_REQUEST,
- DR_CHIP_READ,
- DR_CHIP_WRITE,
- DR_CHIP_RESET,
- DR_GET_IRQLINE,
- DR_DELAY,
- DR_CHIP_ACCESS_METHOD,
- DR_CONFIG_IRQ,
- DR_CONFIG_INPUT,
- DR_CONFIG_WATCHDOG,
- DR_DECONFIG,
- DR_INPUT,
- DR_RESUME_ACK,
- DR_LEGACY_FWDL,
- DR_LEGACY_ACCELERATION,
- DR_HANDSHAKE,
- DR_CONFIG_FW,
- DR_IDLE,
- DR_SYSFS_ACK,
- DR_TF_STATUS,
-};
-
-struct __attribute__ ((__packed__)) dr_add_mc_group {
- __u8 number;
- char name[GENL_NAMSIZ];
-};
-
-struct __attribute__ ((__packed__)) dr_echo_request {
- __u32 cookie;
-};
-
-struct __attribute__ ((__packed__)) dr_chip_read {
- __u16 address;
- __u16 length;
-};
-
-struct __attribute__ ((__packed__)) dr_chip_write {
- __u16 address;
- __u16 length;
- __u8 data[0];
-};
-
-struct __attribute__ ((__packed__)) dr_chip_reset {
- __u8 state;
-};
-
-struct __attribute__ ((__packed__)) dr_delay {
- __u32 period;
-};
-
-struct __attribute__ ((__packed__)) dr_chip_access_method {
- __u8 method;
-};
-
-#define MAX_IRQ_PARAMS 37
-struct __attribute__ ((__packed__)) dr_config_irq {
- __u8 irq_method;
- __u8 irq_edge;
- __u8 irq_params;
- __u16 irq_param[MAX_IRQ_PARAMS];
-};
-
-struct __attribute__ ((__packed__)) dr_config_input {
- __u16 x_range;
- __u16 y_range;
-};
-
-struct __attribute__ ((__packed__)) dr_config_watchdog {
- __u32 pid;
-};
-
-struct __attribute__ ((__packed__)) dr_input_event {
- __u8 id;
- __u8 tool_type;
- __u16 x;
- __u16 y;
- __u8 z;
-};
-
-#define MAX_INPUT_EVENTS 10
-struct __attribute__ ((__packed__)) dr_input {
- struct dr_input_event event[MAX_INPUT_EVENTS];
- __u8 events;
-};
-
-struct __attribute__ ((__packed__)) dr_legacy_acceleration {
- __u8 enable;
-};
-
-struct __attribute__ ((__packed__)) dr_handshake {
- __u16 tf_ver;
- __u16 chip_id;
-};
-
-#define DR_SYSFS_UPDATE_NONE 0x0000
-#define DR_SYSFS_UPDATE_BIT_GLOVE 0
-#define DR_SYSFS_UPDATE_BIT_CHARGER 1
-#define DR_SYSFS_UPDATE_BIT_LCD_FPS 2
-
-#define DR_SYSFS_ACK_GLOVE 0x5A5A5A5A
-#define DR_SYSFS_ACK_CHARGER 0xA5A5A5A5
-#define DR_SYSFS_ACK_LCD_FPS 0xC3C3C3C3
-
-enum {
- DR_NO_CHARGER,
- DR_WIRED_CHARGER,
- DR_WIRELESS_CHARGER,
-};
-
-struct __attribute__ ((__packed__)) dr_sysfs_ack {
- __u32 type;
-};
-
-struct __attribute__ ((__packed__)) dr_config_fw {
- __u16 fw_ver;
- __u16 fw_protocol;
-};
-
-struct __attribute__ ((__packed__)) dr_idle {
- __u8 idle;
-};
-
-#define TF_STATUS_DEFAULT_LOADED (1 << 0)
-#define TF_STATUS_BUSY (1 << 1)
-
-struct __attribute__ ((__packed__)) dr_tf_status {
- __u32 tf_status;
-};
-
-enum {
- FU_ECHO_RESPONSE,
- FU_CHIP_READ_RESULT,
- FU_IRQLINE_STATUS,
- FU_ASYNC_DATA,
- FU_RESUME,
- FU_HANDSHAKE_RESPONSE,
- FU_SYSFS_INFO,
-};
-
-struct __attribute__ ((__packed__)) fu_echo_response {
- __u32 cookie;
- __u8 driver_state;
-};
-
-struct __attribute__ ((__packed__)) fu_chip_read_result {
- __u16 address;
- __u16 length;
- __u8 data[0];
-};
-
-struct __attribute__ ((__packed__)) fu_irqline_status {
- __u8 status;
-};
-
-struct __attribute__ ((__packed__)) fu_async_data {
- __u16 address;
- __u16 length;
- __u16 status;
- __u8 data[0];
-};
-
-struct __attribute__ ((__packed__)) fu_handshake_response {
- __u16 driver_ver;
- __u16 panel_id;
- __u16 driver_protocol;
-};
-
-struct __attribute__ ((__packed__)) fu_sysfs_info {
- __u8 type;
- __u16 glove_value;
- __u16 charger_value;
- __u16 lcd_fps_value;
-};
-
-#ifdef __KERNEL__
-/****************************************************************************\
-* Kernel platform data structure *
-\****************************************************************************/
-
-#define MAXIM_STI_NAME "maxim_sti"
-
-struct maxim_sti_pdata {
- char *touch_fusion;
- char *config_file;
- char *nl_family;
- char *fw_name;
- u32 nl_mc_groups;
- u32 chip_access_method;
- u32 default_reset_state;
- u32 tx_buf_size;
- u32 rx_buf_size;
- int gpio_reset;
- int gpio_irq;
- int (*init)(struct maxim_sti_pdata *pdata, bool init);
- void (*reset)(struct maxim_sti_pdata *pdata, int value);
- int (*irq)(struct maxim_sti_pdata *pdata);
-};
-#endif
-
-#endif
-