[GIT PULL] extcon next for 4.2

From: Chanwoo Choi
Date: Tue Jun 02 2015 - 21:31:02 EST


Dear Greg,

This is extcon-next full request for v4.2. I add detailed description of this
pull request on below. Please pull extcon with following updates.

Best Regards,
Chanwoo Choi

The following changes since commit e26081808edadfd257c6c9d81014e3b25e9a6118:

Linux 4.1-rc4 (2015-05-18 10:13:47 -0700)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon.git tags/extcon-next-for-4.2

for you to fetch changes up to f8df88081183bd4d3c461c617c3519445eb85642:

extcon: Remove optional print_name() function pointer of extcon_dev (2015-05-29 19:56:11 +0900)

----------------------------------------------------------------
Update extcon for v4.2

This patchset include the huge update of extcon core and add the new one extcon
driver and fix minor isseu of extcon drivers.

Detailed description for patchset:
1. Update the extcon core.
- Modify the extcon device name on sysfs from device name name to 'extcon[X]'
as following because if same extcon device are included in H/W development board,
the one of the two device driver might be failed on the probe().
: /sys/class/extcon/[device name] -> /sys/class/extcon/extcon[X]

- Use the unique id for external connectors instead of legacy string name.
Previously, extcon used the string name to identify the type of external
connectors. This way have the many potential issues. So, extcon core define the
unique id for each external connectors 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,
...
};

- Update tye prototype of extcon_register_notifier() by using the unique id
(enum extcon) of external connectors.

- Add extcon_get_edev_name() API to get the name of extcon device on extcon
client driver because the name is included in 'struct extcon_dev' and 'struct
extcon_dev' should be handled in only drivers/extcon directory. So. if extcon
client need the name of extcon device, they could use this function.

- Unify the jig/dock and MHL-TA cable name on extcon driver.
: JIG-{USB-ON|USB-OFF|UART-ON|UART-OFF} -> JIG
: Dock-{Smart|Desk|Audio|Card} -> DOCK
: MHL-TA -> TA

- Use the capital letter for the name of all external connectors.
- Remove the optional print_name() function pointer from struct extcon_dev to
maintain the consistent name of extcon device.

2. Add the new extcon-axp288.c extcon driver.
- The extcon-axp288.c driver support for AXP288 PMIC which has the BC1.2
charger detection capability. So this extcon driver can detect the
EXTCON_SLOW_CHARGER, EXTCON_CHARGE_DOWNSTREAM and EXTCON_FAST_CHARGER.

3. Update the extcon-arizona.c driver.
- Add support for selective detection mode when headphone detection.
- Apply HP clamps for WM8280

4. Clean-up the extcon core and drivers.
- Add manufactor information of each extcon device.
- Fix checkpatch warning and minor coding style on extcon.c.c
- Fix build break if GPIOLIB is not enabled on extcon-usb-gpiio.c.
- Set the direction of gpio when calling devm_gpiod_get() on extcon-usb-gpio.c

----------------------------------------------------------------
Chanwoo Choi (14):
extcon: Add manufactor name of each extcon device
extcon: Modify the device name as extcon[X] for sysfs
extcon: Add extcon_get_edev_name() API to get the extcon device name
extcon: Fix the checkpatch warning and minor coding style issue
extcon: arizona: Remove the setting of device name
extcon: Unify the jig cable names on rt8973 and max14577/77693/77843
extcon: Unify the dock device names on max8997/77693
extcon: Alter MHL-TA cable name to TA cable name
extcon: adc-jack: Remove the unneeded num_cables field
extcon: Remove the optional name of extcon device
extcon: Use the unique id for external connector instead of string
extcon: Use capital letter for the name of external connectors
extcon: Update the prototype of extcon_register_notifier() with enum extcon
extcon: Remove optional print_name() function pointer of extcon_dev

Charles Keepax (1):
extcon: arizona: Apply HP clamps correctly for WM8280

Geert Uytterhoeven (1):
extcon: Allow compile test of GPIO consumers if !GPIOLIB

Inha Song (2):
extcon: arizona: Add support for select accessory detect mode when headphone detection
mfd: arizona: Update DT binding to support hpdet channel

Ramakrishna Pallala (1):
extcon: axp288: Add axp288 extcon driver support

Richard Fitzgerald (1):
extcon: arizona: Rename hpdet_ip to make its purpose clearer

Uwe Kleine-KÃnig (1):
extcon: usb-gpio: use flags argument of devm_gpiod_get to set direction

Documentation/devicetree/bindings/mfd/arizona.txt | 6 +
drivers/extcon/Kconfig | 25 +-
drivers/extcon/Makefile | 1 +
drivers/extcon/extcon-adc-jack.c | 13 -
drivers/extcon/extcon-arizona.c | 88 ++---
drivers/extcon/extcon-axp288.c | 381 ++++++++++++++++++++++
drivers/extcon/extcon-gpio.c | 1 -
drivers/extcon/extcon-max14577.c | 60 +---
drivers/extcon/extcon-max77693.c | 140 +++-----
drivers/extcon/extcon-max77843.c | 89 ++---
drivers/extcon/extcon-max8997.c | 64 ++--
drivers/extcon/extcon-palmas.c | 23 +-
drivers/extcon/extcon-rt8973a.c | 55 +---
drivers/extcon/extcon-sm5502.c | 33 +-
drivers/extcon/extcon-usb-gpio.c | 35 +-
drivers/extcon/extcon.c | 316 ++++++++++--------
drivers/usb/phy/phy-tahvo.c | 9 +-
include/dt-bindings/mfd/arizona.h | 4 +
include/linux/extcon.h | 142 ++++----
include/linux/extcon/extcon-adc-jack.h | 5 +-
include/linux/mfd/arizona/pdata.h | 3 +
include/linux/mfd/axp20x.h | 5 +
22 files changed, 885 insertions(+), 613 deletions(-)
create mode 100644 drivers/extcon/extcon-axp288.c
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/