1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Core definitions for QNAP MCU MFD driver.
4  * Copyright (C) 2024 Heiko Stuebner <[email protected]>
5  */
6 
7 #ifndef _LINUX_QNAP_MCU_H_
8 #define _LINUX_QNAP_MCU_H_
9 
10 struct qnap_mcu;
11 
12 struct qnap_mcu_variant {
13 	u32 baud_rate;
14 	int num_drives;
15 	int fan_pwm_min;
16 	int fan_pwm_max;
17 	bool usb_led;
18 };
19 
20 int qnap_mcu_exec(struct qnap_mcu *mcu,
21 		  const u8 *cmd_data, size_t cmd_data_size,
22 		  u8 *reply_data, size_t reply_data_size);
23 int qnap_mcu_exec_with_ack(struct qnap_mcu *mcu,
24 			   const u8 *cmd_data, size_t cmd_data_size);
25 
26 #endif /* _LINUX_QNAP_MCU_H_ */
27