All of lore.kernel.org
 help / color / mirror / Atom feed
From: szuni chen <szunichen@gmail.com>
To: Pavel Machek <pavel@ucw.cz>
Cc: ChiaEn Wu <peterwu.pub@gmail.com>,
	Lee Jones <lee.jones@linaro.org>,
	Daniel Thompson <daniel.thompson@linaro.org>,
	Jingoo Han <jingoohan1@gmail.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Matthias Brugger <matthias.bgg@gmail.com>,
	Sebastian Reichel <sre@kernel.org>,
	Chunfeng Yun <chunfeng.yun@mediatek.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jonathan Cameron <jic23@kernel.org>,
	Lars-Peter Clausen <lars@metafoo.de>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Mark Brown <broonie@kernel.org>,
	Guenter Roeck <linux@roeck-us.net>,
	"Krogerus, Heikki" <heikki.krogerus@linux.intel.com>,
	Helge Deller <deller@gmx.de>,
	Andy Shevchenko <andy.shevchenko@gmail.com>,
	ChiaEn Wu <chiaen_wu@richtek.com>,
	Alice Chen <alice_chen@richtek.com>,
	ChiYuan Huang <cy_huang@richtek.com>,
	dri-devel <dri-devel@lists.freedesktop.org>,
	Linux LED Subsystem <linux-leds@vger.kernel.org>,
	devicetree <devicetree@vger.kernel.org>,
	linux-arm Mailing List <linux-arm-kernel@lists.infradead.org>,
	"moderated list:ARM/Mediatek SoC support" 
	<linux-mediatek@lists.infradead.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Linux PM <linux-pm@vger.kernel.org>,
	USB <linux-usb@vger.kernel.org>,
	linux-iio <linux-iio@vger.kernel.org>,
	"open list:FRAMEBUFFER LAYER" <linux-fbdev@vger.kernel.org>
Subject: Re: [PATCH v6 11/13] leds: rgb: mt6370: Add MediaTek MT6370 current sink type LED Indicator support
Date: Mon, 1 Aug 2022 15:55:04 +0800	[thread overview]
Message-ID: <CA+hk2fakxuWD2kFSW2e6p7sgWF5jrk0gZg3BU6MtFxcxv6g5jQ@mail.gmail.com> (raw)
In-Reply-To: <20220730213913.GJ23307@duo.ucw.cz>

Hi Pavel,
Sorry for resending the mail, I add all reviewers this time.


Pavel Machek <pavel@ucw.cz> 於 2022年7月31日 週日 清晨5:39寫道:
>
> Hi!
>
...

>
> > +config LEDS_MT6370_RGB
> > +     tristate "LED Support for MediaTek MT6370 PMIC"
> > +     depends on MFD_MT6370
> > +     select LINEAR_RANGE
> > +     help
> > +       Say Y here to enable support for MT6370_RGB LED device.
> > +       In MT6370, there are four channel current-sink LED drivers that
> > +       support hardware pattern for constant current, PWM, and breath mode.
>
>
> > +       Isink4 channel can also be used as a CHG_VIN power good  indicator.
>
> That does not really belong here.
>
Should we just remove it, or describe Isink4 in another position?

