From: Mika Westerberg <mika.westerberg@linux.intel.com>
To: R Ha <rha051117@gmail.com>
Cc: wsa+renesas@sang-engineering.com, linux-i2c@vger.kernel.org,
linux-acpi@vger.kernel.org, trivial@kernel.org
Subject: Re: [PATCH 1/1] Force ELAN06FA touchpad I2C bus freq to 100KHz
Date: Tue, 7 Jan 2025 09:27:46 +0200 [thread overview]
Message-ID: <20250107072746.GW3713119@black.fi.intel.com> (raw)
In-Reply-To: <CACHtJB94K5OLdHgs8dDj4jDBtZmsdymovboCcJJUt5OkD8o+Mg@mail.gmail.com>
Hi,
On Mon, Jan 06, 2025 at 03:00:53AM -0600, R Ha wrote:
> On Sun, Jan 5, 2025 at 2:34 AM Mika Westerberg
> <mika.westerberg@linux.intel.com> wrote:
> > In general it is good to follow the existing changelogs but in this case I
> > would prefer to add the details of the system in question (so we know what
> > systems the quirk is applied to).
>
> Alright, I sent an updated patch with a commit message that specifies
> the devices affected.
>
> On Sun, Jan 5, 2025 at 2:34 AM Mika Westerberg
> <mika.westerberg@linux.intel.com> wrote:
> > Okay thanks for sharing. I don't see the "SPED" beeing assigned in the
> > below snipped though.
>
> I believe "SPED" is left unassigned. There are two reasons for this.
> 1. I could not find a place where it was assigned in the ACPI table
> (in the snippet, every line with the word "SPED" was already
> included).
> 2. In the file drivers/i2c/busses/i2c-designware-common.c, the code in
> the function "i2c_dw_adjust_bus_speed" falls through to the "else"
> case.
>
> For (2), here is the relevant function where the control flow falls to
> the "else" case. I found this by adding a print-debugging statement
> after the last "else" statement.
> static void i2c_dw_adjust_bus_speed(struct dw_i2c_dev *dev)
> {
> u32 acpi_speed = i2c_dw_acpi_round_bus_speed(dev->dev);
> struct i2c_timings *t = &dev->timings;
>
> /*
> * Find bus speed from the "clock-frequency" device property, ACPI
> * or by using fast mode if neither is set.
> */
> if (acpi_speed && t->bus_freq_hz)
> t->bus_freq_hz = min(t->bus_freq_hz, acpi_speed);
> else if (acpi_speed || t->bus_freq_hz)
> t->bus_freq_hz = max(t->bus_freq_hz, acpi_speed);
> else
> t->bus_freq_hz = I2C_MAX_FAST_MODE_FREQ;
> }
>
> Actually, after some further investigation, I found that I missed a
> few lines in my previous snippet. Specifically the line concerning the
> method "I2CSerialBusV2".
> Here is the full snippet pasted below since I don't want to miss
> anything else, I'm sorry for the length but want to make sure
> everything is included.
Thanks! Okay the speed set in the I2CSerialBusV2 resource is 400kHZ but
there is one more variable in this equation: \\_SB.PC00.I2C1 that's the I2C
controller itself. DW I2C has some timing related methods (HCNT/LCNT) that
may affect this so I wonder if you can share that one too?
> Scope (_SB.PC00.I2C1)
> {
> Name (I2CN, Zero)
> Name (I2CX, Zero)
> Name (I2CI, One)
> Method (_INI, 0, NotSerialized) // _INI: Initialize
> {
> I2CN = SDS1 /* \SDS1 */
> I2CX = One
> }
>
> Device (TPD0)
> {
> Name (HID2, Zero)
> Name (SBFB, ResourceTemplate ()
> {
> I2cSerialBusV2 (0x002C, ControllerInitiated, 0x00061A80,
> AddressingMode7Bit, "\\_SB.PC00.I2C1",
> 0x00, ResourceConsumer, _Y53, Exclusive,
> )
> })
next prev parent reply other threads:[~2025-01-07 7:27 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-03 5:16 [PATCH 0/1] Force I2C bus freq to 100KHz for ELAN06FA touchpad Randolph Ha
2025-01-03 5:16 ` [PATCH 1/1] Force ELAN06FA touchpad I2C bus freq to 100KHz Randolph Ha
2025-01-03 9:33 ` Mika Westerberg
2025-01-03 23:46 ` R Ha
2025-01-05 8:33 ` Mika Westerberg
2025-01-06 1:28 ` [PATCH] " Randolph Ha
2025-01-06 9:00 ` [PATCH 1/1] " R Ha
2025-01-07 7:27 ` Mika Westerberg [this message]
2025-01-07 12:16 ` R Ha
2025-01-08 5:51 ` Mika Westerberg
2025-01-08 9:29 ` R Ha
2025-01-09 11:19 ` Mika Westerberg
2025-01-10 8:31 ` R Ha
2025-01-10 11:26 ` Mika Westerberg
2025-01-10 11:45 ` Jarkko Nikula
2025-01-10 12:07 ` Mika Westerberg
2025-01-11 15:57 ` [PATCH] " Randolph Ha
2025-01-13 6:48 ` Mika Westerberg
2025-01-13 19:52 ` Randolph Ha
2025-01-14 11:58 ` Wolfram Sang
2025-01-15 19:39 ` R Ha
2025-01-11 16:05 ` [PATCH 1/1] " R Ha
2025-01-13 6:49 ` Mika Westerberg
2025-01-06 9:08 ` R Ha
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=20250107072746.GW3713119@black.fi.intel.com \
--to=mika.westerberg@linux.intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-i2c@vger.kernel.org \
--cc=rha051117@gmail.com \
--cc=trivial@kernel.org \
--cc=wsa+renesas@sang-engineering.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 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.