2020-08-14 03:50:04

by Qiwu Huang

[permalink] [raw]
Subject: [PATCH v8 0/4] add some power supply properties about wireless/wired charging

From: Qiwu Huang <[email protected]>

This patchset aims to provide power supply properties about wireless/wired charging.
"quick_charge_type" reports different types of quick charge based on the charging power;
"tx_adapter" shows" the type of wireless charging adapter;
"signal_strength" shows the coupling level between TX and RX;
"reverse_chg_mode" provides the interface of enabling/disabling wireless reverse charging.

Changes in v8
- Add quick charge type driver in qcom_smbb suggested by GregKH

Changes in v7
- Fix PATCH version error in 0/X email

Changes in v6
- Replace "phones" with "devices" suggested by GregKH
- Add permission statement for "reverse_chg_mode"
- Update description for "reverse_chg_mode" in ABI suggested by GregKH
- Update description for "PING phase" in ABI suggested by GregKH

Changes in v5
- Add details in 0/X email

Changes in v4
- Exclude the patch of "power: supply: supply battery soc with decimal form"
- Fix some typo

Changes in v3
- Add enumederated for quick charge type
- Add enumederated for tx adapter type
- Update the return type and description in ABI

Changes in v2
- modify to capital letters for "power_supply_attrs"
- Update the return type and description in ABI
Qiwu Huang (4):
power: supply: core: add quick charge type property
power: supply: core: add wireless charger adapter type property
power: supply: core: add wireless signal strength property
power: supply: core: property to control reverse charge

Documentation/ABI/testing/sysfs-class-power | 85 +++++++++++++++++++++
drivers/power/supply/power_supply_sysfs.c | 4 +
drivers/power/supply/qcom_smbb.c | 51 +++++++++++++
include/linux/power_supply.h | 35 +++++++++
4 files changed, 175 insertions(+)

--
2.28.0


2020-08-14 03:50:07

by Qiwu Huang

[permalink] [raw]
Subject: [PATCH v8 1/4] power: supply: core: add quick charge type property

From: Qiwu Huang <[email protected]>

Reports the kind of quick charge type based on
different adapter power.

Signed-off-by: Qiwu Huang <[email protected]>
---
Documentation/ABI/testing/sysfs-class-power | 21 +++++++++
drivers/power/supply/power_supply_sysfs.c | 1 +
drivers/power/supply/qcom_smbb.c | 51 +++++++++++++++++++++
include/linux/power_supply.h | 14 ++++++
4 files changed, 87 insertions(+)

diff --git a/Documentation/ABI/testing/sysfs-class-power b/Documentation/ABI/testing/sysfs-class-power
index 216d61a22f1e..dd3773dcf16a 100644
--- a/Documentation/ABI/testing/sysfs-class-power
+++ b/Documentation/ABI/testing/sysfs-class-power
@@ -708,3 +708,24 @@ Description:

Access: Read
Valid values: 1-31
+
+What: /sys/class/power_supply/<supply_name>/quick_charge_type
+Date: Jul 2020
+Contact: Fei Jiang <[email protected]>
+ Description:
+ Reports the kind of quick charge type based on different adapter power.
+ Different quick charge type represent different charging power.
+ QUICK_CHARGE_NORMAL : Charging Power <= 10W
+ QUICK_CHARGE_FAST : 10W < Charging Power <= 20W
+ QUICK_CHARGE_FLASH : 20W < Charging Power <= 30W
+ QUICK_CHARGE_TURBE : 30W < Charging Power <= 50W
+ QUICK_CHARGE_SUPER : Charging Power > 50W
+
+ Access: Read-Only
+ Valid values:
+ 0: QUICK_CHARGE_NORMAL,
+ 1: QUICK_CHARGE_FAST,
+ 2: QUICK_CHARGE_FLASH,
+ 3: QUICK_CHARGE_TURBE,
+ 4: QUICK_CHARGE_SUPER.
+
diff --git a/drivers/power/supply/power_supply_sysfs.c b/drivers/power/supply/power_supply_sysfs.c
index bc79560229b5..9554d7907373 100644
--- a/drivers/power/supply/power_supply_sysfs.c
+++ b/drivers/power/supply/power_supply_sysfs.c
@@ -206,6 +206,7 @@ static struct power_supply_attr power_supply_attrs[] = {
POWER_SUPPLY_ATTR(MODEL_NAME),
POWER_SUPPLY_ATTR(MANUFACTURER),
POWER_SUPPLY_ATTR(SERIAL_NUMBER),
+ POWER_SUPPLY_ATTR(QUICK_CHARGE_TYPE),
};

