1 /* 2 * Model description tables 3 */ 4 #include <linux/kernel.h> 5 6 struct product_info { 7 const char *pi_name; 8 const char *pi_type; 9 }; 10 11 struct vendor_info { 12 const char *vi_name; 13 const struct product_info *vi_product_info; 14 }; 15 16 /* 17 * Base models 18 */ 19 static const char * const txt_base_models[] = { 20 "MQ 2", "MQ Pro", "SP 25", "SP 50", "SP 100", "SP 5000", "SP 7000", 21 "SP 1000", "Unknown" 22 }; 23 #define N_BASE_MODELS (ARRAY_SIZE(txt_base_models) - 1) 24 25 /* 26 * Eicon Networks 27 */ 28 static const char txt_en_mq[] = "Masquerade"; 29 static const char txt_en_sp[] = "Safepipe"; 30 31 static const struct product_info product_info_eicon[] = { 32 { txt_en_mq, "II" }, /* 0 */ 33 { txt_en_mq, "Pro" }, /* 1 */ 34 { txt_en_sp, "25" }, /* 2 */ 35 { txt_en_sp, "50" }, /* 3 */ 36 { txt_en_sp, "100" }, /* 4 */ 37 { txt_en_sp, "5000" }, /* 5 */ 38 { txt_en_sp, "7000" }, /* 6 */ 39 { txt_en_sp, "30" }, /* 7 */ 40 { txt_en_sp, "5100" }, /* 8 */ 41 { txt_en_sp, "7100" }, /* 9 */ 42 { txt_en_sp, "1110" }, /* 10 */ 43 { txt_en_sp, "3020" }, /* 11 */ 44 { txt_en_sp, "3030" }, /* 12 */ 45 { txt_en_sp, "5020" }, /* 13 */ 46 { txt_en_sp, "5030" }, /* 14 */ 47 { txt_en_sp, "1120" }, /* 15 */ 48 { txt_en_sp, "1130" }, /* 16 */ 49 { txt_en_sp, "6010" }, /* 17 */ 50 { txt_en_sp, "6110" }, /* 18 */ 51 { txt_en_sp, "6210" }, /* 19 */ 52 { txt_en_sp, "1020" }, /* 20 */ 53 { txt_en_sp, "1040" }, /* 21 */ 54 { txt_en_sp, "1050" }, /* 22 */ 55 { txt_en_sp, "1060" }, /* 23 */ 56 }; 57 58 #define N_PRIDS ARRAY_SIZE(product_info_eicon) 59 60 /* 61 * The vendor table 62 */ 63 static struct vendor_info const vendor_info_table[] = { 64 { "Eicon Networks", product_info_eicon }, 65 }; 66 67 #define N_VENDORS ARRAY_SIZE(vendor_info_table) 68