Update extcon next for v6.7

Detailed description for this pull request:
 - Add new Realtek DHC(Digital Home Hub) RTD SoC external connector driver
 : Detect USB Type C cable detection for USB and USB_HOST cable
   and support USB Type-C connector class. The extcon-rtk-type-c.c driver
   supports the following Realtek RTD SoC:
   - realtek,rtd1295-type-c
   - realtek,rtd1312c-type-c
   - realtek,rtd1315e-type-c
   - realtek,rtd1319-type-c
   - realtek,rtd1319d-type-c
   - realtek,rtd1395-type-c
   - realtek,rtd1619-type-c
   - realtek,rtd1619b-type-c
 
 - Add device-tree compatible string for extcon-max77693 and extcon-77843.c.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEsSpuqBtbWtRe4rLGnM3fLN7rz1MFAmU6dHgACgkQnM3fLN7r
 z1O6mRAAuUi1aAAEu8pY9b6ijYdb8InIdl+0SLHdSqHp0BGHt0bfjCaJIKK0aWhE
 girPQpWPVJ/6ZzKBWQUBySfKqOgwaDSt4KIj9VrIqgNLbgmZ/C5I+uEWr3/GvM8x
 rtAIL5IrFzZygJlrznGr2ahk5CrrkD23d8pZhAkHKCZWgOqXj+kzpmbrOJ3KnsOD
 uEYymvQbZ9f/K+6L1PoPn36f27h5cQoqRW3z24zktjvCIE6/FsRx2SaoeOlNqmfn
 h1lWkniJVZ80FDmb7UdPWArVs67s59mGOAkrg6NQWO6fxw8OqMDLvrcDGdnldbW8
 IBHE3qe38I1dSwcAjCLQHPMXRgVqdx4A1JKgZUXW8VzCPl9kw96Yreofcis85YlU
 5c5PWGfuUOQNTudWmBNDEv6/XZyWV9k8oUtxARUS/IN8ro/k4V9BCfv85TmS+Fam
 voHZZxKLmvgP0tHeIyGrGwLpT22h9l4BV9J3qZ5zcr7N4h21muJx0/5/+LU6p3SG
 /L9S9FKPkPfB/ai1lAMRk+4XzblcWKBf2CISaibSXqBtAFRXYOrr0W8qOE1o4fJH
 c25PX+zSD87VnWJSKMYGCl9ewBZBgaw2dkvoCm+Vkl4ZDz9FBvs7H0S+1masaFhr
 vrb9rVUrYSs2/ld7QxeRkq1aLUPvei3NRgs+/J4vDTWUlXXXeUY=
 =qPpi
 -----END PGP SIGNATURE-----

Merge tag 'extcon-next-for-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon into char-misc-next

Chanwoo writes:

Update extcon next for v6.7

Detailed description for this pull request:
- Add new Realtek DHC(Digital Home Hub) RTD SoC external connector driver
: Detect USB Type C cable detection for USB and USB_HOST cable
  and support USB Type-C connector class. The extcon-rtk-type-c.c driver
  supports the following Realtek RTD SoC:
  - realtek,rtd1295-type-c
  - realtek,rtd1312c-type-c
  - realtek,rtd1315e-type-c
  - realtek,rtd1319-type-c
  - realtek,rtd1319d-type-c
  - realtek,rtd1395-type-c
  - realtek,rtd1619-type-c
  - realtek,rtd1619b-type-c

- Add device-tree compatible string for extcon-max77693 and extcon-77843.c.

* tag 'extcon-next-for-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon:
  extcon: realtek: add the error handler for nvmem_cell_read
  extcon: max77843: add device-tree compatible string
  extcon: max77693: add device-tree compatible string
  dt-bindings: usb: Add Realtek DHC RTD SoC Type-C
  extcon: add Realtek DHC RTD SoC Type-C driver
This commit is contained in:
Greg Kroah-Hartman 2023-10-27 11:37:12 +02:00
commit 5ab1a0474c
6 changed files with 1902 additions and 0 deletions

View File