static struct attribute *
diff --git a/drivers/power/supply/qcom_smbb.c b/drivers/power/supply/qcom_smbb.c
index c890e1cec720..afd38cf38832 100644
--- a/drivers/power/supply/qcom_smbb.c
+++ b/drivers/power/supply/qcom_smbb.c
@@ -485,6 +485,53 @@ static const struct smbb_irq {
{ "dc-valid", smbb_dc_valid_handler },
};

+struct quick_charge {
+ enum power_supply_type adap_type;
+ enum power_supply_quick_charge_type adap_cap;
+};
+
+static struct quick_charge adapter_cap[10] = {
+ { POWER_SUPPLY_TYPE_USB, QUICK_CHARGE_NORMAL },
+ { POWER_SUPPLY_TYPE_USB_DCP, QUICK_CHARGE_NORMAL },
+ { POWER_SUPPLY_TYPE_USB_CDP, QUICK_CHARGE_NORMAL },
+ { POWER_SUPPLY_TYPE_USB_ACA, QUICK_CHARGE_NORMAL },
+ { POWER_SUPPLY_TYPE_USB_FLOAT, QUICK_CHARGE_NORMAL },
+ { POWER_SUPPLY_TYPE_USB_PD, QUICK_CHARGE_FAST },
+ { POWER_SUPPLY_TYPE_USB_HVDCP, QUICK_CHARGE_FAST },
+ { POWER_SUPPLY_TYPE_USB_HVDCP_3, QUICK_CHARGE_FAST },
+ { POWER_SUPPLY_TYPE_USB_HVDCP_3P5, QUICK_CHARGE_FAST },
+ {0, 0},
+};
+
+static int get_quick_charge_type(struct smbb_charger *chg)
+{
+ union power_supply_propval prop = {0, };
+ int charger_type, rc;
+ int i = 0;
+
+ rc = power_supply_get_property(chg->bat_psy,
+ POWER_SUPPLY_PROP_STATUS, &prop);
+ if (rc < 0)
+ return rc;
+ if (prop.intval == POWER_SUPPLY_STATUS_DISCHARGING)
+ return 0;
+
+ rc = power_supply_get_property(chg->usb_psy,
+ POWER_SUPPLY_PROP_USB_TYPE, &prop);
+ if (rc < 0)
+ return rc;
+ charger_type = prop.intval;
+
+ while (adapter_cap[i].adap_type != 0) {
+ if (charger_type == adapter_cap[i].adap_type) {
+ return adapter_cap[i].adap_cap;
+ }
+ i++;
+ }
+
+ return 0;
+}
+
static int smbb_usbin_get_property(struct power_supply *psy,
enum power_supply_property psp,
union power_supply_propval *val)
@@ -505,6 +552,9 @@ static int smbb_usbin_get_property(struct power_supply *psy,
case POWER_SUPPLY_PROP_CHARGE_CONTROL_LIMIT_MAX:
val->intval = 2500000;
break;
+ case POWER_SUPPLY_PROP_QUICK_CHARGE_TYPE:
+ val->intval = get_quick_charge_type(chg);
+ break;
default:
rc = -EINVAL;
break;
@@ -695,6 +745,7 @@ static enum power_supply_property smbb_charger_properties[] = {
POWER_SUPPLY_PROP_ONLINE,
POWER_SUPPLY_PROP_CHARGE_CONTROL_LIMIT,
POWER_SUPPLY_PROP_CHARGE_CONTROL_LIMIT_MAX,
+ POWER_SUPPLY_PROP_QUICK_CHARGE_TYPE,
};

static enum power_supply_property smbb_battery_properties[] = {
diff --git a/include/linux/power_supply.h b/include/linux/power_supply.h
index ac1345a48ad0..bd99658c05be 100644
--- a/include/linux/power_supply.h
+++ b/include/linux/power_supply.h
@@ -167,6 +167,7 @@ enum power_supply_property {
POWER_SUPPLY_PROP_MODEL_NAME,
POWER_SUPPLY_PROP_MANUFACTURER,
POWER_SUPPLY_PROP_SERIAL_NUMBER,
+ POWER_SUPPLY_PROP_QUICK_CHARGE_TYPE,
};

enum power_supply_type {
@@ -182,6 +183,10 @@ enum power_supply_type {
POWER_SUPPLY_TYPE_USB_PD, /* Power Delivery Port */
POWER_SUPPLY_TYPE_USB_PD_DRP, /* PD Dual Role Port */
POWER_SUPPLY_TYPE_APPLE_BRICK_ID, /* Apple Charging Method */
+ POWER_SUPPLY_TYPE_USB_HVDCP, /* High Voltage DCP */
+ POWER_SUPPLY_TYPE_USB_HVDCP_3, /* Efficient High Voltage DCP */
+ POWER_SUPPLY_TYPE_USB_HVDCP_3P5, /* Efficient High Voltage DCP */
+ POWER_SUPPLY_TYPE_USB_FLOAT, /* Floating charger */
};

enum power_supply_usb_type {
@@ -197,6 +202,15 @@ enum power_supply_usb_type {
POWER_SUPPLY_USB_TYPE_APPLE_BRICK_ID, /* Apple Charging Method */
};

+enum power_supply_quick_charge_type {
+ QUICK_CHARGE_NORMAL = 0, /* Charging Power <= 10W */
+ QUICK_CHARGE_FAST, /* 10W < Charging Power <= 20W */
+ QUICK_CHARGE_FLASH, /* 20W < Charging Power <= 30W */
+ QUICK_CHARGE_TURBE, /* 30W < Charging Power <= 50W */
+ QUICK_CHARGE_SUPER, /* Charging Power > 50W */
+ QUICK_CHARGE_MAX,
+};
+
enum power_supply_notifier_events {
PSY_EVENT_PROP_CHANGED,
};
--
2.28.0

2020-08-14 03:50:14

by Qiwu Huang

[permalink] [raw]
Subject: [PATCH v8 2/4] power: supply: core: add wireless charger adapter type property

From: Qiwu Huang <[email protected]>

Reports what type of wireless adapter connection is
currently active for the supply.
for example it can show if ADAPTER_PD capable source is attached.

Signed-off-by: Qiwu Huang <[email protected]>
---
Documentation/ABI/testing/sysfs-class-power | 28 +++++++++++++++++++++
drivers/power/supply/power_supply_sysfs.c | 1 +
include/linux/power_supply.h | 19 ++++++++++++++
3 files changed, 48 insertions(+)

diff --git a/Documentation/ABI/testing/sysfs-class-power b/Documentation/ABI/testing/sysfs-class-power
index dd3773dcf16a..03ab449fae8a 100644
--- a/Documentation/ABI/testing/sysfs-class-power
+++ b/Documentation/ABI/testing/sysfs-class-power
@@ -729,3 +729,31 @@ Contact: Fei Jiang <[email protected]>
3: QUICK_CHARGE_TURBE,
4: QUICK_CHARGE_SUPER.

+===== Wireless Charger Properties =====
+What: /sys/class/power_supply/<supply_name>/tx_adapter
+Date: Jul 2020
+Contact: Fei Jiang <[email protected]>
+Description:
+ Reports the type of wireless adapter connection is currently active for
+ the supply, for example it can show if ADAPTER_PD capable source
+ is attached. Expect common wireless adapter type, also increase by
+ some vendor private adapter type(ex. ADAPTER_PD_40W).
+
+ Access: Read-Only
+ Valid values:
+ 0: ADAPTER_NONE,
+ 1: ADAPTER_SDP,
+ 2: ADAPTER_DCP,
+ 3: ADAPTER_CDP,
+ 4: ADAPTER_OCP,
+ 5: ADAPTER_QC2,
+ 6: ADAPTER_QC3,
+ 7: ADAPTER_PD,
+ 8: ADAPTER_AUTH_FAILED,
+ 9: ADAPTER_PRIVATE_QC3,
+ 10: ADAPTER_PRIVATE_PD,
+ 11: ADAPTER_CAR_POWER,
+ 12: ADAPTER_PRIVATE_PD_40W,
+ 13: ADAPTER_VOICE_BOX,
+ 14: ADAPTER_PRIVATE_PD_50W.
+
diff --git a/drivers/power/supply/power_supply_sysfs.c b/drivers/power/supply/power_supply_sysfs.c
index 9554d7907373..f2458e21d02b 100644
--- a/drivers/power/supply/power_supply_sysfs.c
+++ b/drivers/power/supply/power_supply_sysfs.c
@@ -207,6 +207,7 @@ static struct power_supply_attr power_supply_attrs[] = {
POWER_SUPPLY_ATTR(MANUFACTURER),
POWER_SUPPLY_ATTR(SERIAL_NUMBER),
POWER_SUPPLY_ATTR(QUICK_CHARGE_TYPE),
+ POWER_SUPPLY_ATTR(TX_ADAPTER),
};

static struct attribute *
diff --git a/include/linux/power_supply.h b/include/linux/power_supply.h
index bd99658c05be..00254e096a4a 100644
--- a/include/linux/power_supply.h
+++ b/include/linux/power_supply.h
@@ -168,6 +168,7 @@ enum power_supply_property {
POWER_SUPPLY_PROP_MANUFACTURER,
POWER_SUPPLY_PROP_SERIAL_NUMBER,
POWER_SUPPLY_PROP_QUICK_CHARGE_TYPE,
+ POWER_SUPPLY_PROP_TX_ADAPTER,
};

enum power_supply_type {
@@ -211,6 +212,24 @@ enum power_supply_quick_charge_type {
QUICK_CHARGE_MAX,
};

+enum power_supply_tx_adapter_type {
+ ADAPTER_NONE = 0, /* Nothing Attached */
+ ADAPTER_SDP, /* Standard Downstream Port */
+ ADAPTER_CDP, /* Charging Downstream Port */
+ ADAPTER_DCP, /* Dedicated Charging Port */
+ ADAPTER_OCP, /* Other Charging Port */
+ ADAPTER_QC2, /* Qualcomm Charge 2.0 */
+ ADAPTER_QC3, /* Qualcomm Charge 3.0 */
+ ADAPTER_PD, /* Power Delivery Port */
+ ADAPTER_AUTH_FAILED, /* Authenticated Failed Adapter */
+ ADAPTER_PRIVATE_QC3, /* Qualcomm Charge 3.0 with Private Protocol */
+ ADAPTER_PRIVATE_PD, /* PD Adapter with Private Protocol */
+ ADAPTER_CAR_POWER, /* Wireless Car Charger */
+ ADAPTER_PRIVATE_PD_40W, /* 40W PD Adapter with Private Protocol */
+ ADAPTER_VOICE_BOX, /* Voice Box which Support Wireless Charger */
+ ADAPTER_PRIVATE_PD_50W, /* 50W PD Adapter with Private Protocol */
+};
+
enum power_supply_notifier_events {
PSY_EVENT_PROP_CHANGED,
};
--
2.28.0

2020-08-14 03:50:23

by Qiwu Huang

[permalink] [raw]
Subject: [PATCH v8 3/4] power: supply: core: add wireless signal strength property

From: Qiwu Huang <[email protected]>

reports wireless signal strength.
The value show degree of coupling between tx and rx.

Signed-off-by: Qiwu Huang <[email protected]>
---
Documentation/ABI/testing/sysfs-class-power | 22 +++++++++++++++++++++
drivers/power/supply/power_supply_sysfs.c | 1 +
include/linux/power_supply.h | 1 +
3 files changed, 24 insertions(+)

diff --git a/Documentation/ABI/testing/sysfs-class-power b/Documentation/ABI/testing/sysfs-class-power
index 03ab449fae8a..4459b720feb2 100644
--- a/Documentation/ABI/testing/sysfs-class-power
+++ b/Documentation/ABI/testing/sysfs-class-power
@@ -757,3 +757,25 @@ Description:
13: ADAPTER_VOICE_BOX,
14: ADAPTER_PRIVATE_PD_50W.

+What: /sys/class/power_supply/<supply_name>/signal_strength
+Date: Jul 2020
+Contact: Fei Jiang <[email protected]>
+Description:
+ In PING phase, RX transmits a signal strength packet as the
+ first communication packet to instruct the base to keep power
+ signal on.The value reports wireless signal strength and show
+ degree of coupling.
+
+ The Qi Wireless Power Transfer System is published by the
+ Wireless Power Consortium.The ping phase is the necessary stage
+ for matching transmitter and receiver. In this phase,the Power
+ Transmitter executes a Digital Ping, and listens for a response.
+ If the Power Transmitter discovers a Power Receiver, the Power
+ Transmitter may extend the Digital Ping,i.e. maintain the Power
+ Signal at the level of the Digital Ping. This causes the system
+ to proceed to the identification & configuration phase. If the
+ Power Transmitter does not extend the Digital Ping, the system
+ shall revert to the selection phase.
+
+ Access: Read-Only
+ Valid values: 0 - 100
diff --git a/drivers/power/supply/power_supply_sysfs.c b/drivers/power/supply/power_supply_sysfs.c
index f2458e21d02b..e420a453095e 100644
--- a/drivers/power/supply/power_supply_sysfs.c
+++ b/drivers/power/supply/power_supply_sysfs.c
@@ -208,6 +208,7 @@ static struct power_supply_attr power_supply_attrs[] = {
POWER_SUPPLY_ATTR(SERIAL_NUMBER),
POWER_SUPPLY_ATTR(QUICK_CHARGE_TYPE),
POWER_SUPPLY_ATTR(TX_ADAPTER),
+ POWER_SUPPLY_ATTR(SIGNAL_STRENGTH),
};

static struct attribute *
diff --git a/include/linux/power_supply.h b/include/linux/power_supply.h
index 00254e096a4a..747338118fa1 100644
--- a/include/linux/power_supply.h
+++ b/include/linux/power_supply.h
@@ -169,6 +169,7 @@ enum power_supply_property {
POWER_SUPPLY_PROP_SERIAL_NUMBER,
POWER_SUPPLY_PROP_QUICK_CHARGE_TYPE,
POWER_SUPPLY_PROP_TX_ADAPTER,
+ POWER_SUPPLY_PROP_SIGNAL_STRENGTH,
};

enum power_supply_type {
--
2.28.0

2020-08-14 03:53:14

by Qiwu Huang

[permalink] [raw]
Subject: [PATCH v8 4/4] power: supply: core: property to control reverse charge

From: Qiwu Huang <[email protected]>

Interface to control wireless reverse charge.

Signed-off-by: Qiwu Huang <[email protected]>
---
Documentation/ABI/testing/sysfs-class-power | 14 ++++++++++++++
drivers/power/supply/power_supply_sysfs.c | 1 +
include/linux/power_supply.h | 1 +
3 files changed, 16 insertions(+)

diff --git a/Documentation/ABI/testing/sysfs-class-power b/Documentation/ABI/testing/sysfs-class-power
index 4459b720feb2..8840fdf483a7 100644
--- a/Documentation/ABI/testing/sysfs-class-power
+++ b/Documentation/ABI/testing/sysfs-class-power
@@ -779,3 +779,17 @@ Description:

Access: Read-Only
Valid values: 0 - 100
+
+What: /sys/class/power_supply/<supply_name>/reverse_chg_mode
+Date: Jul 2020
+Contact: Fei Jiang <[email protected]>
+Description:
+ Some devices support wireless reverse charge function which
+ charge other devices.The property provider interface to
+ enable/disable wireless reverse charge.If enabled, start TX
+ mode and detect RX. Disabled when timeout or manual setting.
+
+ Access: Read, Write
+ Valid values:
+ - 1: enabled
+ - 0: disabled
diff --git a/drivers/power/supply/power_supply_sysfs.c b/drivers/power/supply/power_supply_sysfs.c
index e420a453095e..81916b6b6ccf 100644
--- a/drivers/power/supply/power_supply_sysfs.c
+++ b/drivers/power/supply/power_supply_sysfs.c
@@ -209,6 +209,7 @@ static struct power_supply_attr power_supply_attrs[] = {
POWER_SUPPLY_ATTR(QUICK_CHARGE_TYPE),
POWER_SUPPLY_ATTR(TX_ADAPTER),
POWER_SUPPLY_ATTR(SIGNAL_STRENGTH),
+ POWER_SUPPLY_ATTR(REVERSE_CHG_MODE),
};

static struct attribute *
diff --git a/include/linux/power_supply.h b/include/linux/power_supply.h
index 747338118fa1..988d3f05ea1c 100644
--- a/include/linux/power_supply.h
+++ b/include/linux/power_supply.h
@@ -170,6 +170,7 @@ enum power_supply_property {
POWER_SUPPLY_PROP_QUICK_CHARGE_TYPE,
POWER_SUPPLY_PROP_TX_ADAPTER,
POWER_SUPPLY_PROP_SIGNAL_STRENGTH,
+ POWER_SUPPLY_PROP_REVERSE_CHG_MODE,
};

enum power_supply_type {
--
2.28.0

2020-08-14 06:10:57

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH v8 1/4] power: supply: core: add quick charge type property

On Fri, Aug 14, 2020 at 11:46:54AM +0800, Qiwu Huang wrote:
> From: Qiwu Huang <[email protected]>
>
> Reports the kind of quick charge type based on
> different adapter power.
>
> Signed-off-by: Qiwu Huang <[email protected]>
> ---
> Documentation/ABI/testing/sysfs-class-power | 21 +++++++++
> drivers/power/supply/power_supply_sysfs.c | 1 +
> drivers/power/supply/qcom_smbb.c | 51 +++++++++++++++++++++
> include/linux/power_supply.h | 14 ++++++
> 4 files changed, 87 insertions(+)

You should also submit your driver that uses these new attributes at the
same time. What happened to that request? Otherwise no one really
knows how these are being used, or if they even are used by anyone.

thanks,

greg k-h

2020-08-18 02:00:46

by Qiwu Huang

[permalink] [raw]
Subject: Re: [PATCH v8 1/4] power: supply: core: add quick charge type property

On Fri, Aug 14, 2020 at 2:09 PM Greg KH <[email protected]> wrote:
>
> On Fri, Aug 14, 2020 at 11:46:54AM +0800, Qiwu Huang wrote:
> > From: Qiwu Huang <[email protected]>
> >
> > Reports the kind of quick charge type based on
> > different adapter power.
> >
> > Signed-off-by: Qiwu Huang <[email protected]>
> > ---
> > Documentation/ABI/testing/sysfs-class-power | 21 +++++++++
> > drivers/power/supply/power_supply_sysfs.c | 1 +
> > drivers/power/supply/qcom_smbb.c | 51 +++++++++++++++++++++
> > include/linux/power_supply.h | 14 ++++++
> > 4 files changed, 87 insertions(+)
>
> You should also submit your driver that uses these new attributes at the
> same time. What happened to that request? Otherwise no one really
> knows how these are being used, or if they even are used by anyone.
>

I don't think I can submit the whole driver because our drivers are
divided into three parts, the first part is in ADSP, the second part
is in kernel and the third part is in Android Hal.This is the second
part.


> thanks,
>
> greg k-h



--
Thanks

Qiwu

2020-08-18 06:10:25

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH v8 1/4] power: supply: core: add quick charge type property

On Tue, Aug 18, 2020 at 09:56:28AM +0800, Qiwu Huang wrote:
> On Fri, Aug 14, 2020 at 2:09 PM Greg KH <[email protected]> wrote:
> >
> > On Fri, Aug 14, 2020 at 11:46:54AM +0800, Qiwu Huang wrote:
> > > From: Qiwu Huang <[email protected]>
> > >
> > > Reports the kind of quick charge type based on
> > > different adapter power.
> > >
> > > Signed-off-by: Qiwu Huang <[email protected]>
> > > ---
> > > Documentation/ABI/testing/sysfs-class-power | 21 +++++++++
> > > drivers/power/supply/power_supply_sysfs.c | 1 +
> > > drivers/power/supply/qcom_smbb.c | 51 +++++++++++++++++++++
> > > include/linux/power_supply.h | 14 ++++++
> > > 4 files changed, 87 insertions(+)
> >
> > You should also submit your driver that uses these new attributes at the
> > same time. What happened to that request? Otherwise no one really
> > knows how these are being used, or if they even are used by anyone.
> >
>
> I don't think I can submit the whole driver because our drivers are
> divided into three parts, the first part is in ADSP, the second part
> is in kernel and the third part is in Android Hal.This is the second
> part.

WHat is "ADSP"?

Just submit your kernel driver code, that's all we care about here.
Userspace code is not anything we can do anything with :)

thanks,

greg k-h

2020-08-24 01:03:56

by Qiwu Huang

[permalink] [raw]
Subject: Re: [PATCH v8 1/4] power: supply: core: add quick charge type property

On Tue, Aug 18, 2020 at 2:07 PM Greg KH <[email protected]> wrote:
>
> On Tue, Aug 18, 2020 at 09:56:28AM +0800, Qiwu Huang wrote:
> > On Fri, Aug 14, 2020 at 2:09 PM Greg KH <[email protected]> wrote:
> > >
> > > On Fri, Aug 14, 2020 at 11:46:54AM +0800, Qiwu Huang wrote:
> > > > From: Qiwu Huang <[email protected]>
> > > >
> > > > Reports the kind of quick charge type based on
> > > > different adapter power.
> > > >
> > > > Signed-off-by: Qiwu Huang <[email protected]>
> > > > ---
> > > > Documentation/ABI/testing/sysfs-class-power | 21 +++++++++
> > > > drivers/power/supply/power_supply_sysfs.c | 1 +
> > > > drivers/power/supply/qcom_smbb.c | 51 +++++++++++++++++++++
> > > > include/linux/power_supply.h | 14 ++++++
> > > > 4 files changed, 87 insertions(+)
> > >
> > > You should also submit your driver that uses these new attributes at the
> > > same time. What happened to that request? Otherwise no one really
> > > knows how these are being used, or if they even are used by anyone.
> > >
> >
> > I don't think I can submit the whole driver because our drivers are
> > divided into three parts, the first part is in ADSP, the second part
> > is in kernel and the third part is in Android Hal.This is the second
> > part.
>
> WHat is "ADSP"?

ADSP: advanced digital signal processor

>
> Just submit your kernel driver code, that's all we care about here.
> Userspace code is not anything we can do anything with :)

If we ported the full driver, we would break the existing driver
structure because we would introduce more Qualcomm code. I think
that's an unreasonable change.

>
> thanks,
>
> greg k-h



--
Thanks

Qiwu

2020-08-24 07:46:58

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH v8 1/4] power: supply: core: add quick charge type property

On Mon, Aug 24, 2020 at 08:54:56AM +0800, Qiwu Huang wrote:
> On Tue, Aug 18, 2020 at 2:07 PM Greg KH <[email protected]> wrote:
> >
> > On Tue, Aug 18, 2020 at 09:56:28AM +0800, Qiwu Huang wrote:
> > > On Fri, Aug 14, 2020 at 2:09 PM Greg KH <[email protected]> wrote:
> > > >
> > > > On Fri, Aug 14, 2020 at 11:46:54AM +0800, Qiwu Huang wrote:
> > > > > From: Qiwu Huang <[email protected]>
> > > > >
> > > > > Reports the kind of quick charge type based on
> > > > > different adapter power.
> > > > >
> > > > > Signed-off-by: Qiwu Huang <[email protected]>
> > > > > ---
> > > > > Documentation/ABI/testing/sysfs-class-power | 21 +++++++++
> > > > > drivers/power/supply/power_supply_sysfs.c | 1 +
> > > > > drivers/power/supply/qcom_smbb.c | 51 +++++++++++++++++++++
> > > > > include/linux/power_supply.h | 14 ++++++
> > > > > 4 files changed, 87 insertions(+)
> > > >
> > > > You should also submit your driver that uses these new attributes at the
> > > > same time. What happened to that request? Otherwise no one really
> > > > knows how these are being used, or if they even are used by anyone.
> > > >
> > >
> > > I don't think I can submit the whole driver because our drivers are
> > > divided into three parts, the first part is in ADSP, the second part
> > > is in kernel and the third part is in Android Hal.This is the second
> > > part.
> >
> > WHat is "ADSP"?
>
> ADSP: advanced digital signal processor

Ok, then just send the kernel driver.

> > Just submit your kernel driver code, that's all we care about here.
> > Userspace code is not anything we can do anything with :)
>
> If we ported the full driver, we would break the existing driver
> structure because we would introduce more Qualcomm code. I think
> that's an unreasonable change.

That doesn't make much sense. You have a working driver for these apis,
just submit it for inclusion, it should never break any existing
drivers, otherwise your code wouldn't work either.

thanks,

greg k-h

2020-08-24 09:01:42

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH v8 1/4] power: supply: core: add quick charge type property

