13 Sep, 2016

2 commits

  • This patch alters the renamed extcon API to set the state of the external
    connectors instead of deprecated extcon_set_cable_state_().

    Because the patch[1] modifies the function name to maintain the function
    naming pattern.
    - extcon_set_cable_state_() -> extcon_set_state_sync()
    - extcon_get_cable_state_() -> extcon_get_state()

    [1] https://lkml.org/lkml/2016/8/4/729
    - extcon: Rename the extcon_set/get_state() to maintain the function naming pattern

    Signed-off-by: Chanwoo Choi
    Acked-by: Charles Keepax
    Acked-by: Roger Quadros

    Chanwoo Choi
     
  • This patch fixes the spelling mistake in dev_dbg messages.

    Signed-off-by: Colin Ian King
    [cw00.choi: Modify the patch title/description]
    Signed-off-by: Chanwoo Choi

    Colin Ian King
     

16 Oct, 2015

1 commit

  • 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
    [ckeepax: For the Arizona changes]
    Acked-by: Charles Keepax
    Reviewed-by: Roger Quadros

    Chanwoo Choi
     

29 Sep, 2015

1 commit

  • Use resource managed functions devm_usb_get_phy and
    devm_gpio_request to make error path simpler. To be
    compatible the change, various gotos are replaced
    with direct returns and unnecessary label
    gpio_req_failed is dropped.

    Also, remove function axp288_extcon_remove as it is
    now redundant.

    Signed-off-by: Vaishali Thakkar
    Signed-off-by: Chanwoo Choi

    Vaishali Thakkar
     

13 Jun, 2015

1 commit

  • This patch just redefine the unique id of supported external connectors without
    'enum extcon' type. Because unique id would be used on devictree file(*.dts) to
    indicate the specific external connectors like key number of input framework.
    So, I have the plan to move this definitions to following header file which
    includes the unique id of supported external connectors.
    - include/dt-bindings/extcon/extcon.h

    Fixes: 2a9de9c0f08d ("extcon: Use the unique id for external connector instead of string")
    Signed-off-by: Chanwoo Choi
    Signed-off-by: Greg Kroah-Hartman

    Chanwoo Choi
     

22 May, 2015

1 commit

  • This patch uses the unique id to identify the type of external connector instead
    of string name. The string name have the many potential issues. So, this patch
    defines the 'extcon' enumeration which includes all supported external connector
    on EXTCON subsystem. If new external connector is necessary, the unique id of
    new connector have to be added in 'extcon' enumeration. There are current
    supported external connector in 'enum extcon' as following:

    enum extcon {
    EXTCON_NONE = 0x0,

    /* USB external connector */
    EXTCON_USB = 0x1,
    EXTCON_USB_HOST = 0x2,

    /* Charger external connector */
    EXTCON_TA = 0x10,
    EXTCON_FAST_CHARGER = 0x11,
    EXTCON_SLOW_CHARGER = 0x12,
    EXTCON_CHARGE_DOWNSTREAM = 0x13,

    /* Audio and video external connector */
    EXTCON_LINE_IN = 0x20,
    EXTCON_LINE_OUT = 0x21,
    EXTCON_MICROPHONE = 0x22,
    EXTCON_HEADPHONE = 0x23,

    EXTCON_HDMI = 0x30,
    EXTCON_MHL = 0x31,
    EXTCON_DVI = 0x32,
    EXTCON_VGA = 0x33,
    EXTCON_SPDIF_IN = 0x34,
    EXTCON_SPDIF_OUT = 0x35,
    EXTCON_VIDEO_IN = 0x36,
    EXTCON_VIDEO_OUT = 0x37,

    /* Miscellaneous external connector */
    EXTCON_DOCK = 0x50,
    EXTCON_JIG = 0x51,
    EXTCON_MECHANICAL = 0x52,

    EXTCON_END,
    };

    For example in extcon-arizona.c:
    To use unique id removes the potential issue about handling
    the inconsistent name of external connector with string.
    - Previously, use the string to register the type of arizona jack connector
    static const char *arizona_cable[] = {
    "Mechanical",
    "Microphone",
    "Headphone",
    "Line-out",
    };
    - Newly, use the unique id to register the type of arizona jack connector
    static const enum extcon arizona_cable[] = {
    EXTCON_MECHANICAL,
    EXTCON_MICROPHONE,
    EXTCON_HEADPHONE,
    EXTCON_LINE_OUT,

    EXTCON_NONE,
    };

    And this patch modify the prototype of extcon_{get|set}_cable_state_() which
    uses the 'enum extcon id' instead of 'cable_index'. Because although one more
    extcon drivers support USB cable, each extcon driver might has the differnt
    'cable_index' for USB cable. All extcon drivers can use the unique id number
    for same external connector with modified extcon_{get|set}_cable_state_().

    - Previously, use 'cable_index' on these functions:
    extcon_get_cable_state_(struct extcon_dev*, int cable_index)
    extcon_set_cable_state_(struct extcon_dev*, int cable_index, bool state)

    -Newly, use 'enum extcon id' on these functions:
    extcon_get_cable_state_(struct extcon_dev*, enum extcon id)
    extcon_set_cable_state_(struct extcon_dev*, enum extcon id, bool state)

    Cc: Arnd Bergmann
    Cc: Felipe Balbi
    Signed-off-by: Chanwoo Choi
    Acked-by: Roger Quadros
    Acked-by: Charles Keepax
    Acked-by: Ramakrishna Pallala
    Reviewed-by: Krzysztof Kozlowski
    [arnd: Report the build break about drivers/usb/phy/phy-tahvo.c after using the
    unique id for external connector insteadf of string]
    Reported-by: Arnd Bergmann
    [dan.carpenter: Report the build warning of extcon_{set|get}_cable_state_()]
    Reported-by: Dan Carpenter

    Chanwoo Choi
     

19 May, 2015

1 commit

  • This patch adds the extcon support for AXP288 PMIC which
    has the BC1.2 charger detection capability. Additionally
    it also adds the USB mux switching support b/w SOC and PMIC
    based on GPIO control.

    Signed-off-by: Ramakrishna Pallala
    Acked-by: Lee Jones
    [cw00.choi: Modify the log message to keep the consistent log message pattern]
    Signed-off-by: Chanwoo Choi

    Ramakrishna Pallala