> > +struct mt6370_priv {
> > +     /* Per LED access lock */
> > +     struct mutex lock;
>
> Do we really need per-led locking?
>
Sorry, maybe the comment is not precise.
The lock is used to prevent LEDs from accessing the HW at the same time.

If I use
/* LED access lock, only one LED can access the HW at the same time */
will it look better?
No, we aren't.
There are six steps tr1, tr2, tf1, tf2, ton, and toff in MT6370 led breath mode.
We parse duration settings from node "hw_pattern" and set them to the registers.

This function is used to generate duration settings from hw_pattern.

The brightness of the six steps mentioned above in breath mode is
limited to the node "brightness".
The target brightness of tr1 and tf1 is 25% of node "brightness", and
they are automatically set by HW.

> > +static int mt6370_init_led_properties(struct mt6370_led *led,
> > +                                   struct led_init_data *init_data)
> > +{
> > +     struct mt6370_priv *priv = led->priv;
> > +     struct device *dev = priv->dev;
> > +     struct led_classdev *lcdev;
> > +     struct fwnode_handle *child;
> > +     enum mt6370_led_ranges sel_range;
> > +     u32 max_uA, max_level;
> > +     const char * const states[] = { "off", "keep", "on" };
>
> We'd really preffer not to add "keep" / "on" support unless you need
> it.
>
Forgive me, but I would like to know why "keep" / "on" is not preferred.
We think the users might have some conditions that need them.


Best Regards,
Alice

Pavel Machek <pavel@ucw.cz> 於 2022年7月31日 週日 清晨5:39寫道:
>
> Hi!
>
> > From: ChiYuan Huang <cy_huang@richtek.com>
> >
> > The MediaTek MT6370 is a highly-integrated smart power management IC,
> > which includes a single cell Li-Ion/Li-Polymer switching battery
> > charger, a USB Type-C & Power Delivery (PD) controller, dual
> > Flash LED current sources, a RGB LED driver, a backlight WLED driver,
> > a display bias driver and a general LDO for portable devices.
> >
> > In MediaTek MT6370, there are four channel current-sink RGB LEDs that
> > support hardware pattern for constant current, PWM, and breath mode.
> > Isink4 channel can also be used as a CHG_VIN power good indicator.
> >
>
> > +config LEDS_MT6370_RGB
> > +     tristate "LED Support for MediaTek MT6370 PMIC"
> > +     depends on MFD_MT6370
> > +     select LINEAR_RANGE
> > +     help
> > +       Say Y here to enable support for MT6370_RGB LED device.
> > +       In MT6370, there are four channel current-sink LED drivers that
> > +       support hardware pattern for constant current, PWM, and breath mode.
>
>
> > +       Isink4 channel can also be used as a CHG_VIN power good  indicator.
>
> That does not really belong here.
>
> > +struct mt6370_priv {
> > +     /* Per LED access lock */
> > +     struct mutex lock;
>
> Do we really need per-led locking?
>
> > +static int mt6370_gen_breath_pattern(struct mt6370_priv *priv,
> > +                                  struct led_pattern *pattern, u32 len,
> > +                                  u8 *pattern_val, u32 val_len)
> > +{
> > +     enum mt6370_led_ranges sel_range;
> > +     struct led_pattern *curr;
> > +     unsigned int sel;
> > +     u8 val[P_MAX_PATTERNS / 2] = {};
> > +     int i;
> > +
> > +     if (len < P_MAX_PATTERNS && val_len < P_MAX_PATTERNS / 2)
> > +             return -EINVAL;
> > +
> > +     /*
> > +      * Pattern list
> > +      * tr1: byte 0, b'[7: 4]
> > +      * tr2: byte 0, b'[3: 0]
> > +      * tf1: byte 1, b'[7: 4]
> > +      * tf2: byte 1, b'[3: 0]
> > +      * ton: byte 2, b'[7: 4]
> > +      * toff: byte 2, b'[3: 0]
> > +      */
> > +     for (i = 0; i < P_MAX_PATTERNS; i++) {
> > +             curr = pattern + i;
> > +
> > +             sel_range = i == P_LED_TOFF ? R_LED_TOFF : R_LED_TRFON;
> > +
> > +             linear_range_get_selector_within(priv->ranges + sel_range,
> > +                                              curr->delta_t, &sel);
> > +
> > +             val[i / 2] |= sel << (4 * ((i + 1) % 2));
> > +     }
> > +
> > +     memcpy(pattern_val, val, 3);
> > +
> > +     return 0;
> > +}
>
> I wonder how this works... you are not creating private sysfs
> interface, are you?
>
> > +static int mt6370_init_led_properties(struct mt6370_led *led,
> > +                                   struct led_init_data *init_data)
> > +{
> > +     struct mt6370_priv *priv = led->priv;
> > +     struct device *dev = priv->dev;
> > +     struct led_classdev *lcdev;
> > +     struct fwnode_handle *child;
> > +     enum mt6370_led_ranges sel_range;
> > +     u32 max_uA, max_level;
> > +     const char * const states[] = { "off", "keep", "on" };
>
> We'd really preffer not to add "keep" / "on" support unless you need
> it.
>
> > +                     if (ret)
> > +                             return dev_err_probe(dev, ret,
> > +                                                  "led %d, no color specified\n",
> > +                                                  led->index);
>
> led->LED.
>
> > +             if (num_color < 2)
> > +                     return dev_err_probe(dev, -EINVAL,
> > +                                          "Multicolor must include
> > 2 or more led channel\n");
>
> "LED channels".
>
> > +static int mt6370_isnk_init_default_state(struct mt6370_led *led)
> > +{
> > +     struct mt6370_priv *priv = led->priv;
> > +     unsigned int enable, level;
> > +     int ret;
> > +
> > +     ret = mt6370_get_led_brightness(priv, led->index, &level);
> > +     if (ret)
> > +             return ret;
> > +
> > +     ret = regmap_field_read(priv->fields[F_RGB_EN], &enable);
> > +     if (ret)
> > +             return ret;
> > +
> > +     if (!(enable & MT6370_CHEN_BIT(led->index)))
> > +             level = LED_OFF;
>
> Just use 0 instead of LED_OFF.
>
> Best regards,
>                                                         Pavel
>
> --
> People of Russia, stop Putin before his war on Ukraine escalates.

WARNING: multiple messages have this Message-ID (diff)
From: szuni chen <szunichen@gmail.com>
To: Pavel Machek <pavel@ucw.cz>
Cc: ChiaEn Wu <peterwu.pub@gmail.com>,
	Lee Jones <lee.jones@linaro.org>,
	 Daniel Thompson <daniel.thompson@linaro.org>,
	Jingoo Han <jingoohan1@gmail.com>,
	 Rob Herring <robh+dt@kernel.org>,
	 Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	 Matthias Brugger <matthias.bgg@gmail.com>,
	Sebastian Reichel <sre@kernel.org>,
	 Chunfeng Yun <chunfeng.yun@mediatek.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	 Jonathan Cameron <jic23@kernel.org>,
	Lars-Peter Clausen <lars@metafoo.de>,
	Liam Girdwood <lgirdwood@gmail.com>,
	 Mark Brown <broonie@kernel.org>,
	Guenter Roeck <linux@roeck-us.net>,
	 "Krogerus, Heikki" <heikki.krogerus@linux.intel.com>,
	Helge Deller <deller@gmx.de>,
	 Andy Shevchenko <andy.shevchenko@gmail.com>,
	ChiaEn Wu <chiaen_wu@richtek.com>,
	 Alice Chen <alice_chen@richtek.com>,
	ChiYuan Huang <cy_huang@richtek.com>,
	 dri-devel <dri-devel@lists.freedesktop.org>,
	 Linux LED Subsystem <linux-leds@vger.kernel.org>,
	devicetree <devicetree@vger.kernel.org>,
	 linux-arm Mailing List <linux-arm-kernel@lists.infradead.org>,
	 "moderated list:ARM/Mediatek SoC support"
	<linux-mediatek@lists.infradead.org>,
	 Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Linux PM <linux-pm@vger.kernel.org>,
	 USB <linux-usb@vger.kernel.org>,
	linux-iio <linux-iio@vger.kernel.org>,
	 "open list:FRAMEBUFFER LAYER" <linux-fbdev@vger.kernel.org>
Subject: Re: [PATCH v6 11/13] leds: rgb: mt6370: Add MediaTek MT6370 current sink type LED Indicator support
Date: Mon, 1 Aug 2022 15:55:04 +0800	[thread overview]
Message-ID: <CA+hk2fakxuWD2kFSW2e6p7sgWF5jrk0gZg3BU6MtFxcxv6g5jQ@mail.gmail.com> (raw)
In-Reply-To: <20220730213913.GJ23307@duo.ucw.cz>

Hi Pavel,
Sorry for resending the mail, I add all reviewers this time.


Pavel Machek <pavel@ucw.cz> 於 2022年7月31日 週日 清晨5:39寫道:
>
> Hi!
>
...

>
> > +config LEDS_MT6370_RGB
> > +     tristate "LED Support for MediaTek MT6370 PMIC"
> > +     depends on MFD_MT6370
> > +     select LINEAR_RANGE
> > +     help
> > +       Say Y here to enable support for MT6370_RGB LED device.
> > +       In MT6370, there are four channel current-sink LED drivers that
> > +       support hardware pattern for constant current, PWM, and breath mode.
>
>
> > +       Isink4 channel can also be used as a CHG_VIN power good  indicator.
>
> That does not really belong here.
>
Should we just remove it, or describe Isink4 in another position?

> > +struct mt6370_priv {
> > +     /* Per LED access lock */
> > +     struct mutex lock;
>
> Do we really need per-led locking?
>
Sorry, maybe the comment is not precise.
The lock is used to prevent LEDs from accessing the HW at the same time.

If I use
/* LED access lock, only one LED can access the HW at the same time */
will it look better?
No, we aren't.
There are six steps tr1, tr2, tf1, tf2, ton, and toff in MT6370 led breath mode.
We parse duration settings from node "hw_pattern" and set them to the registers.

This function is used to generate duration settings from hw_pattern.

The brightness of the six steps mentioned above in breath mode is
limited to the node "brightness".
The target brightness of tr1 and tf1 is 25% of node "brightness", and
they are automatically set by HW.

> > +static int mt6370_init_led_properties(struct mt6370_led *led,
> > +                                   struct led_init_data *init_data)
> > +{
> > +     struct mt6370_priv *priv = led->priv;
> > +     struct device *dev = priv->dev;
> > +     struct led_classdev *lcdev;
> > +     struct fwnode_handle *child;
> > +     enum mt6370_led_ranges sel_range;
> > +     u32 max_uA, max_level;
> > +     const char * const states[] = { "off", "keep", "on" };
>
> We'd really preffer not to add "keep" / "on" support unless you need
> it.
>
Forgive me, but I would like to know why "keep" / "on" is not preferred.
We think the users might have some conditions that need them.


Best Regards,
Alice

Pavel Machek <pavel@ucw.cz> 於 2022年7月31日 週日 清晨5:39寫道:
>
> Hi!
>
> > From: ChiYuan Huang <cy_huang@richtek.com>
> >
> > The MediaTek MT6370 is a highly-integrated smart power management IC,
> > which includes a single cell Li-Ion/Li-Polymer switching battery
> > charger, a USB Type-C & Power Delivery (PD) controller, dual
> > Flash LED current sources, a RGB LED driver, a backlight WLED driver,
> > a display bias driver and a general LDO for portable devices.
> >
> > In MediaTek MT6370, there are four channel current-sink RGB LEDs that
> > support hardware pattern for constant current, PWM, and breath mode.
> > Isink4 channel can also be used as a CHG_VIN power good indicator.
> >
>
> > +config LEDS_MT6370_RGB
> > +     tristate "LED Support for MediaTek MT6370 PMIC"
> > +     depends on MFD_MT6370
> > +     select LINEAR_RANGE
> > +     help
> > +       Say Y here to enable support for MT6370_RGB LED device.
> > +       In MT6370, there are four channel current-sink LED drivers that
> > +       support hardware pattern for constant current, PWM, and breath mode.
>
>
> > +       Isink4 channel can also be used as a CHG_VIN power good  indicator.
>
> That does not really belong here.
>
> > +struct mt6370_priv {
> > +     /* Per LED access lock */
> > +     struct mutex lock;
>
> Do we really need per-led locking?
>
> > +static int mt6370_gen_breath_pattern(struct mt6370_priv *priv,
> > +                                  struct led_pattern *pattern, u32 len,
> > +                                  u8 *pattern_val, u32 val_len)
> > +{
> > +     enum mt6370_led_ranges sel_range;
> > +     struct led_pattern *curr;
> > +     unsigned int sel;
> > +     u8 val[P_MAX_PATTERNS / 2] = {};
> > +     int i;
> > +
> > +     if (len < P_MAX_PATTERNS && val_len < P_MAX_PATTERNS / 2)
> > +             return -EINVAL;
> > +
> > +     /*
> > +      * Pattern list
> > +      * tr1: byte 0, b'[7: 4]
> > +      * tr2: byte 0, b'[3: 0]
> > +      * tf1: byte 1, b'[7: 4]
> > +      * tf2: byte 1, b'[3: 0]
> > +      * ton: byte 2, b'[7: 4]
> > +      * toff: byte 2, b'[3: 0]
> > +      */
> > +     for (i = 0; i < P_MAX_PATTERNS; i++) {
> > +             curr = pattern + i;
> > +
> > +             sel_range = i == P_LED_TOFF ? R_LED_TOFF : R_LED_TRFON;
> > +
> > +             linear_range_get_selector_within(priv->ranges + sel_range,
> > +                                              curr->delta_t, &sel);
> > +
> > +             val[i / 2] |= sel << (4 * ((i + 1) % 2));
> > +     }
> > +
> > +     memcpy(pattern_val, val, 3);
> > +
> > +     return 0;
> > +}
>
> I wonder how this works... you are not creating private sysfs
> interface, are you?
>
> > +static int mt6370_init_led_properties(struct mt6370_led *led,
> > +                                   struct led_init_data *init_data)
> > +{
> > +     struct mt6370_priv *priv = led->priv;
> > +     struct device *dev = priv->dev;
> > +     struct led_classdev *lcdev;
> > +     struct fwnode_handle *child;
> > +     enum mt6370_led_ranges sel_range;
> > +     u32 max_uA, max_level;
> > +     const char * const states[] = { "off", "keep", "on" };
>
> We'd really preffer not to add "keep" / "on" support unless you need
> it.
>
> > +                     if (ret)
> > +                             return dev_err_probe(dev, ret,
> > +                                                  "led %d, no color specified\n",
> > +                                                  led->index);
>
> led->LED.
>
> > +             if (num_color < 2)
> > +                     return dev_err_probe(dev, -EINVAL,
> > +                                          "Multicolor must include
> > 2 or more led channel\n");
>
> "LED channels".
>
> > +static int mt6370_isnk_init_default_state(struct mt6370_led *led)
> > +{
> > +     struct mt6370_priv *priv = led->priv;
> > +     unsigned int enable, level;
> > +     int ret;
> > +
> > +     ret = mt6370_get_led_brightness(priv, led->index, &level);
> > +     if (ret)
> > +             return ret;
> > +
> > +     ret = regmap_field_read(priv->fields[F_RGB_EN], &enable);
> > +     if (ret)
> > +             return ret;
> > +
> > +     if (!(enable & MT6370_CHEN_BIT(led->index)))
> > +             level = LED_OFF;
>
> Just use 0 instead of LED_OFF.
>
> Best regards,
>                                                         Pavel
>
> --
> People of Russia, stop Putin before his war on Ukraine escalates.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-08-01  7:55 UTC|newest]

Thread overview: 154+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-22 10:23 [PATCH v6 00/13] Add MediaTek MT6370 PMIC support ChiaEn Wu
2022-07-22 10:23 ` ChiaEn Wu
2022-07-22 10:23 ` ChiaEn Wu
2022-07-22 10:23 ` [PATCH v6 01/13] dt-bindings: usb: Add MediaTek MT6370 TCPC ChiaEn Wu
2022-07-22 10:23   ` ChiaEn Wu
2022-07-22 10:23   ` ChiaEn Wu
2022-07-22 10:23 ` [PATCH v6 02/13] dt-bindings: power: supply: Add MediaTek MT6370 Charger ChiaEn Wu
2022-07-22 10:23   ` ChiaEn Wu
2022-07-22 10:23   ` ChiaEn Wu
2022-07-22 10:23 ` [PATCH v6 03/13] dt-bindings: leds: mt6370: Add MediaTek MT6370 current sink type LED indicator ChiaEn Wu
2022-07-22 10:23   ` ChiaEn Wu
2022-07-22 10:23   ` ChiaEn Wu
2022-07-22 10:23 ` [PATCH v6 04/13] dt-bindings: leds: Add MediaTek MT6370 flashlight ChiaEn Wu
2022-07-22 10:23   ` ChiaEn Wu
2022-07-22 10:23   ` ChiaEn Wu
2022-07-30 21:30   ` Pavel Machek
2022-07-30 21:30     ` Pavel Machek
2022-07-30 21:30     ` Pavel Machek
2022-07-22 10:23 ` [PATCH v6 05/13] dt-bindings: backlight: Add MediaTek MT6370 backlight ChiaEn Wu
2022-07-22 10:23   ` ChiaEn Wu
2022-07-22 10:23   ` ChiaEn Wu
2022-08-01  6:47   ` ChiaEn Wu
2022-08-01  6:47     ` ChiaEn Wu
2022-07-22 10:24 ` [PATCH v6 06/13] dt-bindings: mfd: Add MediaTek MT6370 ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:24 ` [PATCH v6 07/13] mfd: mt6370: Add MediaTek MT6370 support ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-25  7:59   ` Andy Shevchenko
2022-07-25  7:59     ` Andy Shevchenko
2022-07-25  7:59     ` Andy Shevchenko
2022-07-25  8:29     ` ChiaEn Wu
2022-07-25  8:29       ` ChiaEn Wu
2022-07-25  8:29       ` ChiaEn Wu
2022-07-25  8:43       ` Andy Shevchenko
2022-07-25  8:43         ` Andy Shevchenko
2022-07-25  8:43         ` Andy Shevchenko
2022-07-25  9:06         ` ChiaEn Wu
2022-07-25  9:06           ` ChiaEn Wu
2022-07-25  9:06           ` ChiaEn Wu
2022-07-25  9:09           ` Andy Shevchenko
2022-07-25  9:09             ` Andy Shevchenko
2022-07-25  9:09             ` Andy Shevchenko
2022-07-22 10:24 ` [PATCH v6 08/13] usb: typec: tcpci_mt6370: Add MediaTek MT6370 tcpci driver ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 14:19   ` Guenter Roeck
2022-07-22 14:19     ` Guenter Roeck
2022-07-22 14:19     ` Guenter Roeck
2022-07-25  7:06   ` Chunfeng Yun
2022-07-25  7:06     ` Chunfeng Yun
2022-07-25  7:06     ` Chunfeng Yun
2022-07-25  7:17     ` ChiaEn Wu
2022-07-25  7:17       ` ChiaEn Wu
2022-07-25  7:17       ` ChiaEn Wu
2022-07-25  8:03   ` Andy Shevchenko
2022-07-25  8:03     ` Andy Shevchenko
2022-07-25  8:03     ` Andy Shevchenko
2022-07-22 10:24 ` [PATCH v6 09/13] iio: adc: mt6370: Add MediaTek MT6370 support ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-25  8:10   ` Andy Shevchenko
2022-07-25  8:10     ` Andy Shevchenko
2022-07-25  8:10     ` Andy Shevchenko
2022-07-22 10:24 ` [PATCH v6 10/13] power: supply: mt6370: Add MediaTek MT6370 charger driver ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-25  8:25   ` Andy Shevchenko
2022-07-25  8:25     ` Andy Shevchenko
2022-07-25  8:25     ` Andy Shevchenko
2022-07-22 10:24 ` [PATCH v6 11/13] leds: rgb: mt6370: Add MediaTek MT6370 current sink type LED Indicator support ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:52   ` AngeloGioacchino Del Regno
2022-07-22 10:52     ` AngeloGioacchino Del Regno
2022-07-22 10:52     ` AngeloGioacchino Del Regno
2022-07-25  8:40   ` Andy Shevchenko
2022-07-25  8:40     ` Andy Shevchenko
2022-07-25  8:40     ` Andy Shevchenko
2022-07-26 11:45     ` ChiaEn Wu
2022-07-26 11:45       ` ChiaEn Wu
2022-07-26 11:45       ` ChiaEn Wu
2022-07-26 12:17       ` Andy Shevchenko
2022-07-26 12:17         ` Andy Shevchenko
2022-07-26 12:17         ` Andy Shevchenko
2022-07-27  7:36         ` ChiaEn Wu
2022-07-27  7:36           ` ChiaEn Wu
2022-07-27  7:36           ` ChiaEn Wu
2022-07-27 10:03           ` Andy Shevchenko
2022-07-27 10:03             ` Andy Shevchenko
2022-07-27 10:03             ` Andy Shevchenko
2022-07-30 21:39   ` Pavel Machek
2022-07-30 21:39     ` Pavel Machek
2022-07-30 21:39     ` Pavel Machek
2022-08-01  7:55     ` szuni chen [this message]
2022-08-01  7:55       ` szuni chen
2022-07-22 10:24 ` [PATCH v6 12/13] leds: flash: mt6370: Add MediaTek MT6370 flashlight support ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:48   ` AngeloGioacchino Del Regno
2022-07-22 10:48     ` AngeloGioacchino Del Regno
2022-07-22 10:48     ` AngeloGioacchino Del Regno
2022-07-25  8:51   ` Andy Shevchenko
2022-07-25  8:51     ` Andy Shevchenko
2022-07-25  8:51     ` Andy Shevchenko
2022-07-29  6:17     ` szuni chen
2022-07-29  6:17       ` szuni chen
2022-07-29  6:17       ` szuni chen
2022-07-29 10:34       ` Andy Shevchenko
2022-07-29 10:34         ` Andy Shevchenko
2022-07-29 10:34         ` Andy Shevchenko
2022-07-25  8:55   ` Andy Shevchenko
2022-07-25  8:55     ` Andy Shevchenko
2022-07-25  8:55     ` Andy Shevchenko
2022-07-26  4:15     ` szuni chen
2022-07-26  4:15       ` szuni chen
2022-07-26  4:15       ` szuni chen
2022-07-26  6:10       ` Andy Shevchenko
2022-07-26  6:10         ` Andy Shevchenko
2022-07-26  6:10         ` Andy Shevchenko
2022-07-30 21:42   ` Pavel Machek
2022-07-30 21:42     ` Pavel Machek
2022-07-30 21:42     ` Pavel Machek
2022-08-04  9:53     ` Alice Chen
2022-08-04  9:53       ` Alice Chen
2022-08-04  9:53       ` Alice Chen
2022-07-22 10:24 ` [PATCH v6 13/13] video: backlight: mt6370: Add MediaTek MT6370 support ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-22 10:24   ` ChiaEn Wu
2022-07-25  9:07   ` Andy Shevchenko
2022-07-25  9:07     ` Andy Shevchenko
2022-07-25  9:07     ` Andy Shevchenko
2022-07-25 10:31   ` Daniel Thompson
2022-07-25 10:31     ` Daniel Thompson
2022-07-25 10:31     ` Daniel Thompson
2022-07-26  2:20     ` ChiaEn Wu
2022-07-26  2:20       ` ChiaEn Wu
2022-07-26  2:20       ` ChiaEn Wu
2022-07-26  9:30       ` Daniel Thompson
2022-07-26  9:30         ` Daniel Thompson
2022-07-26  9:30         ` Daniel Thompson
2022-07-26 11:28         ` ChiaEn Wu
2022-07-26 11:28           ` ChiaEn Wu
2022-07-26 11:28           ` ChiaEn Wu
2022-07-26 11:59           ` Daniel Thompson
2022-07-26 11:59             ` Daniel Thompson
2022-07-26 11:59             ` Daniel Thompson
2022-07-27  6:24             ` ChiaEn Wu
2022-07-27  6:24               ` ChiaEn Wu
2022-07-27  6:24               ` ChiaEn Wu
2022-07-28 11:31               ` Daniel Thompson
2022-07-28 11:31                 ` Daniel Thompson
2022-07-28 11:31                 ` Daniel Thompson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+hk2fakxuWD2kFSW2e6p7sgWF5jrk0gZg3BU6MtFxcxv6g5jQ@mail.gmail.com \
    --to=szunichen@gmail.com \
    --cc=alice_chen@richtek.com \
    --cc=andy.shevchenko@gmail.com \
    --cc=broonie@kernel.org \
    --cc=chiaen_wu@richtek.com \
    --cc=chunfeng.yun@mediatek.com \
    --cc=cy_huang@richtek.com \
    --cc=daniel.thompson@linaro.org \
    --cc=deller@gmx.de \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=heikki.krogerus@linux.intel.com \
    --cc=jic23@kernel.org \
    --cc=jingoohan1@gmail.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=lars@metafoo.de \
    --cc=lee.jones@linaro.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=matthias.bgg@gmail.com \
    --cc=pavel@ucw.cz \
    --cc=peterwu.pub@gmail.com \
    --cc=robh+dt@kernel.org \
    --cc=sre@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.