All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nicholas Piggin <npiggin@gmail.com>
To: "Philippe Mathieu-Daudé" <philmd@linaro.org>
Cc: Alistair Francis <alistair23@gmail.com>,
	Joel Stanley <joel@jms.id.au>,
	 Alistair Francis <alistair.francis@wdc.com>,
	Daniel Henrique Barboza <daniel.barboza@oss.qualcomm.com>,
	 Chao Liu <chao.liu.zevorn@gmail.com>,
	Chris Rauer <crauer@google.com>,
	 Michael Ellerman <mpe@kernel.org>,
	Joel Stanley <jms@oss.tenstorrent.com>,
	 Anirudh Srinivasan <asrinivasan@oss.tenstorrent.com>,
	Portia Stephens <portias@oss.tenstorrent.com>,
	 qemu-riscv@nongnu.org, qemu-devel@nongnu.org,
	Hao Wu <wuhaotsh@google.com>
Subject: Re: [PATCH v4 01/13] hw/i2c: Add designware i2c controller
Date: Wed, 6 May 2026 15:58:25 +1000	[thread overview]
Message-ID: <afrXTtGrUClrUWMb@lima-default> (raw)
In-Reply-To: <1476b7df-b8b7-492a-b46c-81d0bf9cb66e@linaro.org>

On Tue, May 05, 2026 at 09:36:57AM +0200, Philippe Mathieu-Daudé wrote:
> On 5/5/26 08:20, Nicholas Piggin wrote:
> > On Thu, Apr 30, 2026 at 01:53:21PM +1000, Alistair Francis wrote:
> > > On Sat, Apr 25, 2026 at 11:20 PM Joel Stanley <joel@jms.id.au> wrote:
> > > > 
> > > > From: Chris Rauer <crauer@google.com>
> > > > 
> > > > In the past this model has been submitted for use with the arm virt
> > > > machine, however in this case it will be used by the upcoming
> > > > Tenstorrent Atlantis RISC-V machine.
> > > > 
> > > > This is a re-submission of the model with Chris' permission, with a
> > > > light touch of updates to make it build with qemu master.
> > > > 
> > > > Reviewed-by: Hao Wu <wuhaotsh@google.com>
> > > > Signed-off-by: Chris Rauer <crauer@google.com>
> > > > Link: https://lore.kernel.org/qemu-devel/20220110214755.810343-2-venture@google.com
> > > > [jms: rebase and minor build fixes for class_init and reset callback]
> > > > Signed-off-by: Joel Stanley <joel@jms.id.au>
> > > > ---
> 
> 
> > > > +#define DW_IC_COMP_PARAM_1_HAS_ENCODED_PARAMS   BIT(7)
> > > > +#define DW_IC_COMP_PARAM_1_HAS_DMA              0 /* bit 6 - DMA disabled. */
> > > > +#define DW_IC_COMP_PARAM_1_INTR_IO              BIT(5)
> > > > +#define DW_IC_COMP_PARAM_1_HC_COUNT_VAL         0 /* bit 4 - disabled */
> > > > +#define DW_IC_COMP_PARAM_1_HIGH_SPEED_MODE      (BIT(2) | BIT(3))
> > > > +#define DW_IC_COMP_PARAM_1_APB_DATA_WIDTH_32    BIT(1) /* bits 0, 1 */
> > > > +#define DW_IC_COMP_PARAM_1_INIT_VAL             \
> > > > +    (DW_IC_COMP_PARAM_1_APB_DATA_WIDTH_32 | \
> > > > +    DW_IC_COMP_PARAM_1_HIGH_SPEED_MODE | \
> > > > +    DW_IC_COMP_PARAM_1_HC_COUNT_VAL | \
> > > > +    DW_IC_COMP_PARAM_1_INTR_IO | \
> > > > +    DW_IC_COMP_PARAM_1_HAS_DMA | \
> > > > +    DW_IC_COMP_PARAM_1_HAS_ENCODED_PARAMS | \
> > > > +    ((DESIGNWARE_I2C_RX_FIFO_SIZE - 1) << 8) | \
> > > > +    ((DESIGNWARE_I2C_TX_FIFO_SIZE - 1) << 16))
> > > > +#define DW_IC_COMP_VERSION_INIT_VAL             0x3132302a
> > > > +#define DW_IC_COMP_TYPE_INIT_VAL                0x44570140
> > > 
> > > I would prefer these to sue the QEMU register API
> > 
> > That's probably a good idea. It's a lot of churn to change it, but
> > I'm having a try. Might do it as a follow on patch.
> 
> Good suggestion but please as a follow up, this patch is already
> big enough, is reviewed and tested.

I agree... however I implemented it and it is a large amount of chrun
which is also not easy to review. Also it breaks migration
compatibility. So I don't want to get this patch bogged down but if we
agree to take the register API conversion then maybe we should squash
before upstreaming?

Not sure. I will post the patch as a separate optional addition to the
series to begin with.

Thanks,
Nick


  reply	other threads:[~2026-05-06  5:59 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-25 13:17 [PATCH v4 00/13] hw/riscv: Add the Tenstorrent Atlantis machine Joel Stanley
2026-04-25 13:17 ` [PATCH v4 01/13] hw/i2c: Add designware i2c controller Joel Stanley
2026-04-30  3:53   ` Alistair Francis
2026-05-05  6:20     ` Nicholas Piggin
2026-05-05  7:36       ` Philippe Mathieu-Daudé
2026-05-06  5:58         ` Nicholas Piggin [this message]
2026-05-06  8:59           ` Philippe Mathieu-Daudé
2026-05-05  7:57   ` Philippe Mathieu-Daudé
2026-05-06  5:53     ` Nicholas Piggin
2026-05-06  8:55       ` Philippe Mathieu-Daudé
2026-04-25 13:17 ` [PATCH v4 02/13] hw/riscv/boot: Describe discontiguous memory in boot_info Joel Stanley
2026-04-25 13:17 ` [PATCH v4 03/13] hw/riscv/boot: Account for discontiguous memory when loading firmware Joel Stanley
2026-04-29 23:34   ` Alistair Francis
2026-05-04 23:45     ` Nicholas Piggin
2026-04-25 13:17 ` [PATCH v4 04/13] hw/riscv/boot: Provide a simple halting payload Joel Stanley
2026-04-29 23:35   ` Alistair Francis
2026-05-04 23:52     ` Nicholas Piggin
2026-05-05  8:06       ` Philippe Mathieu-Daudé
2026-05-07  1:53         ` Nicholas Piggin
2026-04-25 13:17 ` [PATCH v4 05/13] hw/riscv/virt: Move AIA initialisation to helper file Joel Stanley
2026-04-25 13:17 ` [PATCH v4 06/13] hw/riscv/aia: Provide number of irq sources Joel Stanley
2026-04-25 13:17 ` [PATCH v4 07/13] target/riscv: tt-ascalon: Enable Zkr extension Joel Stanley
2026-04-29 23:36   ` Alistair Francis
2026-05-05  0:06     ` Nicholas Piggin
2026-04-25 13:17 ` [PATCH v4 08/13] target/riscv: tt-ascalon: Enable Svadu by removing Svade Joel Stanley
2026-04-29 23:41   ` Alistair Francis
2026-04-25 13:17 ` [PATCH v4 09/13] hw/riscv: Add Tenstorrent Atlantis machine Joel Stanley
2026-04-29 23:57   ` Alistair Francis
2026-05-05  1:04     ` Nicholas Piggin
2026-05-05  4:34       ` Alistair Francis
2026-05-05  6:00         ` Nicholas Piggin
2026-05-05  7:31           ` Philippe Mathieu-Daudé
2026-05-06  3:14           ` Alistair Francis
2026-05-07  1:50             ` Nicholas Piggin
2026-05-07  2:53               ` Alistair Francis
2026-05-05  2:00     ` Nicholas Piggin
2026-05-05  4:36       ` Alistair Francis
2026-05-05  6:01         ` Nicholas Piggin
2026-04-25 13:17 ` [PATCH v4 10/13] hw/riscv/atlantis: Add PCIe controller Joel Stanley
2026-04-30  0:04   ` Alistair Francis
2026-05-05  1:38     ` Nicholas Piggin
2026-04-25 13:17 ` [PATCH v4 11/13] tests/functional/riscv64: Add tt-atlantis tests Joel Stanley
2026-04-25 13:17 ` [PATCH v4 12/13] hw/riscv/atlantis: Integrate i2c buses Joel Stanley
2026-04-25 13:17 ` [PATCH v4 13/13] hw/riscv/atlantis: Add some i2c peripherals Joel Stanley

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=afrXTtGrUClrUWMb@lima-default \
    --to=npiggin@gmail.com \
    --cc=alistair.francis@wdc.com \
    --cc=alistair23@gmail.com \
    --cc=asrinivasan@oss.tenstorrent.com \
    --cc=chao.liu.zevorn@gmail.com \
    --cc=crauer@google.com \
    --cc=daniel.barboza@oss.qualcomm.com \
    --cc=jms@oss.tenstorrent.com \
    --cc=joel@jms.id.au \
    --cc=mpe@kernel.org \
    --cc=philmd@linaro.org \
    --cc=portias@oss.tenstorrent.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-riscv@nongnu.org \
    --cc=wuhaotsh@google.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.