linux/drivers/bluetooth/btrtl.h

/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 *  Bluetooth support for Realtek devices
 *
 *  Copyright (C) 2015 Endless Mobile, Inc.
 */

#define RTL_FRAG_LEN

#define rtl_dev_err(dev, fmt, ...)
#define rtl_dev_warn(dev, fmt, ...)
#define rtl_dev_info(dev, fmt, ...)
#define rtl_dev_dbg(dev, fmt, ...)

struct btrtl_device_info;

struct rtl_chip_type_evt {} __packed;

struct rtl_download_cmd {} __packed;

struct rtl_download_response {} __packed;

struct rtl_rom_version_evt {} __packed;

struct rtl_epatch_header {} __packed;

struct rtl_vendor_config_entry {} __packed;

struct rtl_vendor_config {} __packed;

struct rtl_epatch_header_v2 {} __packed;

struct rtl_section {} __packed;

struct rtl_section_hdr {} __packed;

struct rtl_common_subsec {};

struct rtl_sec_hdr {} __packed;

struct rtl_subsection {};

struct rtl_iovec {};

struct rtl_vendor_cmd {} __packed;

enum {};

struct rtl_dump_info {};

struct btrealtek_data {};

#define btrealtek_set_flag(hdev, nr)

#define btrealtek_get_flag(hdev)

#define btrealtek_test_flag(hdev, nr)

#if IS_ENABLED(CONFIG_BT_RTL)

struct btrtl_device_info *btrtl_initialize(struct hci_dev *hdev,
					   const char *postfix);
void btrtl_free(struct btrtl_device_info *btrtl_dev);
int btrtl_download_firmware(struct hci_dev *hdev,
			    struct btrtl_device_info *btrtl_dev);
void btrtl_set_quirks(struct hci_dev *hdev,
		      struct btrtl_device_info *btrtl_dev);
int btrtl_setup_realtek(struct hci_dev *hdev);
int btrtl_shutdown_realtek(struct hci_dev *hdev);
int btrtl_get_uart_settings(struct hci_dev *hdev,
			    struct btrtl_device_info *btrtl_dev,
			    unsigned int *controller_baudrate,
			    u32 *device_baudrate, bool *flow_control);
void btrtl_set_driver_name(struct hci_dev *hdev, const char *driver_name);

#else

static inline struct btrtl_device_info *btrtl_initialize(struct hci_dev *hdev,
							 const char *postfix)
{
	return ERR_PTR(-EOPNOTSUPP);
}

static inline void btrtl_free(struct btrtl_device_info *btrtl_dev)
{
}

static inline int btrtl_download_firmware(struct hci_dev *hdev,
					  struct btrtl_device_info *btrtl_dev)
{
	return -EOPNOTSUPP;
}

static inline void btrtl_set_quirks(struct hci_dev *hdev,
				    struct btrtl_device_info *btrtl_dev)
{
}

static inline int btrtl_setup_realtek(struct hci_dev *hdev)
{
	return -EOPNOTSUPP;
}

static inline int btrtl_shutdown_realtek(struct hci_dev *hdev)
{
	return -EOPNOTSUPP;
}

static inline int btrtl_get_uart_settings(struct hci_dev *hdev,
					  struct btrtl_device_info *btrtl_dev,
					  unsigned int *controller_baudrate,
					  u32 *device_baudrate,
					  bool *flow_control)
{
	return -ENOENT;
}

static inline void btrtl_set_driver_name(struct hci_dev *hdev, const char *driver_name)
{
}

#endif