@ -0,0 +1,82 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright 2023 Realtek Semiconductor Corporation
%YAML 1.2
---
$id: http://devicetree.org/schemas/usb/realtek,rtd-type-c.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Realtek DHC RTD SoCs USB Type-C Connector detection
maintainers:
- Stanley Chang <stanley_chang@realtek.com>
description:
Realtek digital home center (DHC) RTD series SoCs include a type c module.
This module is able to detect the state of type c connector.
properties:
compatible:
enum:
- realtek,rtd1295-type-c
- realtek,rtd1312c-type-c
- realtek,rtd1315e-type-c
- realtek,rtd1319-type-c
- realtek,rtd1319d-type-c
- realtek,rtd1395-type-c
- realtek,rtd1619-type-c
- realtek,rtd1619b-type-c
reg:
maxItems: 1
interrupts:
maxItems: 1
nvmem-cell-names:
items:
- const: usb-cal
nvmem-cells:
maxItems: 1
description:
The phandle to nvmem cell that contains the trimming data.
The type c parameter trimming data specified via efuse.
If unspecified, default value is used.
realtek,rd-ctrl-gpios:
description: The gpio node to control external Rd on board.
maxItems: 1
connector:
$ref: /schemas/connector/usb-connector.yaml#
description: Properties for usb c connector.
type: object
required:
- compatible
- reg
- interrupts
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
type-c@7220 {
compatible = "realtek,rtd1619b-type-c";
reg = <0x7220 0x20>;
interrupts = <0 60 IRQ_TYPE_LEVEL_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&usb_cc1_pins>, <&usb_cc2_pins>;
nvmem-cells = <&otp_usb_cal>;
nvmem-cell-names = "usb-cal";
connector {
compatible = "usb-c-connector";
label = "USB-C";
data-role = "dual";
power-role = "dual";
};
};

View File

@ -191,4 +191,15 @@ config EXTCON_USBC_TUSB320
Say Y here to enable support for USB Type C cable detection extcon Say Y here to enable support for USB Type C cable detection extcon
support using a TUSB320. support using a TUSB320.
config EXTCON_RTK_TYPE_C
tristate "Realtek RTD SoC extcon Type-C Driver"
depends on ARCH_REALTEK || COMPILE_TEST
depends on TYPEC
select USB_COMMON
help
Say Y here to enable extcon support for USB Type C cable detection
when using the Realtek RTD SoC USB Type-C port.
The DHC (Digital Home Hub) RTD series SoC contains a type c module.
This driver will detect the status of the type-c port.
endif endif

View File

@ -25,3 +25,4 @@ obj-$(CONFIG_EXTCON_SM5502) += extcon-sm5502.o
obj-$(CONFIG_EXTCON_USB_GPIO) += extcon-usb-gpio.o obj-$(CONFIG_EXTCON_USB_GPIO) += extcon-usb-gpio.o
obj-$(CONFIG_EXTCON_USBC_CROS_EC) += extcon-usbc-cros-ec.o obj-$(CONFIG_EXTCON_USBC_CROS_EC) += extcon-usbc-cros-ec.o
obj-$(CONFIG_EXTCON_USBC_TUSB320) += extcon-usbc-tusb320.o obj-$(CONFIG_EXTCON_USBC_TUSB320) += extcon-usbc-tusb320.o
obj-$(CONFIG_EXTCON_RTK_TYPE_C) += extcon-rtk-type-c.o

View File

@ -1258,9 +1258,16 @@ static int max77693_muic_probe(struct platform_device *pdev)
return ret; return ret;
} }
static const struct of_device_id of_max77693_muic_dt_match[] = {
{ .compatible = "maxim,max77693-muic", },
{ /* sentinel */ },
};
MODULE_DEVICE_TABLE(of, of_max77693_muic_dt_match);
static struct platform_driver max77693_muic_driver = { static struct platform_driver max77693_muic_driver = {
.driver = { .driver = {
.name = DEV_NAME, .name = DEV_NAME,
.of_match_table = of_max77693_muic_dt_match,
}, },
.probe = max77693_muic_probe, .probe = max77693_muic_probe,
}; };

View File

@ -946,9 +946,16 @@ static const struct platform_device_id max77843_muic_id[] = {
}; };
MODULE_DEVICE_TABLE(platform, max77843_muic_id); MODULE_DEVICE_TABLE(platform, max77843_muic_id);
static const struct of_device_id of_max77843_muic_dt_match[] = {
{ .compatible = "maxim,max77843-muic", },
{ /* sentinel */ },
};
MODULE_DEVICE_TABLE(of, of_max77843_muic_dt_match);
static struct platform_driver max77843_muic_driver = { static struct platform_driver max77843_muic_driver = {
.driver = { .driver = {
.name = "max77843-muic", .name = "max77843-muic",
.of_match_table = of_max77843_muic_dt_match,
}, },
.probe = max77843_muic_probe, .probe = max77843_muic_probe,
.remove = max77843_muic_remove, .remove = max77843_muic_remove,

File diff suppressed because it is too large Load Diff