On Mon, Aug 24, 2020 at 04:42:06PM +0800, Qiwu Huang wrote:
> On Mon, Aug 24, 2020 at 3:43 PM Greg KH <[email protected]> wrote:
> >
> > On Mon, Aug 24, 2020 at 08:54:56AM +0800, Qiwu Huang wrote:
> > > On Tue, Aug 18, 2020 at 2:07 PM Greg KH <[email protected]> wrote:
> > > >
> > > > On Tue, Aug 18, 2020 at 09:56:28AM +0800, Qiwu Huang wrote:
> > > > > On Fri, Aug 14, 2020 at 2:09 PM Greg KH <[email protected]> wrote:
> > > > > >
> > > > > > On Fri, Aug 14, 2020 at 11:46:54AM +0800, Qiwu Huang wrote:
> > > > > > > From: Qiwu Huang <[email protected]>
> > > > > > >
> > > > > > > Reports the kind of quick charge type based on
> > > > > > > different adapter power.
> > > > > > >
> > > > > > > Signed-off-by: Qiwu Huang <[email protected]>
> > > > > > > ---
> > > > > > > Documentation/ABI/testing/sysfs-class-power | 21 +++++++++
> > > > > > > drivers/power/supply/power_supply_sysfs.c | 1 +
> > > > > > > drivers/power/supply/qcom_smbb.c | 51 +++++++++++++++++++++
> > > > > > > include/linux/power_supply.h | 14 ++++++
> > > > > > > 4 files changed, 87 insertions(+)
> > > > > >
> > > > > > You should also submit your driver that uses these new attributes at the
> > > > > > same time. What happened to that request? Otherwise no one really
> > > > > > knows how these are being used, or if they even are used by anyone.
> > > > > >
> > > > >
> > > > > I don't think I can submit the whole driver because our drivers are
> > > > > divided into three parts, the first part is in ADSP, the second part
> > > > > is in kernel and the third part is in Android Hal.This is the second
> > > > > part.
> > > >
> > > > WHat is "ADSP"?
> > >
> > > ADSP: advanced digital signal processor
> >
> > Ok, then just send the kernel driver.
> >
> > > > Just submit your kernel driver code, that's all we care about here.
> > > > Userspace code is not anything we can do anything with :)
> > >
> > > If we ported the full driver, we would break the existing driver
> > > structure because we would introduce more Qualcomm code. I think
> > > that's an unreasonable change.
> >
> > That doesn't make much sense. You have a working driver for these apis,
> > just submit it for inclusion, it should never break any existing
> > drivers, otherwise your code wouldn't work either.
>
> We're an Android device, we're working on a Qualcomm based code, and
> from the current code tree, the current code tree is missing the QTI
> Charger code

