diff options
Diffstat (limited to 'drivers/bluetooth/btmtkuart.c')
-rw-r--r-- | drivers/bluetooth/btmtkuart.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/bluetooth/btmtkuart.c b/drivers/bluetooth/btmtkuart.c index ed2a5c7cb77f..4593baff2bc9 100644 --- a/drivers/bluetooth/btmtkuart.c +++ b/drivers/bluetooth/btmtkuart.c | |||
@@ -144,8 +144,10 @@ static int mtk_setup_fw(struct hci_dev *hdev) | |||
144 | fw_size = fw->size; | 144 | fw_size = fw->size; |
145 | 145 | ||
146 | /* The size of patch header is 30 bytes, should be skip */ | 146 | /* The size of patch header is 30 bytes, should be skip */ |
147 | if (fw_size < 30) | 147 | if (fw_size < 30) { |
148 | return -EINVAL; | 148 | err = -EINVAL; |
149 | goto free_fw; | ||
150 | } | ||
149 | 151 | ||
150 | fw_size -= 30; | 152 | fw_size -= 30; |
151 | fw_ptr += 30; | 153 | fw_ptr += 30; |
@@ -172,8 +174,8 @@ static int mtk_setup_fw(struct hci_dev *hdev) | |||
172 | fw_ptr += dlen; | 174 | fw_ptr += dlen; |
173 | } | 175 | } |
174 | 176 | ||
177 | free_fw: | ||
175 | release_firmware(fw); | 178 | release_firmware(fw); |
176 | |||
177 | return err; | 179 | return err; |
178 | } | 180 | } |
179 | 181 | ||