diff options
| author | 2019-09-28 16:15:40 +0200 | |
|---|---|---|
| committer | 2019-09-28 16:15:40 +0200 | |
| commit | b2a9edb52b4b56c5865dc0f4bc9a2a15ab32d539 (patch) | |
| tree | 155aacc94977a83faecef5954239f4c3f261ff26 | |
| parent | e98d13746fc6c007319e94849883d8ab6feabfb6 (diff) | |
| download | libirecovery-b2a9edb52b4b56c5865dc0f4bc9a2a15ab32d539.tar.gz libirecovery-b2a9edb52b4b56c5865dc0f4bc9a2a15ab32d539.tar.bz2 | |
Add display_name to device database and irecv_device struct
| -rw-r--r-- | include/libirecovery.h | 1 | ||||
| -rw-r--r-- | src/libirecovery.c | 210 |
2 files changed, 108 insertions, 103 deletions
diff --git a/include/libirecovery.h b/include/libirecovery.h index 201be0d..e7be89b 100644 --- a/include/libirecovery.h +++ b/include/libirecovery.h | |||
| @@ -74,6 +74,7 @@ struct irecv_device { | |||
| 74 | const char* hardware_model; | 74 | const char* hardware_model; |
| 75 | unsigned int board_id; | 75 | unsigned int board_id; |
| 76 | unsigned int chip_id; | 76 | unsigned int chip_id; |
| 77 | const char* display_name; | ||
| 77 | }; | 78 | }; |
| 78 | typedef struct irecv_device* irecv_device_t; | 79 | typedef struct irecv_device* irecv_device_t; |
| 79 | 80 | ||
diff --git a/src/libirecovery.c b/src/libirecovery.c index 2ebe89c..5dada9a 100644 --- a/src/libirecovery.c +++ b/src/libirecovery.c | |||
| @@ -120,109 +120,113 @@ static libusb_context* libirecovery_context = NULL; | |||
| 120 | #endif | 120 | #endif |
| 121 | 121 | ||
| 122 | static struct irecv_device irecv_devices[] = { | 122 | static struct irecv_device irecv_devices[] = { |
| 123 | {"iPhone1,1", "m68ap", 0x00, 0x8900 }, | 123 | /* iPhone */ |
| 124 | {"iPhone1,2", "n82ap", 0x04, 0x8900 }, | 124 | { "iPhone1,1", "m68ap", 0x00, 0x8900, "iPhone 2G" }, |
| 125 | {"iPhone2,1", "n88ap", 0x00, 0x8920 }, | 125 | { "iPhone1,2", "n82ap", 0x04, 0x8900, "iPhone 3G" }, |
| 126 | {"iPhone3,1", "n90ap", 0x00, 0x8930 }, | 126 | { "iPhone2,1", "n88ap", 0x00, 0x8920, "iPhone 3Gs" }, |
| 127 | {"iPhone3,2", "n90bap", 0x04, 0x8930 }, | 127 | { "iPhone3,1", "n90ap", 0x00, 0x8930, "iPhone 4 (GSM)" }, |
| 128 | {"iPhone3,3", "n92ap", 0x06, 0x8930 }, | 128 | { "iPhone3,2", "n90bap", 0x04, 0x8930, "iPhone 4 (GSM) R2 2012" }, |
| 129 | {"iPhone4,1", "n94ap", 0x08, 0x8940 }, | 129 | { "iPhone3,3", "n92ap", 0x06, 0x8930, "iPhone 4 (CDMA)" }, |
| 130 | {"iPhone5,1", "n41ap", 0x00, 0x8950 }, | 130 | { "iPhone4,1", "n94ap", 0x08, 0x8940, "iPhone 4s" }, |
| 131 | {"iPhone5,2", "n42ap", 0x02, 0x8950 }, | 131 | { "iPhone5,1", "n41ap", 0x00, 0x8950, "iPhone 5 (GSM)" }, |
| 132 | {"iPhone5,3", "n48ap", 0x0a, 0x8950 }, | 132 | { "iPhone5,2", "n42ap", 0x02, 0x8950, "iPhone 5 (Global)" }, |
| 133 | {"iPhone5,4", "n49ap", 0x0e, 0x8950 }, | 133 | { "iPhone5,3", "n48ap", 0x0a, 0x8950, "iPhone 5c (GSM)" }, |
| 134 | {"iPhone6,1", "n51ap", 0x00, 0x8960 }, | 134 | { "iPhone5,4", "n49ap", 0x0e, 0x8950, "iPhone 5c (Global)" }, |
| 135 | {"iPhone6,2", "n53ap", 0x02, 0x8960 }, | 135 | { "iPhone6,1", "n51ap", 0x00, 0x8960, "iPhone 5s (GSM)" }, |
| 136 | {"iPhone7,1", "n56ap", 0x04, 0x7000 }, | 136 | { "iPhone6,2", "n53ap", 0x02, 0x8960, "iPhone 5s (Global)" }, |
| 137 | {"iPhone7,2", "n61ap", 0x06, 0x7000 }, | 137 | { "iPhone7,1", "n56ap", 0x04, 0x7000, "iPhone 6 Plus" }, |
| 138 | {"iPhone8,1", "n71ap", 0x04, 0x8000 }, | 138 | { "iPhone7,2", "n61ap", 0x06, 0x7000, "iPhone 6" }, |
| 139 | {"iPhone8,1", "n71map", 0x04, 0x8003 }, | 139 | { "iPhone8,1", "n71ap", 0x04, 0x8000, "iPhone 6s" }, |
| 140 | {"iPhone8,2", "n66ap", 0x06, 0x8000 }, | 140 | { "iPhone8,1", "n71map", 0x04, 0x8003, "iPhone 6s" }, |
| 141 | {"iPhone8,2", "n66map", 0x06, 0x8003 }, | 141 | { "iPhone8,2", "n66ap", 0x06, 0x8000, "iPhone 6s Plus" }, |
| 142 | {"iPhone8,4", "n69ap", 0x02, 0x8003 }, | 142 | { "iPhone8,2", "n66map", 0x06, 0x8003, "iPhone 6s Plus" }, |
| 143 | {"iPhone8,4", "n69uap", 0x02, 0x8000 }, | 143 | { "iPhone8,4", "n69ap", 0x02, 0x8003, "iPhone SE" }, |
| 144 | {"iPhone9,1", "d10ap", 0x08, 0x8010 }, | 144 | { "iPhone8,4", "n69uap", 0x02, 0x8000, "iPhone SE" }, |
| 145 | {"iPhone9,2", "d11ap", 0x0a, 0x8010 }, | 145 | { "iPhone9,1", "d10ap", 0x08, 0x8010, "iPhone 7 (Global)" }, |
| 146 | {"iPhone9,3", "d101ap", 0x0c, 0x8010 }, | 146 | { "iPhone9,2", "d11ap", 0x0a, 0x8010, "iPhone 7 Plus (Global)" }, |
| 147 | {"iPhone9,4", "d111ap", 0x0e, 0x8010 }, | 147 | { "iPhone9,3", "d101ap", 0x0c, 0x8010, "iPhone 7 (GSM)" }, |
| 148 | {"iPhone10,1","d20ap", 0x02, 0x8015 }, | 148 | { "iPhone9,4", "d111ap", 0x0e, 0x8010, "iPhone 7 Plus (GSM)" }, |
| 149 | {"iPhone10,2","d21ap", 0x04, 0x8015 }, | 149 | { "iPhone10,1", "d20ap", 0x02, 0x8015, "iPhone 8 (Global)" }, |
| 150 | {"iPhone10,3","d22ap", 0x06, 0x8015 }, | 150 | { "iPhone10,2", "d21ap", 0x04, 0x8015, "iPhone 8 Plus (Global)" }, |
| 151 | {"iPhone10,4","d201ap", 0x0a, 0x8015 }, | 151 | { "iPhone10,3", "d22ap", 0x06, 0x8015, "iPhone X (Global)" }, |
| 152 | {"iPhone10,5","d211ap", 0x0c, 0x8015 }, | 152 | { "iPhone10,4", "d201ap", 0x0a, 0x8015, "iPhone 8 (GSM)" }, |
| 153 | {"iPhone10,6","d221ap", 0x0e, 0x8015 }, | 153 | { "iPhone10,5", "d211ap", 0x0c, 0x8015, "iPhone 8 Plus (GSM)" }, |
| 154 | {"iPhone11,2","d321ap", 0x0e, 0x8020 }, | 154 | { "iPhone10,6", "d221ap", 0x0e, 0x8015, "iPhone X (GSM)" }, |
| 155 | {"iPhone11,4","d331ap", 0x0a, 0x8020 }, | 155 | { "iPhone11,2", "d321ap", 0x0e, 0x8020, "iPhone XS" }, |
| 156 | {"iPhone11,6","d331pap",0x1a, 0x8020 }, | 156 | { "iPhone11,4", "d331ap", 0x0a, 0x8020, "iPhone XS Max (China)" }, |
| 157 | {"iPhone11,8","n841ap", 0x0c, 0x8020 }, | 157 | { "iPhone11,6", "d331pap", 0x1a, 0x8020, "iPhone XS Max" }, |
| 158 | {"iPhone12,1","n104ap", 0x04, 0x8030 }, | 158 | { "iPhone11,8", "n841ap", 0x0c, 0x8020, "iPhone XR" }, |
| 159 | {"iPhone12,3","d421ap", 0x06, 0x8030 }, | 159 | { "iPhone12,1", "n104ap", 0x04, 0x8030, "iPhone 11" }, |
| 160 | {"iPhone12,5","d431ap", 0x02, 0x8030 }, | 160 | { "iPhone12,3", "d421ap", 0x06, 0x8030, "iPhone 11 Pro" }, |
| 161 | {"iPod1,1", "n45ap", 0x02, 0x8900 }, | 161 | { "iPhone12,5", "d431ap", 0x02, 0x8030, "iPhone 11 Pro Max" }, |
| 162 | {"iPod2,1", "n72ap", 0x00, 0x8720 }, | 162 | /* iPod */ |
| 163 | {"iPod3,1", "n18ap", 0x02, 0x8922 }, | 163 | { "iPod1,1", "n45ap", 0x02, 0x8900, "iPod Touch (1st gen)" }, |
| 164 | {"iPod4,1", "n81ap", 0x08, 0x8930 }, | 164 | { "iPod2,1", "n72ap", 0x00, 0x8720, "iPod Touch (2nd gen)" }, |
| 165 | {"iPod5,1", "n78ap", 0x00, 0x8942 }, | 165 | { "iPod3,1", "n18ap", 0x02, 0x8922, "iPod Touch (3rd gen)" }, |
| 166 | {"iPod7,1", "n102ap", 0x10, 0x7000 }, | 166 | { "iPod4,1", "n81ap", 0x08, 0x8930, "iPod Touch (4th gen)" }, |
| 167 | {"iPod9,1", "n112ap", 0x16, 0x8010 }, | 167 | { "iPod5,1", "n78ap", 0x00, 0x8942, "iPod Touch (5th gen)" }, |
| 168 | {"iPad1,1", "k48ap", 0x02, 0x8930 }, | 168 | { "iPod7,1", "n102ap", 0x10, 0x7000, "iPod Touch (6th gen)" }, |
| 169 | {"iPad2,1", "k93ap", 0x04, 0x8940 }, | 169 | { "iPod9,1", "n112ap", 0x16, 0x8010, "iPod Touch (7th gen)" }, |
| 170 | {"iPad2,2", "k94ap", 0x06, 0x8940 }, | 170 | /* iPad */ |
| 171 | {"iPad2,3", "k95ap", 0x02, 0x8940 }, | 171 | { "iPad1,1", "k48ap", 0x02, 0x8930, "iPad" }, |
| 172 | {"iPad2,4", "k93aap", 0x06, 0x8942 }, | 172 | { "iPad2,1", "k93ap", 0x04, 0x8940, "iPad 2 (WiFi)" }, |
| 173 | {"iPad2,5", "p105ap", 0x0a, 0x8942 }, | 173 | { "iPad2,2", "k94ap", 0x06, 0x8940, "iPad 2 (GSM)" }, |
| 174 | {"iPad2,6", "p106ap", 0x0c, 0x8942 }, | 174 | { "iPad2,3", "k95ap", 0x02, 0x8940, "iPad 2 (CDMA)" }, |
| 175 | {"iPad2,7", "p107ap", 0x0e, 0x8942 }, | 175 | { "iPad2,4", "k93aap", 0x06, 0x8942, "iPad 2 (WiFi) R2 2012" }, |
| 176 | {"iPad3,1", "j1ap", 0x00, 0x8945 }, | 176 | { "iPad2,5", "p105ap", 0x0a, 0x8942, "iPad Mini (WiFi)" }, |
| 177 | {"iPad3,2", "j2ap", 0x02, 0x8945 }, | 177 | { "iPad2,6", "p106ap", 0x0c, 0x8942, "iPad Mini (GSM)" }, |
| 178 | {"iPad3,3", "j2aap", 0x04, 0x8945 }, | 178 | { "iPad2,7", "p107ap", 0x0e, 0x8942, "iPad Mini (Global)" }, |
| 179 | {"iPad3,4", "p101ap", 0x00, 0x8955 }, | 179 | { "iPad3,1", "j1ap", 0x00, 0x8945, "iPad 3 (WiFi)" }, |
| 180 | {"iPad3,5", "p102ap", 0x02, 0x8955 }, | 180 | { "iPad3,2", "j2ap", 0x02, 0x8945, "iPad 3 (CDMA)" }, |
| 181 | {"iPad3,6", "p103ap", 0x04, 0x8955 }, | 181 | { "iPad3,3", "j2aap", 0x04, 0x8945, "iPad 3 (GSM)" }, |
| 182 | {"iPad4,1", "j71ap", 0x10, 0x8960 }, | 182 | { "iPad3,4", "p101ap", 0x00, 0x8955, "iPad 4 (WiFi)" }, |
| 183 | {"iPad4,2", "j72ap", 0x12, 0x8960 }, | 183 | { "iPad3,5", "p102ap", 0x02, 0x8955, "iPad 4 (GSM)" }, |
| 184 | {"iPad4,4", "j85ap", 0x0a, 0x8960 }, | 184 | { "iPad3,6", "p103ap", 0x04, 0x8955, "iPad 4 (Global)" }, |
| 185 | {"iPad4,5", "j86ap", 0x0c, 0x8960 }, | 185 | { "iPad4,1", "j71ap", 0x10, 0x8960, "iPad Air (WiFi)" }, |
| 186 | {"iPad4,6", "j87ap", 0x0e, 0x8960 }, | 186 | { "iPad4,2", "j72ap", 0x12, 0x8960, "iPad Air (Cellular)" }, |
| 187 | {"iPad4,7", "j85map", 0x32, 0x8960 }, | 187 | { "iPad4,4", "j85ap", 0x0a, 0x8960, "iPad Mini 2 (WiFi)" }, |
| 188 | {"iPad4,8", "j86map", 0x34, 0x8960 }, | 188 | { "iPad4,5", "j86ap", 0x0c, 0x8960, "iPad Mini 2 (Cellular)" }, |
| 189 | {"iPad4,9", "j87map", 0x36, 0x8960 }, | 189 | { "iPad4,6", "j87ap", 0x0e, 0x8960, "iPad Mini 2 (China)" }, |
| 190 | {"iPad5,1", "j96ap", 0x08, 0x7000 }, | 190 | { "iPad4,7", "j85map", 0x32, 0x8960, "iPad Mini 3 (WiFi)" }, |
| 191 | {"iPad5,2", "j97ap", 0x0A, 0x7000 }, | 191 | { "iPad4,8", "j86map", 0x34, 0x8960, "iPad Mini 3 (Cellular)" }, |
| 192 | {"iPad5,3", "j81ap", 0x06, 0x7001 }, | 192 | { "iPad4,9", "j87map", 0x36, 0x8960, "iPad Mini 3 (China)" }, |
| 193 | {"iPad5,4", "j82ap", 0x02, 0x7001 }, | 193 | { "iPad5,1", "j96ap", 0x08, 0x7000, "iPad Mini 4 (WiFi)" }, |
| 194 | {"iPad6,3", "j127ap", 0x08, 0x8001 }, | 194 | { "iPad5,2", "j97ap", 0x0A, 0x7000, "iPad Mini 4 (Cellular)" }, |
| 195 | {"iPad6,4", "j128ap", 0x0a, 0x8001 }, | 195 | { "iPad5,3", "j81ap", 0x06, 0x7001, "iPad Air 2 (WiFi)" }, |
| 196 | {"iPad6,7", "j98aap", 0x10, 0x8001 }, | 196 | { "iPad5,4", "j82ap", 0x02, 0x7001, "iPad Air 2 (Cellular)" }, |
| 197 | {"iPad6,8", "j99aap", 0x12, 0x8001 }, | 197 | { "iPad6,3", "j127ap", 0x08, 0x8001, "iPad Pro 9.7in (WiFi)" }, |
| 198 | {"iPad6,11", "j71sap", 0x10, 0x8000 }, | 198 | { "iPad6,4", "j128ap", 0x0a, 0x8001, "iPad Pro 9.7in (Cellular)" }, |
| 199 | {"iPad6,11", "j71tap", 0x10, 0x8003 }, | 199 | { "iPad6,7", "j98aap", 0x10, 0x8001, "iPad Pro 12.9in (WiFi)" }, |
| 200 | {"iPad6,12", "j72sap", 0x12, 0x8000 }, | 200 | { "iPad6,8", "j99aap", 0x12, 0x8001, "iPad Pro 12.9in (Cellular)" }, |
| 201 | {"iPad6,12", "j72tap", 0x12, 0x8003 }, | 201 | { "iPad6,11", "j71sap", 0x10, 0x8000, "iPad 5 (WiFi)" }, |
| 202 | {"iPad7,1", "j120ap", 0x0C, 0x8011 }, | 202 | { "iPad6,11", "j71tap", 0x10, 0x8003, "iPad 5 (WiFi)" }, |
| 203 | {"iPad7,2", "j121ap", 0x0E, 0x8011 }, | 203 | { "iPad6,12", "j72sap", 0x12, 0x8000, "iPad 5 (Cellular)" }, |
| 204 | {"iPad7,3", "j207ap", 0x04, 0x8011 }, | 204 | { "iPad6,12", "j72tap", 0x12, 0x8003, "iPad 5 (Cellular)" }, |
| 205 | {"iPad7,4", "j208ap", 0x06, 0x8011 }, | 205 | { "iPad7,1", "j120ap", 0x0C, 0x8011, "iPad Pro 2 12.9in (WiFi)" }, |
| 206 | {"iPad7,5", "j71bap", 0x18, 0x8010 }, | 206 | { "iPad7,2", "j121ap", 0x0E, 0x8011, "iPad Pro 2 12.9in (Cellular)" }, |
| 207 | {"iPad7,6", "j72bap", 0x1A, 0x8010 }, | 207 | { "iPad7,3", "j207ap", 0x04, 0x8011, "iPad Pro 10.5in (WiFi)" }, |
| 208 | {"iPad8,1", "j317ap", 0x0C, 0x8027 }, | 208 | { "iPad7,4", "j208ap", 0x06, 0x8011, "iPad Pro 10.5in (Cellular)" }, |
| 209 | {"iPad8,2", "j317xap", 0x1C, 0x8027 }, | 209 | { "iPad7,5", "j71bap", 0x18, 0x8010, "iPad 6 (WiFi)" }, |
| 210 | {"iPad8,3", "j318ap", 0x0E, 0x8027 }, | 210 | { "iPad7,6", "j72bap", 0x1A, 0x8010, "iPad 6 (Cellular)" }, |
| 211 | {"iPad8,4", "j318xap", 0x1E, 0x8027 }, | 211 | { "iPad8,1", "j317ap", 0x0C, 0x8027, "iPad Pro 3 11in (WiFi)" }, |
| 212 | {"iPad8,5", "j320ap", 0x08, 0x8027 }, | 212 | { "iPad8,2", "j317xap", 0x1C, 0x8027, "iPad Pro 3 11in (WiFi, 1TB)" }, |
| 213 | {"iPad8,6", "j320xap", 0x18, 0x8027 }, | 213 | { "iPad8,3", "j318ap", 0x0E, 0x8027, "iPad Pro 3 11in (Cellular)" }, |
| 214 | {"iPad8,7", "j321ap", 0x0A, 0x8027 }, | 214 | { "iPad8,4", "j318xap", 0x1E, 0x8027, "iPad Pro 3 11in (Cellular, 1TB)" }, |
| 215 | {"iPad8,8", "j321xap", 0x1A, 0x8027 }, | 215 | { "iPad8,5", "j320ap", 0x08, 0x8027, "iPad Pro 3 12.9in (WiFi)" }, |
| 216 | {"iPad11,1", "j210ap", 0x14, 0x8020 }, | 216 | { "iPad8,6", "j320xap", 0x18, 0x8027, "iPad Pro 3 12.9in (WiFi, 1TB)" }, |
| 217 | {"iPad11,2", "j211ap", 0x16, 0x8020 }, | 217 | { "iPad8,7", "j321ap", 0x0A, 0x8027, "iPad Pro 3 12.9in (Cellular)" }, |
| 218 | {"iPad11,3", "j217ap", 0x1C, 0x8020 }, | 218 | { "iPad8,8", "j321xap", 0x1A, 0x8027, "iPad Pro 3 12.9in (Cellular, 1TB)" }, |
| 219 | {"iPad11,4", "j218ap", 0x1E, 0x8020 }, | 219 | { "iPad11,1", "j210ap", 0x14, 0x8020, "iPad Mini 5 (WiFi)" }, |
| 220 | {"AppleTV2,1", "k66ap", 0x10, 0x8930 }, | 220 | { "iPad11,2", "j211ap", 0x16, 0x8020, "iPad Mini 5 (Cellular)" }, |
| 221 | {"AppleTV3,1", "j33ap", 0x08, 0x8942 }, | 221 | { "iPad11,3", "j217ap", 0x1C, 0x8020, "iPad Air 3 (WiFi)" }, |
| 222 | {"AppleTV3,2","j33iap", 0x00, 0x8947 }, | 222 | { "iPad11,4", "j218ap", 0x1E, 0x8020, "iPad Air 3 (Celluar)" }, |
| 223 | {"AppleTV5,3","j42dap", 0x34, 0x7000 }, | 223 | /* Apple TV */ |
| 224 | {"AppleTV6,2","j105aap",0x02, 0x8011 }, | 224 | { "AppleTV2,1", "k66ap", 0x10, 0x8930, "Apple TV 2" }, |
| 225 | { NULL, NULL, -1, -1 } | 225 | { "AppleTV3,1", "j33ap", 0x08, 0x8942, "Apple TV 3" }, |
| 226 | { "AppleTV3,2", "j33iap", 0x00, 0x8947, "Apple TV 3 (2013)" }, | ||
| 227 | { "AppleTV5,3", "j42dap", 0x34, 0x7000, "Apple TV 4" }, | ||
| 228 | { "AppleTV6,2", "j105aap", 0x02, 0x8011, "Apple TV 4K" }, | ||
| 229 | { NULL, NULL, -1, -1, NULL } | ||
| 226 | }; | 230 | }; |
| 227 | 231 | ||
| 228 | #ifndef USE_DUMMY | 232 | #ifndef USE_DUMMY |
