diff --git a/drivers/can/can_mcp2515.c b/drivers/can/can_mcp2515.c
index 35da6b9..59df01c 100644
--- a/drivers/can/can_mcp2515.c
+++ b/drivers/can/can_mcp2515.c
@@ -524,6 +524,8 @@
 	uint8_t len;
 	uint8_t tx_frame[MCP2515_FRAME_LEN];
 
+	__ASSERT_NO_MSG(callback != NULL);
+
 	if (frame->dlc > CAN_MAX_DLC) {
 		LOG_ERR("DLC of %d exceeds maximum (%d)",
 			frame->dlc, CAN_MAX_DLC);
@@ -572,10 +574,6 @@
 	nnn = BIT(tx_idx);
 	mcp2515_cmd_rts(dev, nnn);
 
-	if (callback == NULL) {
-		k_sem_take(&dev_data->tx_cb[tx_idx].sem, K_FOREVER);
-	}
-
 	return 0;
 }
 
@@ -684,11 +682,8 @@
 {
 	struct mcp2515_data *dev_data = dev->data;
 
-	if (dev_data->tx_cb[tx_idx].cb == NULL) {
-		k_sem_give(&dev_data->tx_cb[tx_idx].sem);
-	} else {
-		dev_data->tx_cb[tx_idx].cb(dev, 0, dev_data->tx_cb[tx_idx].cb_arg);
-	}
+	dev_data->tx_cb[tx_idx].cb(dev, 0, dev_data->tx_cb[tx_idx].cb_arg);
+	dev_data->tx_cb[tx_idx].cb = NULL;
 
 	k_mutex_lock(&dev_data->mutex, K_FOREVER);
 	dev_data->tx_busy_map &= ~BIT(tx_idx);
@@ -901,17 +896,11 @@
 	struct mcp2515_data *dev_data = dev->data;
 	struct can_timing timing;
 	int ret;
-	int i;
 
 	k_sem_init(&dev_data->int_sem, 0, 1);
 	k_mutex_init(&dev_data->mutex);
 	k_sem_init(&dev_data->tx_sem, MCP2515_TX_CNT, MCP2515_TX_CNT);
 
-	for (i = 0; i < MCP2515_TX_CNT; i++) {
-		k_sem_init(&dev_data->tx_cb[i].sem, 0, 1);
-		dev_data->tx_cb[i].cb = NULL;
-	}
-
 	if (dev_cfg->phy != NULL) {
 		if (!device_is_ready(dev_cfg->phy)) {
 			LOG_ERR("CAN transceiver not ready");
diff --git a/drivers/can/can_mcp2515.h b/drivers/can/can_mcp2515.h
index 25ad259..c25fed6 100644
--- a/drivers/can/can_mcp2515.h
+++ b/drivers/can/can_mcp2515.h
@@ -17,7 +17,6 @@
 #define MCP2515_FRAME_LEN               13
 
 struct mcp2515_tx_cb {
-	struct k_sem sem;
 	can_tx_callback_t cb;
 	void *cb_arg;
 };
