45 lines
1.1 KiB
C
45 lines
1.1 KiB
C
/*
|
|
* Copyright (c) 202X Amlogic, Inc. All rights reserved.
|
|
*
|
|
* This source code is subject to the terms and conditions defined in the
|
|
* file 'LICENSE' which is part of this source code package.
|
|
*
|
|
* Description:
|
|
*/
|
|
#ifndef __RC_LIST_H__
|
|
#define __RC_LIST_H__
|
|
|
|
#define AML_BT_CHAR_RCLIST_NAME "aml_rclist"
|
|
|
|
#define MAC_ADDR_LEN 6
|
|
#define MAX_MAC_LIST 8
|
|
#define MAX_USER_BUF_LEN (MAX_MAC_LIST*17+1)
|
|
|
|
#define FIFO_FW_RC_LIST_ADDR (0x514000 + 2364 + 4) //addr 0x514940 usb bulk 16 bit alignment
|
|
|
|
int amlbt_rc_list_init(struct device *dev, \
|
|
ws_inf p_ws_func, \
|
|
rs_inf p_rs_func, \
|
|
wrs_sdio_inf p_ws_sdio_func, \
|
|
wrs_sdio_inf p_rs_sdio_func);
|
|
void amlbt_rc_list_deinit(struct device *dev);
|
|
int amlbt_write_rclist_to_firmware(void);
|
|
void amlbt_clear_rclist_from_firmware(void);
|
|
void amlbt_wakeup_lock(void);
|
|
void amlbt_wakeup_unlock(void);
|
|
|
|
typedef struct _rc_list_t
|
|
{
|
|
char mac[MAC_ADDR_LEN];
|
|
char used;
|
|
} rc_list_t;
|
|
|
|
typedef struct
|
|
{
|
|
int wake_mux;
|
|
struct wakeup_source *amlbt_wakeup_source;
|
|
} list_bt_t;
|
|
|
|
#endif
|
|
|