Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

extcon: Modify the id and name of external connector

This patch modifies the id and name of external connector with the
additional prefix to clarify both attribute and meaning of external
connector as following:
- EXTCON_CHG_* mean the charger connector.
- EXTCON_JACK_* mean the jack connector.
- EXTCON_DISP_* mean the display port connector.

Following table show the new name of external connector with old name:
--------------------------------------------------
Old extcon name | New extcon name |
--------------------------------------------------
EXTCON_TA | EXTCON_CHG_USB_DCP |
EXTCON_CHARGE_DOWNSTREAM| EXTCON_CHG_USB_CDP |
EXTCON_FAST_CHARGER | EXTCON_CHG_USB_FAST |
EXTCON_SLOW_CHARGER | EXTCON_CHG_USB_SLOW |
--------------------------------------------------
EXTCON_MICROPHONE | EXTCON_JACK_MICROPHONE |
EXTCON_HEADPHONE | EXTCON_JACK_HEADPHONE |
EXTCON_LINE_IN | EXTCON_JACK_LINE_IN |
EXTCON_LINE_OUT | EXTCON_JACK_LINE_OUT |
EXTCON_VIDEO_IN | EXTCON_JACK_VIDEO_IN |
EXTCON_VIDEO_OUT | EXTCON_JACK_VIDEO_OUT |
EXTCON_SPDIF_IN | EXTCON_JACK_SPDIF_IN |
EXTCON_SPDIF_OUT | EXTCON_JACK_SPDIF_OUT |
--------------------------------------------------
EXTCON_HMDI | EXTCON_DISP_HDMI |
EXTCON_MHL | EXTCON_DISP_MHL |
EXTCON_DVI | EXTCON_DISP_DVI |
EXTCON_VGA | EXTCON_DISP_VGA |
--------------------------------------------------

And, when altering the name of USB charger connector, EXTCON refers to the
"Battery Charging v1.2 Spec and Adopters Agreement"[1] to use the standard
name of USB charging port as following. Following name of USB charging port
are already used in power_supply subsystem. We chan check it on patch[2].
- EXTCON_CHG_USB_SDP /* Standard Downstream Port */
- EXTCON_CHG_USB_DCP /* Dedicated Charging Port */
- EXTCON_CHG_USB_CDP /* Charging Downstream Port */
- EXTCON_CHG_USB_ACA /* Accessory Charger Adapter */

[1] www.usb.org/developers/docs/devclass_docs/BCv1.2_070312.zip
[2] commit 85efc8a18ced ("power_supply: Add types for USB chargers")

Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
[ckeepax: For the Arizona changes]
Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>

