RE: [PATCH v6 4/4] i2c: designware: Add doorbell support for Mendocino

Limonciello, Mario
2023-03-23T13:32:09Z

[Public]

> -----Original Message-----
> From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Sent: Thursday, March 23, 2023 08:06
> To: Limonciello, Mario <Mario.Limonciello@amd.com>
> Cc: Jan Dąbroś <jsd@semihalf.com>; Grzegorz Bernacki
> <gjb@semihalf.com>; Mark Hasemeyer <markhas@chromium.org>; Jarkko
> Nikula <jarkko.nikula@linux.intel.com>; Mika Westerberg
> <mika.westerberg@linux.intel.com>; linux-i2c@vger.kernel.org; linux-
> kernel@vger.kernel.org
> Subject: Re: [PATCH v6 4/4] i2c: designware: Add doorbell support for
> Mendocino
>
> On Wed, Mar 22, 2023 at 04:02:26PM -0500, Mario Limonciello wrote:
> > Mendocino and later platform don't use the platform feature mailbox for
> > communication for I2C arbitration, they rely upon ringing a doorbell.
> >
> > Detect the platform by the device ID of the root port and choose the
> > appropriate method.
>
> ...
>
> > - ret = read_poll_timeout(psp_send_i2c_req_cezanne, status,
> > + ret = read_poll_timeout(_psp_send_i2c_req, status,
> > (status != -EBUSY),
>
> You can place it now in the above line, but up to you.
>
> > PSP_I2C_REQ_RETRY_DELAY_US,
> > PSP_I2C_REQ_RETRY_CNT *
> PSP_I2C_REQ_RETRY_DELAY_US,
>
> ...
>
> > + /* Cezanne uses platform mailbox, Mendocino and later use doorbell
> */
> > + rdev = pci_get_domain_bus_and_slot(0, 0, PCI_DEVFN(0, 0));
> > + if (rdev->device == 0x1630)
> > + _psp_send_i2c_req = psp_send_i2c_req_cezanne;
> > + else
> > + _psp_send_i2c_req = psp_send_i2c_req_mendocino;
>
> Where is pci_dev_put()?

Missing, thanks for catching it!