Skip to content

Commit 8991eb3

Browse files
spandruvadaJiri Kosina
authored andcommitted
HID: intel-ish-hid: Move the common functions from client.h
Move the interface functions in client.h to common include. These are already abstracted well to use as is. Also move any associated structures used by these functions. Signed-off-by: Srinivas Pandruvada <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
1 parent 9a0bc1a commit 8991eb3

File tree

3 files changed

+48
-50
lines changed

3 files changed

+48
-50
lines changed

drivers/hid/intel-ish-hid/ishtp/client.h

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,6 @@
1919
#include <linux/types.h>
2020
#include "ishtp-dev.h"
2121

22-
/* Client state */
23-
enum cl_state {
24-
ISHTP_CL_INITIALIZING = 0,
25-
ISHTP_CL_CONNECTING,
26-
ISHTP_CL_CONNECTED,
27-
ISHTP_CL_DISCONNECTING,
28-
ISHTP_CL_DISCONNECTED
29-
};
30-
3122
/* Tx and Rx ring size */
3223
#define CL_DEF_RX_RING_SIZE 2
3324
#define CL_DEF_TX_RING_SIZE 2
@@ -169,19 +160,4 @@ static inline bool ishtp_cl_cmp_id(const struct ishtp_cl *cl1,
169160
(cl1->fw_client_id == cl2->fw_client_id);
170161
}
171162

172-
/* exported functions from ISHTP under client management scope */
173-
struct ishtp_cl *ishtp_cl_allocate(struct ishtp_cl_device *cl_device);
174-
void ishtp_cl_free(struct ishtp_cl *cl);
175-
int ishtp_cl_link(struct ishtp_cl *cl);
176-
void ishtp_cl_unlink(struct ishtp_cl *cl);
177-
int ishtp_cl_disconnect(struct ishtp_cl *cl);
178-
int ishtp_cl_connect(struct ishtp_cl *cl);
179-
int ishtp_cl_send(struct ishtp_cl *cl, uint8_t *buf, size_t length);
180-
int ishtp_cl_flush_queues(struct ishtp_cl *cl);
181-
182-
/* exported functions from ISHTP client buffer management scope */
183-
int ishtp_cl_io_rb_recycle(struct ishtp_cl_rb *rb);
184-
bool ishtp_cl_tx_empty(struct ishtp_cl *cl);
185-
struct ishtp_cl_rb *ishtp_cl_rx_get_rb(struct ishtp_cl *cl);
186-
187163
#endif /* _ISHTP_CLIENT_H_ */

drivers/hid/intel-ish-hid/ishtp/ishtp-dev.h

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -79,32 +79,6 @@ struct ishtp_fw_client {
7979
uint8_t client_id;
8080
};
8181

82-
/**
83-
* struct ishtp_msg_data - ISHTP message data struct
84-
* @size: Size of data in the *data
85-
* @data: Pointer to data
86-
*/
87-
struct ishtp_msg_data {
88-
uint32_t size;
89-
unsigned char *data;
90-
};
91-
92-
/*
93-
* struct ishtp_cl_rb - request block structure
94-
* @list: Link to list members
95-
* @cl: ISHTP client instance
96-
* @buffer: message header
97-
* @buf_idx: Index into buffer
98-
* @read_time: unused at this time
99-
*/
100-
struct ishtp_cl_rb {
101-
struct list_head list;
102-
struct ishtp_cl *cl;
103-
struct ishtp_msg_data buffer;
104-
unsigned long buf_idx;
105-
unsigned long read_time;
106-
};
107-
10882
/*
10983
* Control info for IPC messages ISHTP/IPC sending FIFO -
11084
* list with inline data buffer

include/linux/intel-ish-client-if.h

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,16 @@
99
#define _INTEL_ISH_CLIENT_IF_H_
1010

1111
struct ishtp_cl_device;
12+
struct ishtp_cl;
13+
14+
/* Client state */
15+
enum cl_state {
16+
ISHTP_CL_INITIALIZING = 0,
17+
ISHTP_CL_CONNECTING,
18+
ISHTP_CL_CONNECTED,
19+
ISHTP_CL_DISCONNECTING,
20+
ISHTP_CL_DISCONNECTED
21+
};
1222

1323
/**
1424
* struct ishtp_cl_device - ISHTP device handle
@@ -29,6 +39,32 @@ struct ishtp_cl_driver {
2939
const struct dev_pm_ops *pm;
3040
};
3141

42+
/**
43+
* struct ishtp_msg_data - ISHTP message data struct
44+
* @size: Size of data in the *data
45+
* @data: Pointer to data
46+
*/
47+
struct ishtp_msg_data {
48+
uint32_t size;
49+
unsigned char *data;
50+
};
51+
52+
/*
53+
* struct ishtp_cl_rb - request block structure
54+
* @list: Link to list members
55+
* @cl: ISHTP client instance
56+
* @buffer: message header
57+
* @buf_idx: Index into buffer
58+
* @read_time: unused at this time
59+
*/
60+
struct ishtp_cl_rb {
61+
struct list_head list;
62+
struct ishtp_cl *cl;
63+
struct ishtp_msg_data buffer;
64+
unsigned long buf_idx;
65+
unsigned long read_time;
66+
};
67+
3268
int ishtp_cl_driver_register(struct ishtp_cl_driver *driver,
3369
struct module *owner);
3470
void ishtp_cl_driver_unregister(struct ishtp_cl_driver *driver);
@@ -40,4 +76,16 @@ struct device *ishtp_device(struct ishtp_cl_device *cl_device);
4076
/* Trace interface for clients */
4177
void *ishtp_trace_callback(struct ishtp_cl_device *cl_device);
4278

79+
struct ishtp_cl *ishtp_cl_allocate(struct ishtp_cl_device *cl_device);
80+
void ishtp_cl_free(struct ishtp_cl *cl);
81+
int ishtp_cl_link(struct ishtp_cl *cl);
82+
void ishtp_cl_unlink(struct ishtp_cl *cl);
83+
int ishtp_cl_disconnect(struct ishtp_cl *cl);
84+
int ishtp_cl_connect(struct ishtp_cl *cl);
85+
int ishtp_cl_send(struct ishtp_cl *cl, uint8_t *buf, size_t length);
86+
int ishtp_cl_flush_queues(struct ishtp_cl *cl);
87+
int ishtp_cl_io_rb_recycle(struct ishtp_cl_rb *rb);
88+
bool ishtp_cl_tx_empty(struct ishtp_cl *cl);
89+
struct ishtp_cl_rb *ishtp_cl_rx_get_rb(struct ishtp_cl *cl);
90+
4391
#endif /* _INTEL_ISH_CLIENT_IF_H_ */

0 commit comments

Comments
 (0)