+131 -111
+9 -9
drivers/extcon/extcon-arizona.c
··· 137 137 138 138 static const unsigned int arizona_cable[] = { 139 139 EXTCON_MECHANICAL, 140 - EXTCON_MICROPHONE, 141 - EXTCON_HEADPHONE, 142 - EXTCON_LINE_OUT, 140 + EXTCON_JACK_MICROPHONE, 141 + EXTCON_JACK_HEADPHONE, 142 + EXTCON_JACK_LINE_OUT, 143 143 EXTCON_NONE, 144 144 }; 145 145 ··· 600 600 struct arizona_extcon_info *info = data; 601 601 struct arizona *arizona = info->arizona; 602 602 int id_gpio = arizona->pdata.hpdet_id_gpio; 603 - unsigned int report = EXTCON_HEADPHONE; 603 + unsigned int report = EXTCON_JACK_HEADPHONE; 604 604 int ret, reading; 605 605 bool mic = false; 606 606 ··· 645 645 646 646 /* Report high impedence cables as line outputs */ 647 647 if (reading >= 5000) 648 - report = EXTCON_LINE_OUT; 648 + report = EXTCON_JACK_LINE_OUT; 649 649 else 650 - report = EXTCON_HEADPHONE; 650 + report = EXTCON_JACK_HEADPHONE; 651 651 652 652 ret = extcon_set_cable_state_(info->edev, report, true); 653 653 if (ret != 0) ··· 732 732 ARIZONA_ACCDET_MODE_MASK, ARIZONA_ACCDET_MODE_MIC); 733 733 734 734 /* Just report headphone */ 735 - ret = extcon_set_cable_state_(info->edev, EXTCON_HEADPHONE, true); 735 + ret = extcon_set_cable_state_(info->edev, EXTCON_JACK_HEADPHONE, true); 736 736 if (ret != 0) 737 737 dev_err(arizona->dev, "Failed to report headphone: %d\n", ret); 738 738 ··· 789 789 ARIZONA_ACCDET_MODE_MASK, ARIZONA_ACCDET_MODE_MIC); 790 790 791 791 /* Just report headphone */ 792 - ret = extcon_set_cable_state_(info->edev, EXTCON_HEADPHONE, true); 792 + ret = extcon_set_cable_state_(info->edev, EXTCON_JACK_HEADPHONE, true); 793 793 if (ret != 0) 794 794 dev_err(arizona->dev, "Failed to report headphone: %d\n", ret); 795 795 ··· 915 915 arizona_identify_headphone(info); 916 916 917 917 ret = extcon_set_cable_state_(info->edev, 918 - EXTCON_MICROPHONE, true); 918 + EXTCON_JACK_MICROPHONE, true); 919 919 if (ret != 0) 920 920 dev_err(arizona->dev, "Headset report failed: %d\n", 921 921 ret);
+6 -6
drivers/extcon/extcon-axp288.c
··· 102 102 }; 103 103 104 104 static const unsigned int axp288_extcon_cables[] = { 105 - EXTCON_SLOW_CHARGER, 106 - EXTCON_CHARGE_DOWNSTREAM, 107 - EXTCON_FAST_CHARGER, 105 + EXTCON_CHG_USB_SDP, 106 + EXTCON_CHG_USB_CDP, 107 + EXTCON_CHG_USB_DCP, 108 108 EXTCON_NONE, 109 109 }; 110 110 ··· 192 192 dev_dbg(info->dev, "sdp cable is connecetd\n"); 193 193 notify_otg = true; 194 194 notify_charger = true; 195 - cable = EXTCON_SLOW_CHARGER; 195 + cable = EXTCON_CHG_USB_SDP; 196 196 break; 197 197 case DET_STAT_CDP: 198 198 dev_dbg(info->dev, "cdp cable is connecetd\n"); 199 199 notify_otg = true; 200 200 notify_charger = true; 201 - cable = EXTCON_CHARGE_DOWNSTREAM; 201 + cable = EXTCON_CHG_USB_CDP; 202 202 break; 203 203 case DET_STAT_DCP: 204 204 dev_dbg(info->dev, "dcp cable is connecetd\n"); 205 205 notify_charger = true; 206 - cable = EXTCON_FAST_CHARGER; 206 + cable = EXTCON_CHG_USB_DCP; 207 207 break; 208 208 default: 209 209 dev_warn(info->dev,
+9 -8
drivers/extcon/extcon-max14577.c
··· 150 150 151 151 static const unsigned int max14577_extcon_cable[] = { 152 152 EXTCON_USB, 153 - EXTCON_TA, 154 - EXTCON_FAST_CHARGER, 155 - EXTCON_SLOW_CHARGER, 156 - EXTCON_CHARGE_DOWNSTREAM, 153 + EXTCON_CHG_USB_DCP, 154 + EXTCON_CHG_USB_FAST, 155 + EXTCON_CHG_USB_SLOW, 156 + EXTCON_CHG_USB_CDP, 157 157 EXTCON_JIG, 158 158 EXTCON_NONE, 159 159 }; ··· 456 456 extcon_set_cable_state_(info->edev, EXTCON_USB, attached); 457 457 break; 458 458 case MAX14577_CHARGER_TYPE_DEDICATED_CHG: 459 - extcon_set_cable_state_(info->edev, EXTCON_TA, attached); 459 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_DCP, 460 + attached); 460 461 break; 461 462 case MAX14577_CHARGER_TYPE_DOWNSTREAM_PORT: 462 - extcon_set_cable_state_(info->edev, EXTCON_CHARGE_DOWNSTREAM, 463 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_CDP, 463 464 attached); 464 465 break; 465 466 case MAX14577_CHARGER_TYPE_SPECIAL_500MA: 466 - extcon_set_cable_state_(info->edev, EXTCON_SLOW_CHARGER, 467 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_SLOW, 467 468 attached); 468 469 break; 469 470 case MAX14577_CHARGER_TYPE_SPECIAL_1A: 470 - extcon_set_cable_state_(info->edev, EXTCON_FAST_CHARGER, 471 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_FAST, 471 472 attached); 472 473 break; 473 474 case MAX14577_CHARGER_TYPE_NONE:
+17 -15
drivers/extcon/extcon-max77693.c
··· 204 204 static const unsigned int max77693_extcon_cable[] = { 205 205 EXTCON_USB, 206 206 EXTCON_USB_HOST, 207 - EXTCON_TA, 208 - EXTCON_FAST_CHARGER, 209 - EXTCON_SLOW_CHARGER, 210 - EXTCON_CHARGE_DOWNSTREAM, 211 - EXTCON_MHL, 207 + EXTCON_CHG_USB_DCP, 208 + EXTCON_CHG_USB_FAST, 209 + EXTCON_CHG_USB_SLOW, 210 + EXTCON_CHG_USB_CDP, 211 + EXTCON_DISP_MHL, 212 212 EXTCON_JIG, 213 213 EXTCON_DOCK, 214 214 EXTCON_NONE, ··· 505 505 return ret; 506 506 507 507 extcon_set_cable_state_(info->edev, EXTCON_DOCK, attached); 508 - extcon_set_cable_state_(info->edev, EXTCON_MHL, attached); 508 + extcon_set_cable_state_(info->edev, EXTCON_DISP_MHL, attached); 509 509 goto out; 510 510 case MAX77693_MUIC_ADC_AUDIO_MODE_REMOTE: /* Dock-Desk */ 511 511 dock_id = EXTCON_DOCK; ··· 605 605 case MAX77693_MUIC_GND_MHL: 606 606 case MAX77693_MUIC_GND_MHL_VB: 607 607 /* MHL or MHL with USB/TA cable */ 608 - extcon_set_cable_state_(info->edev, EXTCON_MHL, attached); 608 + extcon_set_cable_state_(info->edev, EXTCON_DISP_MHL, attached); 609 609 break; 610 610 default: 611 611 dev_err(info->dev, "failed to detect %s cable of gnd type\n", ··· 801 801 * - Support charging through micro-usb port without 802 802 * data connection 803 803 */ 804 - extcon_set_cable_state_(info->edev, EXTCON_TA, attached); 804 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_DCP, 805 + attached); 805 806 if (!cable_attached) 806 - extcon_set_cable_state_(info->edev, EXTCON_MHL, 807 - cable_attached); 807 + extcon_set_cable_state_(info->edev, 808 + EXTCON_DISP_MHL, cable_attached); 808 809 break; 809 810 } 810 811 ··· 863 862 864 863 extcon_set_cable_state_(info->edev, EXTCON_DOCK, 865 864 attached); 866 - extcon_set_cable_state_(info->edev, EXTCON_MHL, 865 + extcon_set_cable_state_(info->edev, EXTCON_DISP_MHL, 867 866 attached); 868 867 break; 869 868 } ··· 902 901 break; 903 902 case MAX77693_CHARGER_TYPE_DEDICATED_CHG: 904 903 /* Only TA cable */ 905 - extcon_set_cable_state_(info->edev, EXTCON_TA, attached); 904 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_DCP, 905 + attached); 906 906 break; 907 907 } 908 908 break; 909 909 case MAX77693_CHARGER_TYPE_DOWNSTREAM_PORT: 910 - extcon_set_cable_state_(info->edev, EXTCON_CHARGE_DOWNSTREAM, 910 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_CDP, 911 911 attached); 912 912 break; 913 913 case MAX77693_CHARGER_TYPE_APPLE_500MA: 914 - extcon_set_cable_state_(info->edev, EXTCON_SLOW_CHARGER, 914 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_SLOW, 915 915 attached); 916 916 break; 917 917 case MAX77693_CHARGER_TYPE_APPLE_1A_2A: 918 - extcon_set_cable_state_(info->edev, EXTCON_FAST_CHARGER, 918 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_FAST, 919 919 attached); 920 920 break; 921 921 case MAX77693_CHARGER_TYPE_DEAD_BATTERY:
+15 -12
drivers/extcon/extcon-max77843.c
··· 122 122 static const unsigned int max77843_extcon_cable[] = { 123 123 EXTCON_USB, 124 124 EXTCON_USB_HOST, 125 - EXTCON_TA, 126 - EXTCON_CHARGE_DOWNSTREAM, 127 - EXTCON_FAST_CHARGER, 128 - EXTCON_SLOW_CHARGER, 129 - EXTCON_MHL, 125 + EXTCON_CHG_USB_DCP, 126 + EXTCON_CHG_USB_CDP, 127 + EXTCON_CHG_USB_FAST, 128 + EXTCON_CHG_USB_SLOW, 129 + EXTCON_DISP_MHL, 130 130 EXTCON_JIG, 131 131 EXTCON_NONE, 132 132 }; ··· 355 355 if (ret < 0) 356 356 return ret; 357 357 358 - extcon_set_cable_state_(info->edev, EXTCON_MHL, attached); 358 + extcon_set_cable_state_(info->edev, EXTCON_DISP_MHL, attached); 359 359 break; 360 360 default: 361 361 dev_err(info->dev, "failed to detect %s accessory(gnd:0x%x)\n", ··· 494 494 if (ret < 0) 495 495 return ret; 496 496 497 - extcon_set_cable_state_(info->edev, EXTCON_CHARGE_DOWNSTREAM, 497 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_CDP, 498 498 attached); 499 499 break; 500 500 case MAX77843_MUIC_CHG_DEDICATED: ··· 504 504 if (ret < 0) 505 505 return ret; 506 506 507 - extcon_set_cable_state_(info->edev, EXTCON_TA, attached); 507 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_DCP, 508 + attached); 508 509 break; 509 510 case MAX77843_MUIC_CHG_SPECIAL_500MA: 510 511 ret = max77843_muic_set_path(info, ··· 514 513 if (ret < 0) 515 514 return ret; 516 515 517 - extcon_set_cable_state_(info->edev, EXTCON_SLOW_CHARGER, 516 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_SLOW, 518 517 attached); 519 518 break; 520 519 case MAX77843_MUIC_CHG_SPECIAL_1A: ··· 524 523 if (ret < 0) 525 524 return ret; 526 525 527 - extcon_set_cable_state_(info->edev, EXTCON_FAST_CHARGER, 526 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_FAST, 528 527 attached); 529 528 break; 530 529 case MAX77843_MUIC_CHG_GND: ··· 533 532 534 533 /* Charger cable on MHL accessory is attach or detach */ 535 534 if (gnd_type == MAX77843_MUIC_GND_MHL_VB) 536 - extcon_set_cable_state_(info->edev, EXTCON_TA, true); 535 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_DCP, 536 + true); 537 537 else if (gnd_type == MAX77843_MUIC_GND_MHL) 538 - extcon_set_cable_state_(info->edev, EXTCON_TA, false); 538 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_DCP, 539 + false); 539 540 break; 540 541 case MAX77843_MUIC_CHG_NONE: 541 542 break;
+11 -10
drivers/extcon/extcon-max8997.c
··· 148 148 static const unsigned int max8997_extcon_cable[] = { 149 149 EXTCON_USB, 150 150 EXTCON_USB_HOST, 151 - EXTCON_TA, 152 - EXTCON_FAST_CHARGER, 153 - EXTCON_SLOW_CHARGER, 154 - EXTCON_CHARGE_DOWNSTREAM, 155 - EXTCON_MHL, 151 + EXTCON_CHG_USB_DCP, 152 + EXTCON_CHG_USB_FAST, 153 + EXTCON_CHG_USB_SLOW, 154 + EXTCON_CHG_USB_CDP, 155 + EXTCON_DISP_MHL, 156 156 EXTCON_DOCK, 157 157 EXTCON_JIG, 158 158 EXTCON_NONE, ··· 403 403 return ret; 404 404 break; 405 405 case MAX8997_MUIC_ADC_MHL: 406 - extcon_set_cable_state_(info->edev, EXTCON_MHL, attached); 406 + extcon_set_cable_state_(info->edev, EXTCON_DISP_MHL, attached); 407 407 break; 408 408 case MAX8997_MUIC_ADC_FACTORY_MODE_USB_OFF: 409 409 case MAX8997_MUIC_ADC_FACTORY_MODE_USB_ON: ··· 486 486 } 487 487 break; 488 488 case MAX8997_CHARGER_TYPE_DOWNSTREAM_PORT: 489 - extcon_set_cable_state_(info->edev, EXTCON_CHARGE_DOWNSTREAM, 489 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_CDP, 490 490 attached); 491 491 break; 492 492 case MAX8997_CHARGER_TYPE_DEDICATED_CHG: 493 - extcon_set_cable_state_(info->edev, EXTCON_TA, attached); 493 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_DCP, 494 + attached); 494 495 break; 495 496 case MAX8997_CHARGER_TYPE_500MA: 496 - extcon_set_cable_state_(info->edev, EXTCON_SLOW_CHARGER, 497 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_SLOW, 497 498 attached); 498 499 break; 499 500 case MAX8997_CHARGER_TYPE_1A: 500 - extcon_set_cable_state_(info->edev, EXTCON_FAST_CHARGER, 501 + extcon_set_cable_state_(info->edev, EXTCON_CHG_USB_FAST, 501 502 attached); 502 503 break; 503 504 default:
+2 -2
drivers/extcon/extcon-rt8973a.c
··· 93 93 static const unsigned int rt8973a_extcon_cable[] = { 94 94 EXTCON_USB, 95 95 EXTCON_USB_HOST, 96 - EXTCON_TA, 96 + EXTCON_CHG_USB_DCP, 97 97 EXTCON_JIG, 98 98 EXTCON_NONE, 99 99 }; ··· 333 333 con_sw = DM_DP_SWITCH_USB; 334 334 break; 335 335 case RT8973A_MUIC_ADC_TA: 336 - id = EXTCON_TA; 336 + id = EXTCON_CHG_USB_DCP; 337 337 con_sw = DM_DP_SWITCH_OPEN; 338 338 break; 339 339 case RT8973A_MUIC_ADC_FACTORY_MODE_BOOT_OFF_USB:
+2 -2
drivers/extcon/extcon-sm5502.c
··· 95 95 static const unsigned int sm5502_extcon_cable[] = { 96 96 EXTCON_USB, 97 97 EXTCON_USB_HOST, 98 - EXTCON_TA, 98 + EXTCON_CHG_USB_DCP, 99 99 EXTCON_NONE, 100 100 }; 101 101 ··· 389 389 vbus_sw = VBUSIN_SWITCH_VBUSOUT_WITH_USB; 390 390 break; 391 391 case SM5502_MUIC_ADC_OPEN_TA: 392 - id = EXTCON_TA; 392 + id = EXTCON_CHG_USB_DCP; 393 393 con_sw = DM_DP_SWITCH_OPEN; 394 394 vbus_sw = VBUSIN_SWITCH_VBUSOUT; 395 395 break;
+28 -25
drivers/extcon/extcon.c
··· 39 39 #define CABLE_NAME_MAX 30 40 40 41 41 static const char *extcon_name[] = { 42 - [EXTCON_NONE] = "NONE", 42 + [EXTCON_NONE] = "NONE", 43 43 44 44 /* USB external connector */ 45 - [EXTCON_USB] = "USB", 46 - [EXTCON_USB_HOST] = "USB-HOST", 45 + [EXTCON_USB] = "USB", 46 + [EXTCON_USB_HOST] = "USB-HOST", 47 47 48 - /* Charger external connector */ 49 - [EXTCON_TA] = "TA", 50 - [EXTCON_FAST_CHARGER] = "FAST-CHARGER", 51 - [EXTCON_SLOW_CHARGER] = "SLOW-CHARGER", 52 - [EXTCON_CHARGE_DOWNSTREAM] = "CHARGE-DOWNSTREAM", 48 + /* Charging external connector */ 49 + [EXTCON_CHG_USB_SDP] = "SDP", 50 + [EXTCON_CHG_USB_DCP] = "DCP", 51 + [EXTCON_CHG_USB_CDP] = "CDP", 52 + [EXTCON_CHG_USB_ACA] = "ACA", 53 + [EXTCON_CHG_USB_FAST] = "FAST-CHARGER", 54 + [EXTCON_CHG_USB_SLOW] = "SLOW-CHARGER", 53 55 54 - /* Audio/Video external connector */ 55 - [EXTCON_LINE_IN] = "LINE-IN", 56 - [EXTCON_LINE_OUT] = "LINE-OUT", 57 - [EXTCON_MICROPHONE] = "MICROPHONE", 58 - [EXTCON_HEADPHONE] = "HEADPHONE", 56 + /* Jack external connector */ 57 + [EXTCON_JACK_MICROPHONE] = "MICROPHONE", 58 + [EXTCON_JACK_HEADPHONE] = "HEADPHONE", 59 + [EXTCON_JACK_LINE_IN] = "LINE-IN", 60 + [EXTCON_JACK_LINE_OUT] = "LINE-OUT", 61 + [EXTCON_JACK_VIDEO_IN] = "VIDEO-IN", 62 + [EXTCON_JACK_VIDEO_OUT] = "VIDEO-OUT", 63 + [EXTCON_JACK_SPDIF_IN] = "SPDIF-IN", 64 + [EXTCON_JACK_SPDIF_OUT] = "SPDIF-OUT", 59 65 60 - [EXTCON_HDMI] = "HDMI", 61 - [EXTCON_MHL] = "MHL", 62 - [EXTCON_DVI] = "DVI", 63 - [EXTCON_VGA] = "VGA", 64 - [EXTCON_SPDIF_IN] = "SPDIF-IN", 65 - [EXTCON_SPDIF_OUT] = "SPDIF-OUT", 66 - [EXTCON_VIDEO_IN] = "VIDEO-IN", 67 - [EXTCON_VIDEO_OUT] = "VIDEO-OUT", 66 + /* Display external connector */ 67 + [EXTCON_DISP_HDMI] = "HDMI", 68 + [EXTCON_DISP_MHL] = "MHL", 69 + [EXTCON_DISP_DVI] = "DVI", 70 + [EXTCON_DISP_VGA] = "VGA", 68 71 69 - /* Etc external connector */ 70 - [EXTCON_DOCK] = "DOCK", 71 - [EXTCON_JIG] = "JIG", 72 - [EXTCON_MECHANICAL] = "MECHANICAL", 72 + /* Miscellaneous external connector */ 73 + [EXTCON_DOCK] = "DOCK", 74 + [EXTCON_JIG] = "JIG", 75 + [EXTCON_MECHANICAL] = "MECHANICAL", 73 76 74 77 NULL, 75 78 };
+32 -22
include/linux/extcon.h
··· 31 31 /* 32 32 * Define the unique id of supported external connectors 33 33 */ 34 - #define EXTCON_NONE 0 34 + #define EXTCON_NONE 0 35 35 36 - #define EXTCON_USB 1 /* USB connector */ 37 - #define EXTCON_USB_HOST 2 36 + /* USB external connector */ 37 + #define EXTCON_USB 1 38 + #define EXTCON_USB_HOST 2 38 39 39 - #define EXTCON_TA 3 /* Charger connector */ 40 - #define EXTCON_FAST_CHARGER 4 41 - #define EXTCON_SLOW_CHARGER 5 42 - #define EXTCON_CHARGE_DOWNSTREAM 6 40 + /* Charging external connector */ 41 + #define EXTCON_CHG_USB_SDP 5 /* Standard Downstream Port */ 42 + #define EXTCON_CHG_USB_DCP 6 /* Dedicated Charging Port */ 43 + #define EXTCON_CHG_USB_CDP 7 /* Charging Downstream Port */ 44 + #define EXTCON_CHG_USB_ACA 8 /* Accessory Charger Adapter */ 45 + #define EXTCON_CHG_USB_FAST 9 46 + #define EXTCON_CHG_USB_SLOW 10 43 47 44 - #define EXTCON_LINE_IN 7 /* Audio/Video connector */ 45 - #define EXTCON_LINE_OUT 8 46 - #define EXTCON_MICROPHONE 9 47 - #define EXTCON_HEADPHONE 10 48 - #define EXTCON_HDMI 11 49 - #define EXTCON_MHL 12 50 - #define EXTCON_DVI 13 51 - #define EXTCON_VGA 14 52 - #define EXTCON_SPDIF_IN 15 53 - #define EXTCON_SPDIF_OUT 16 54 - #define EXTCON_VIDEO_IN 17 55 - #define EXTCON_VIDEO_OUT 18 48 + /* Jack external connector */ 49 + #define EXTCON_JACK_MICROPHONE 20 50 + #define EXTCON_JACK_HEADPHONE 21 51 + #define EXTCON_JACK_LINE_IN 22 52 + #define EXTCON_JACK_LINE_OUT 23 53 + #define EXTCON_JACK_VIDEO_IN 24 54 + #define EXTCON_JACK_VIDEO_OUT 25 55 + #define EXTCON_JACK_SPDIF_IN 26 /* Sony Philips Digital InterFace */ 56 + #define EXTCON_JACK_SPDIF_OUT 27 56 57 57 - #define EXTCON_DOCK 19 /* Misc connector */ 58 - #define EXTCON_JIG 20 59 - #define EXTCON_MECHANICAL 21 58 + /* Display external connector */ 59 + #define EXTCON_DISP_HDMI 40 /* High-Definition Multimedia Interface */ 60 + #define EXTCON_DISP_MHL 41 /* Mobile High-Definition Link */ 61 + #define EXTCON_DISP_DVI 42 /* Digital Visual Interface */ 62 + #define EXTCON_DISP_VGA 43 /* Video Graphics Array */ 63 + 64 + /* Miscellaneous external connector */ 65 + #define EXTCON_DOCK 60 66 + #define EXTCON_JIG 61 67 + #define EXTCON_MECHANICAL 62 68 + 69 + #define EXTCON_NUM 63 60 70 61 71 struct extcon_cable; 62 72