OSDN Git Service

Bluetooth: Use switch statement for Intel hardware variants
authorTedd Ho-Jeong An <tedd.an@intel.com>
Mon, 6 Mar 2017 23:38:26 +0000 (15:38 -0800)
committerMarcel Holtmann <marcel@holtmann.org>
Wed, 12 Apr 2017 20:02:37 +0000 (22:02 +0200)
Multiple new hardware variants are planned and the simple if statement
would get really complicated and unreadable. So instead replace it with
a simple switch statement.

The change is applied to both USB and UART.

Based-on-patch-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Tedd Ho-Jeong An <tedd.an@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/btusb.c
drivers/bluetooth/hci_intel.c

index 1c8094e..b599be8 100644 (file)
@@ -2024,13 +2024,17 @@ static int btusb_setup_intel_new(struct hci_dev *hdev)
                return -EINVAL;
        }
 
-       /* At the moment the iBT 3.0 hardware variants 0x0b (LnP/SfP)
-        * and 0x0c (WsP) are supported by this firmware loading method.
+       /* Check for supported iBT hardware variants of this firmware
+        * loading method.
         *
         * This check has been put in place to ensure correct forward
         * compatibility options when newer hardware variants come along.
         */
-       if (ver.hw_variant != 0x0b && ver.hw_variant != 0x0c) {
+       switch (ver.hw_variant) {
+       case 0x0b:      /* SfP */
+       case 0x0c:      /* WsP */
+               break;
+       default:
                BT_ERR("%s: Unsupported Intel hardware variant (%u)",
                       hdev->name, ver.hw_variant);
                return -EINVAL;
index 9e27128..bfd718c 100644 (file)
@@ -601,12 +601,17 @@ static int intel_setup(struct hci_uart *hu)
                return -EINVAL;
        }
 
-       /* At the moment only the hardware variant iBT 3.0 (LnP/SfP) is
-        * supported by this firmware loading method. This check has been
-        * put in place to ensure correct forward compatibility options
-        * when newer hardware variants come along.
-        */
-       if (ver.hw_variant != 0x0b) {
+        /* Check for supported iBT hardware variants of this firmware
+         * loading method.
+         *
+         * This check has been put in place to ensure correct forward
+         * compatibility options when newer hardware variants come along.
+         */
+       switch (ver.hw_variant) {
+       case 0x0b:      /* LnP */
+       case 0x0c:      /* WsP */
+               break;
+       default:
                bt_dev_err(hdev, "Unsupported Intel hardware variant (%u)",
                           ver.hw_variant);
                return -EINVAL;