Drop the first column in the table of supported models. Voltage/current
capabilities as well as quirks are immediately detected at scan time, no
other code paths outside of scan need to access that "model enum/index".
[ see a word-diff for the essence, a table column gets removed ]
static const double amps_5[] = { 0, 5.1, 0.001, };
static const struct korad_kaxxxxp_model models[] = {
static const double amps_5[] = { 0, 5.1, 0.001, };
static const struct korad_kaxxxxp_model models[] = {
- /* Device enum, vendor, model, ID reply, channels, voltage, current, quirks. */
- {KORAD_KA3005P, "Korad", "KA3005P", "KORADKA3005PV2.0",
+ /* Vendor, model name, ID reply, channels, voltage, current, quirks. */
+ {"Korad", "KA3005P", "KORADKA3005PV2.0",
1, volts_30, amps_5, 0},
/* Sometimes the KA3005P has an extra 0x01 after the ID. */
1, volts_30, amps_5, 0},
/* Sometimes the KA3005P has an extra 0x01 after the ID. */
- {KORAD_KA3005P_0X01, "Korad", "KA3005P", "KORADKA3005PV2.0\x01",
+ {"Korad", "KA3005P", "KORADKA3005PV2.0\x01",
1, volts_30, amps_5, 0},
/* Sometimes the KA3005P has an extra 0xBC after the ID. */
1, volts_30, amps_5, 0},
/* Sometimes the KA3005P has an extra 0xBC after the ID. */
- {KORAD_KA3005P_0XBC, "Korad", "KA3005P", "KORADKA3005PV2.0\xBC",
+ {"Korad", "KA3005P", "KORADKA3005PV2.0\xBC",
- {KORAD_KA3005P_V42, "Korad", "KA3005P", "KORAD KA3005P V4.2",
+ {"Korad", "KA3005P", "KORAD KA3005P V4.2",
- {KORAD_KA3005P_V55, "Korad", "KA3005P", "KORAD KA3005P V5.5",
+ {"Korad", "KA3005P", "KORAD KA3005P V5.5",
- {KORAD_KD3005P_V20, "Korad", "KD3005P", "KORAD KD3005P V2.0",
+ {"Korad", "KD3005P", "KORAD KD3005P V2.0",
- {KORAD_KD3005P_V20_NOSP, "Korad", "KD3005P", "KORADKD3005PV2.0",
+ {"Korad", "KD3005P", "KORADKD3005PV2.0",
- {KORAD_KD3005P_V21_NOSP, "Korad", "KD3005P", "KORADKD3005PV2.1",
+ {"Korad", "KD3005P", "KORADKD3005PV2.1",
- {KORAD_KD3005P_V41, "Korad", "KD3005P", "KORAD KD3005P V4.1",
+ {"Korad", "KD3005P", "KORAD KD3005P V4.1",
- {KORAD_KD3005P_V68, "Korad", "KD3005P", "KORAD KD3005P V6.8",
+ {"Korad", "KD3005P", "KORAD KD3005P V6.8",
- {KORAD_KD6005P, "Korad", "KD6005P", "KORAD KD6005P V2.2",
+ {"Korad", "KD6005P", "KORAD KD6005P V2.2",
- {RND_320_KA3005P, "RND", "KA3005P", "RND 320-KA3005P V5.5",
+ {"RND", "KA3005P", "RND 320-KA3005P V5.5",
- {RND_320_KD3005P, "RND", "KD3005P", "RND 320-KD3005P V4.2",
+ {"RND", "KD3005P", "RND 320-KD3005P V4.2",
- {RND_320K30PV, "RND", "KA3005P", "RND 320-KA3005P V2.0",
+ {"RND", "KA3005P", "RND 320-KA3005P V2.0",
- {STAMOS_SLS31_V20, "Stamos Soldering", "S-LS-31", "S-LS-31 V2.0",
+ {"Stamos Soldering", "S-LS-31", "S-LS-31 V2.0",
- {TENMA_72_2535_V21, "Tenma", "72-2535", "TENMA 72-2535 V2.1",
+ {"Tenma", "72-2535", "TENMA 72-2535 V2.1",
- {TENMA_72_2540_V20, "Tenma", "72-2540", "TENMA72-2540V2.0",
+ {"Tenma", "72-2540", "TENMA72-2540V2.0",
- {TENMA_72_2540_V21, "Tenma", "72-2540", "TENMA 72-2540 V2.1",
+ {"Tenma", "72-2540", "TENMA 72-2540 V2.1",
- {TENMA_72_2540_V52, "Tenma", "72-2540", "TENMA 72-2540 V5.2",
+ {"Tenma", "72-2540", "TENMA 72-2540 V5.2",
- {TENMA_72_2550_V2, "Tenma", "72-2550", "TENMA72-2550V2.0",
+ {"Tenma", "72-2550", "TENMA72-2550V2.0",
- {TENMA_72_2710_V66, "Tenma", "72-2710", "TENMA 72-2710 V6.6",
+ {"Tenma", "72-2710", "TENMA 72-2710 V6.6",
- {VELLEMAN_LABPS3005D, "Velleman", "LABPS3005D", "VELLEMANLABPS3005DV2.0",
+ {"Velleman", "LABPS3005D", "VELLEMANLABPS3005DV2.0",
1, volts_30, amps_5, KORAD_QUIRK_LABPS_OVP_EN},
1, volts_30, amps_5, KORAD_QUIRK_LABPS_OVP_EN},
- {VELLEMAN_PS3005D, "Velleman", "PS3005D", "VELLEMANPS3005DV2.0",
+ {"Velleman", "PS3005D", "VELLEMANPS3005DV2.0",
1, volts_30, amps_5, 0},
ALL_ZERO
};
1, volts_30, amps_5, 0},
ALL_ZERO
};
#define KAXXXXP_POLL_INTERVAL_MS 80
#define KAXXXXP_POLL_INTERVAL_MS 80
-enum {
- KORAD_KA3005P,
- KORAD_KA3005P_0X01,
- KORAD_KA3005P_0XBC,
- KORAD_KA3005P_V42,
- KORAD_KA3005P_V55,
- KORAD_KD3005P_V20,
- KORAD_KD3005P_V20_NOSP,
- KORAD_KD3005P_V21_NOSP,
- KORAD_KD3005P_V41,
- KORAD_KD3005P_V68,
- KORAD_KD6005P,
- RND_320_KA3005P,
- RND_320_KD3005P,
- RND_320K30PV,
- STAMOS_SLS31_V20,
- TENMA_72_2535_V21,
- TENMA_72_2540_V20,
- TENMA_72_2540_V21,
- TENMA_72_2540_V52,
- TENMA_72_2550_V2,
- TENMA_72_2710_V66,
- VELLEMAN_LABPS3005D,
- VELLEMAN_PS3005D,
- /* Support for future devices with this protocol. */
-};
-
enum korad_quirks_flag {
KORAD_QUIRK_NONE = 0,
KORAD_QUIRK_LABPS_OVP_EN = 1UL << 0,
enum korad_quirks_flag {
KORAD_QUIRK_NONE = 0,
KORAD_QUIRK_LABPS_OVP_EN = 1UL << 0,
/* Information on single model */
struct korad_kaxxxxp_model {
/* Information on single model */
struct korad_kaxxxxp_model {
- int model_id; /**< Model info */
const char *vendor; /**< Vendor name */
const char *name; /**< Model name */
const char *id; /**< Model ID, as delivered by interface */
const char *vendor; /**< Vendor name */
const char *name; /**< Model name */
const char *id; /**< Model ID, as delivered by interface */