I don't know what that means, sorry. Just submit your driver, and any
needed dependencies as well. There's no other way to evaluate this api
addition without that, right?

thanks,

greg k-h

2020-08-24 09:47:18

by Qiwu Huang

[permalink] [raw]
Subject: Re: [PATCH v8 1/4] power: supply: core: add quick charge type property

On Mon, Aug 24, 2020 at 3:43 PM Greg KH <[email protected]> wrote:
>
> On Mon, Aug 24, 2020 at 08:54:56AM +0800, Qiwu Huang wrote:
> > On Tue, Aug 18, 2020 at 2:07 PM Greg KH <[email protected]> wrote:
> > >
> > > On Tue, Aug 18, 2020 at 09:56:28AM +0800, Qiwu Huang wrote:
> > > > On Fri, Aug 14, 2020 at 2:09 PM Greg KH <[email protected]> wrote:
> > > > >
> > > > > On Fri, Aug 14, 2020 at 11:46:54AM +0800, Qiwu Huang wrote:
> > > > > > From: Qiwu Huang <[email protected]>
> > > > > >
> > > > > > Reports the kind of quick charge type based on
> > > > > > different adapter power.
> > > > > >
> > > > > > Signed-off-by: Qiwu Huang <[email protected]>
> > > > > > ---
> > > > > > Documentation/ABI/testing/sysfs-class-power | 21 +++++++++
> > > > > > drivers/power/supply/power_supply_sysfs.c | 1 +
> > > > > > drivers/power/supply/qcom_smbb.c | 51 +++++++++++++++++++++
> > > > > > include/linux/power_supply.h | 14 ++++++
> > > > > > 4 files changed, 87 insertions(+)
> > > > >
> > > > > You should also submit your driver that uses these new attributes at the
> > > > > same time. What happened to that request? Otherwise no one really
> > > > > knows how these are being used, or if they even are used by anyone.
> > > > >
> > > >
> > > > I don't think I can submit the whole driver because our drivers are
> > > > divided into three parts, the first part is in ADSP, the second part
> > > > is in kernel and the third part is in Android Hal.This is the second
> > > > part.
> > >
> > > WHat is "ADSP"?
> >
> > ADSP: advanced digital signal processor
>
> Ok, then just send the kernel driver.
>
> > > Just submit your kernel driver code, that's all we care about here.
> > > Userspace code is not anything we can do anything with :)
> >
> > If we ported the full driver, we would break the existing driver
> > structure because we would introduce more Qualcomm code. I think
> > that's an unreasonable change.
>
> That doesn't make much sense. You have a working driver for these apis,
> just submit it for inclusion, it should never break any existing
> drivers, otherwise your code wouldn't work either.

We're an Android device, we're working on a Qualcomm based code, and
from the current code tree, the current code tree is missing the QTI
Charger code

>
> thanks,
>
> greg k-h



--
Thanks

Qiwu

2020-08-25 18:23:43

by Pavel Machek

[permalink] [raw]
Subject: Re: [PATCH v8 1/4] power: supply: core: add quick charge type property

Hi!

> > > > If we ported the full driver, we would break the existing driver
> > > > structure because we would introduce more Qualcomm code. I think
> > > > that's an unreasonable change.
> > >
> > > That doesn't make much sense. You have a working driver for these apis,
> > > just submit it for inclusion, it should never break any existing
> > > drivers, otherwise your code wouldn't work either.
> >
> > We're an Android device, we're working on a Qualcomm based code, and
> > from the current code tree, the current code tree is missing the QTI
> > Charger code
>
> I don't know what that means, sorry. Just submit your driver, and any
> needed dependencies as well. There's no other way to evaluate this api
> addition without that, right?

Actually, there's a way to evaluate the API without the driver... if the API
is pretty obviously unacceptable.

Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html