lkml.org 
[lkml]   [2018]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v9 12/12] extcon: axp288: Set USB role where necessary
On 2018년 03월 20일 21:57, Heikki Krogerus wrote:
> From: Hans de Goede <hdegoede@redhat.com>
>
> The AXP288 BC1.2 charger detection / extcon code may seem like a strange
> place to add code to control the USB role-switch on devices with an AXP288,
> but there are 2 reasons to do this inside the axp288 extcon code:
>
> 1) On many devices the USB role is controlled by ACPI AML code, but the AML
> code only switches between the host and none roles, because of Windows
> not really using device mode. To make device mode work we need to toggle
> between the none/device roles based on Vbus presence, and the axp288
> extcon gets interrupts on Vbus insertion / removal.
>
> 2) In order for our BC1.2 charger detection to work properly the role
> mux must be properly set to device mode before we do the detection.
>
> Also note the Kconfig help-text / obsolete depends on USB_PHY which are
> remnants from older never upstreamed code also controlling the mux from
> the axp288 extcon code.
>
> This commit also adds code to get notifications from the INT3496 extcon
> device, which is used on some devices to notify the kernel about id-pin
> changes instead of them being handled through AML code.
>
> This fixes:
> -Device mode not working on most CHT devices with an AXP288
> -Host mode not working on devices with an INT3496 ACPI device
> -Charger-type misdetection (always SDP) on devices with an INT3496 when the
> USB role (always) gets initialized as host
>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
> Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
> ---
> Changes in v4:
> -Add Andy's Reviewed-by
>
> Changes in v2:
> -Add depends on X86 to Kconfig (the AXP288 PMIC is only used on X86)
> -Use new acpi_dev_get_first_match_name() helper to get the INT3496 device-name
> -Add Heikki's Reviewed-by
> ---
> drivers/extcon/Kconfig | 3 +-
> drivers/extcon/extcon-axp288.c | 176 +++++++++++++++++++++++++++++++++++++++--
> 2 files changed, 170 insertions(+), 9 deletions(-)

Acked-by: Chanwoo Choi <cw00.choi@samsung.com>

[snip]

--
Best Regards,
Chanwoo Choi
Samsung Electronics

\
 
 \ /
  Last update: 2018-03-23 00:54    [W:0.112 / U:1.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site