Bluetooth: hci_sync: Introduce PTR_UINT/UINT_PTR macros

This introduces PTR_UINT/UINT_PTR macros and replace the use of
PTR_ERR/ERR_PTR.
Signed-off-by: default avatarLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
parent a0912892
...@@ -5,6 +5,9 @@ ...@@ -5,6 +5,9 @@
* Copyright (C) 2021 Intel Corporation * Copyright (C) 2021 Intel Corporation
*/ */
#define UINT_PTR(_handle) ((void *)((uintptr_t)_handle))
#define PTR_UINT(_ptr) ((uintptr_t)((void *)_ptr))
typedef int (*hci_cmd_sync_work_func_t)(struct hci_dev *hdev, void *data); typedef int (*hci_cmd_sync_work_func_t)(struct hci_dev *hdev, void *data);
typedef void (*hci_cmd_sync_work_destroy_t)(struct hci_dev *hdev, void *data, typedef void (*hci_cmd_sync_work_destroy_t)(struct hci_dev *hdev, void *data,
int err); int err);
......
...@@ -872,7 +872,7 @@ static void bis_cleanup(struct hci_conn *conn) ...@@ -872,7 +872,7 @@ static void bis_cleanup(struct hci_conn *conn)
static int remove_cig_sync(struct hci_dev *hdev, void *data) static int remove_cig_sync(struct hci_dev *hdev, void *data)
{ {
u8 handle = PTR_ERR(data); u8 handle = PTR_UINT(data);
return hci_le_remove_cig_sync(hdev, handle); return hci_le_remove_cig_sync(hdev, handle);
} }
...@@ -881,7 +881,8 @@ static int hci_le_remove_cig(struct hci_dev *hdev, u8 handle) ...@@ -881,7 +881,8 @@ static int hci_le_remove_cig(struct hci_dev *hdev, u8 handle)
{ {
bt_dev_dbg(hdev, "handle 0x%2.2x", handle); bt_dev_dbg(hdev, "handle 0x%2.2x", handle);
return hci_cmd_sync_queue(hdev, remove_cig_sync, ERR_PTR(handle), NULL); return hci_cmd_sync_queue(hdev, remove_cig_sync, UINT_PTR(handle),
NULL);
} }
static void find_cis(struct hci_conn *conn, void *data) static void find_cis(struct hci_conn *conn, void *data)
...@@ -1260,7 +1261,7 @@ u8 hci_conn_set_handle(struct hci_conn *conn, u16 handle) ...@@ -1260,7 +1261,7 @@ u8 hci_conn_set_handle(struct hci_conn *conn, u16 handle)
static void create_le_conn_complete(struct hci_dev *hdev, void *data, int err) static void create_le_conn_complete(struct hci_dev *hdev, void *data, int err)
{ {
struct hci_conn *conn; struct hci_conn *conn;
u16 handle = PTR_ERR(data); u16 handle = PTR_UINT(data);
conn = hci_conn_hash_lookup_handle(hdev, handle); conn = hci_conn_hash_lookup_handle(hdev, handle);
if (!conn) if (!conn)
...@@ -1290,7 +1291,7 @@ static void create_le_conn_complete(struct hci_dev *hdev, void *data, int err) ...@@ -1290,7 +1291,7 @@ static void create_le_conn_complete(struct hci_dev *hdev, void *data, int err)
static int hci_connect_le_sync(struct hci_dev *hdev, void *data) static int hci_connect_le_sync(struct hci_dev *hdev, void *data)
{ {
struct hci_conn *conn; struct hci_conn *conn;
u16 handle = PTR_ERR(data); u16 handle = PTR_UINT(data);
conn = hci_conn_hash_lookup_handle(hdev, handle); conn = hci_conn_hash_lookup_handle(hdev, handle);
if (!conn) if (!conn)
...@@ -1372,7 +1373,7 @@ struct hci_conn *hci_connect_le(struct hci_dev *hdev, bdaddr_t *dst, ...@@ -1372,7 +1373,7 @@ struct hci_conn *hci_connect_le(struct hci_dev *hdev, bdaddr_t *dst,
clear_bit(HCI_CONN_SCANNING, &conn->flags); clear_bit(HCI_CONN_SCANNING, &conn->flags);
err = hci_cmd_sync_queue(hdev, hci_connect_le_sync, err = hci_cmd_sync_queue(hdev, hci_connect_le_sync,
ERR_PTR(conn->handle), UINT_PTR(conn->handle),
create_le_conn_complete); create_le_conn_complete);
if (err) { if (err) {
hci_conn_del(conn); hci_conn_del(conn);
...@@ -1736,7 +1737,7 @@ static int hci_le_create_big(struct hci_conn *conn, struct bt_iso_qos *qos) ...@@ -1736,7 +1737,7 @@ static int hci_le_create_big(struct hci_conn *conn, struct bt_iso_qos *qos)
static int set_cig_params_sync(struct hci_dev *hdev, void *data) static int set_cig_params_sync(struct hci_dev *hdev, void *data)
{ {
u8 cig_id = PTR_ERR(data); u8 cig_id = PTR_UINT(data);
struct hci_conn *conn; struct hci_conn *conn;
struct bt_iso_qos *qos; struct bt_iso_qos *qos;
struct iso_cig_params pdu; struct iso_cig_params pdu;
...@@ -1846,7 +1847,7 @@ static bool hci_le_set_cig_params(struct hci_conn *conn, struct bt_iso_qos *qos) ...@@ -1846,7 +1847,7 @@ static bool hci_le_set_cig_params(struct hci_conn *conn, struct bt_iso_qos *qos)
done: done:
if (hci_cmd_sync_queue(hdev, set_cig_params_sync, if (hci_cmd_sync_queue(hdev, set_cig_params_sync,
ERR_PTR(qos->ucast.cig), NULL) < 0) UINT_PTR(qos->ucast.cig), NULL) < 0)
return false; return false;
return true; return true;
...@@ -2858,7 +2859,7 @@ u32 hci_conn_get_phy(struct hci_conn *conn) ...@@ -2858,7 +2859,7 @@ u32 hci_conn_get_phy(struct hci_conn *conn)
static int abort_conn_sync(struct hci_dev *hdev, void *data) static int abort_conn_sync(struct hci_dev *hdev, void *data)
{ {
struct hci_conn *conn; struct hci_conn *conn;
u16 handle = PTR_ERR(data); u16 handle = PTR_UINT(data);
conn = hci_conn_hash_lookup_handle(hdev, handle); conn = hci_conn_hash_lookup_handle(hdev, handle);
if (!conn) if (!conn)
...@@ -2898,6 +2899,6 @@ int hci_abort_conn(struct hci_conn *conn, u8 reason) ...@@ -2898,6 +2899,6 @@ int hci_abort_conn(struct hci_conn *conn, u8 reason)
} }
} }
return hci_cmd_sync_queue(hdev, abort_conn_sync, ERR_PTR(conn->handle), return hci_cmd_sync_queue(hdev, abort_conn_sync, UINT_PTR(conn->handle),
NULL); NULL);
} }
...@@ -6528,7 +6528,7 @@ int hci_get_random_address(struct hci_dev *hdev, bool require_privacy, ...@@ -6528,7 +6528,7 @@ int hci_get_random_address(struct hci_dev *hdev, bool require_privacy,
static int _update_adv_data_sync(struct hci_dev *hdev, void *data) static int _update_adv_data_sync(struct hci_dev *hdev, void *data)
{ {
u8 instance = PTR_ERR(data); u8 instance = PTR_UINT(data);
return hci_update_adv_data_sync(hdev, instance); return hci_update_adv_data_sync(hdev, instance);
} }
...@@ -6536,5 +6536,5 @@ static int _update_adv_data_sync(struct hci_dev *hdev, void *data) ...@@ -6536,5 +6536,5 @@ static int _update_adv_data_sync(struct hci_dev *hdev, void *data)
int hci_update_adv_data(struct hci_dev *hdev, u8 instance) int hci_update_adv_data(struct hci_dev *hdev, u8 instance)
{ {
return hci_cmd_sync_queue(hdev, _update_adv_data_sync, return hci_cmd_sync_queue(hdev, _update_adv_data_sync,
ERR_PTR(instance), NULL); UINT_PTR(instance), NULL);
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment