From: Roger Quadros <rogerq@kernel.org>
To: Javier Carrasco <javier.carrasco@wolfvision.net>,
Jai Luthra <j-luthra@ti.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Heikki Krogerus <heikki.krogerus@linux.intel.com>,
linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
vigneshr@ti.com, d-gole@ti.com, nm@ti.com
Subject: Re: [PATCH v2 0/4] usb: typec: tipd: add patch update support for tps6598x
Date: Thu, 4 Jan 2024 19:08:59 +0200 [thread overview]
Message-ID: <5ed7ee66-ad7f-43ce-8550-a1a671cce9ad@kernel.org> (raw)
In-Reply-To: <b0963302-b498-4a81-b635-0b4faf02e83b@wolfvision.net>
On 04/01/2024 18:36, Javier Carrasco wrote:
> On 04.01.24 17:15, Roger Quadros wrote:
>>
>>
>> On 04/01/2024 17:47, Jai Luthra wrote:
>>> Hi Javier,
>>> The following change seems to fix boot on SK-AM62A without reverting
>>> this whole series:
>>>
>>> ------------------
>>>
>>> diff --git a/drivers/usb/typec/tipd/core.c b/drivers/usb/typec/tipd/core.c
>>> index a956eb976906a5..8ba2aa05db519b 100644
>>> --- a/drivers/usb/typec/tipd/core.c
>>> +++ b/drivers/usb/typec/tipd/core.c
>>> @@ -1223,11 +1223,16 @@ static int cd321x_reset(struct tps6598x *tps)
>>> return 0;
>>> }
>>>
>>> -static int tps6598x_reset(struct tps6598x *tps)
>>> +static int tps25750_reset(struct tps6598x *tps)
>>> {
>>> return tps6598x_exec_cmd_tmo(tps, "GAID", 0, NULL, 0, NULL, 2000, 0);
>>> }
>>>
>>> +static int tps6598x_reset(struct tps6598x *tps)
>>> +{
>>> + return 0;
>>> +}
>>> +
>>> static int
>>> tps25750_register_port(struct tps6598x *tps, struct fwnode_handle *fwnode)
>>> {
>>> @@ -1545,7 +1550,7 @@ static const struct tipd_data tps25750_data = {
>>> .trace_status = trace_tps25750_status,
>>> .apply_patch = tps25750_apply_patch,
>>> .init = tps25750_init,
>>> - .reset = tps6598x_reset,
>>> + .reset = tps25750_reset,
>>> };
>>>
>>> static const struct of_device_id tps6598x_of_match[] = {
>>>
>>> ------------------
>>>
>>> I am not an expert on this, will let you/others decide on what should be
>>> the correct way to reset TPS6598x for patching without breaking this SK.
>>>
>>>
>>
>> This looks like a correct fix to me.
>> Could you please send a proper PATCH with Fixes tag? Thanks!
>>
> Hi Roger,
>
> that fix only removes the reset function and does nothing instead, but
> the reset call is identical for both devices (hence why there was a
> single function for both devices). As I mentioned in my reply to Jai
This is incorrect.
Look at the original code, the GAID command is issued only if it is a
tps25750 device.
Below is your part of the code that replaces it with reset() ops.
> @@ -1340,8 +1360,8 @@ static int tps6598x_probe(struct i2c_client *client)
> tps6598x_write64(tps, TPS_REG_INT_MASK1, 0);
> err_reset_controller:
> /* Reset PD controller to remove any applied patch */
> - if (is_tps25750)
> - tps6598x_exec_cmd_tmo(tps, "GAID", 0, NULL, 0, NULL, 2000, 0);
> + tps->data->reset(tps);
> +
> return ret;
> }
which means the GAID command will be executed for both tps25750 and tps6598x
as you have a single reset function for both.
This is a problem for boards using the tps6598x.
--
cheers,
-roger
next prev parent reply other threads:[~2024-01-04 17:09 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-14 16:29 [PATCH v2 0/4] usb: typec: tipd: add patch update support for tps6598x Javier Carrasco
2023-12-14 16:29 ` [PATCH v2 1/4] usb: typec: tipd: add init and reset functions to tipd_data Javier Carrasco
2023-12-19 11:46 ` Heikki Krogerus
2024-01-04 16:14 ` Roger Quadros
2024-01-04 16:39 ` Javier Carrasco
2023-12-14 16:29 ` [PATCH v2 2/4] usb: typec: tipd: add function to request firmware Javier Carrasco
2023-12-19 11:50 ` Heikki Krogerus
2023-12-14 16:29 ` [PATCH v2 3/4] usb: typec: tipd: declare in_data in as const in exec_cmd functions Javier Carrasco
2023-12-19 11:51 ` Heikki Krogerus
2023-12-14 16:29 ` [PATCH v2 4/4] usb: typec: tipd: add patch update support for tps6598x Javier Carrasco
2023-12-19 13:24 ` Heikki Krogerus
2024-01-04 14:20 ` [PATCH v2 0/4] " Jai Luthra
2024-01-04 15:47 ` Jai Luthra
2024-01-04 16:15 ` Roger Quadros
2024-01-04 16:36 ` Javier Carrasco
2024-01-04 17:08 ` Roger Quadros [this message]
2024-01-04 17:15 ` Javier Carrasco
2024-01-04 18:52 ` Dhruva Gole
2024-01-04 20:15 ` Javier Carrasco
2024-01-05 7:57 ` Roger Quadros
2024-01-04 16:25 ` Javier Carrasco
2024-01-05 8:12 ` Jai Luthra
2024-01-05 9:49 ` Javier Carrasco
2024-01-05 10:10 ` Jai Luthra
2024-01-05 16:40 ` Abdel Alkuor
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=5ed7ee66-ad7f-43ce-8550-a1a671cce9ad@kernel.org \
--to=rogerq@kernel.org \
--cc=d-gole@ti.com \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=j-luthra@ti.com \
--cc=javier.carrasco@wolfvision.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=nm@ti.com \
--cc=vigneshr@ti.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox