Re: [PATCH 00/19] i3c: aspeed: Add I3C support

2025-06-17 Thread Joe Komlodi
Hi, On Sun, Jun 15, 2025 at 11:49 PM Cédric Le Goater wrote: > > Hi > > + Jeremy > > On 6/13/25 02:03, Joe Komlodi wrote: > > Hi all, > > > > This series adds I3C bus support to QEMU and adds more functionality to the > > Aspeed I3C controll

Re: [PATCH 01/19] hw/misc/aspeed_i3c: Move to i3c directory

2025-06-17 Thread Joe Komlodi
On Sun, Jun 15, 2025 at 11:42 PM Cédric Le Goater wrote: > > On 6/13/25 02:03, Joe Komlodi wrote: > > Moves the Aspeed I3C model and traces into hw/i3c and creates I3C build > > files. > > > > Signed-off-by: Joe Komlodi > > > Reviewed-by: Cédric Le Goa

[PATCH 15/19] hw/i3c/dw-i3c: Add controller resets

2025-06-12 Thread Joe Komlodi
Adds behavior to the device reset register. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Stephen Longfield --- hw/i3c/dw-i3c.c | 117 hw/i3c/trace-events | 1 + 2 files changed, 118 insertions(+) diff --git a/hw/i3c

[PATCH 01/19] hw/misc/aspeed_i3c: Move to i3c directory

2025-06-12 Thread Joe Komlodi
Moves the Aspeed I3C model and traces into hw/i3c and creates I3C build files. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Titus Rwantare --- hw/Kconfig| 1 + hw/arm/Kconfig| 1 + hw/i3c/Kconfig

[PATCH 17/19] hw/i3c: Add Mock target

2025-06-12 Thread Joe Komlodi
. Signed-off-by: Joe Komlodi Reviewed-by: Titus Rwantare Reviewed-by: Patrick Venture --- hw/i3c/Kconfig | 10 + hw/i3c/meson.build | 1 + hw/i3c/mock-i3c-target.c | 311 +++ hw/i3c/trace-events | 9 + include/hw/i3c

[PATCH 10/19] hw/i3c/dw-i3c: Use 32 bits on MMIO writes

2025-06-12 Thread Joe Komlodi
The registers are only 32 bits wide, so we should cast the 64-bit value passed in to only be 32 bits wide. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Titus Rwantare --- hw/i3c/dw-i3c.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/hw/i3c

[PATCH 12/19] hw/i3c/dw-i3c: Add data TX and RX

2025-06-12 Thread Joe Komlodi
ve data to/from the controller, the user reads/writes to a bidirectional TX/RX port. Signed-off-by: Joe Komlodi Reviewed-by: Stephen Longfield Reviewed-by: Patrick Venture --- hw/i3c/dw-i3c.c | 882 +++- hw/i3c/trace-events | 10 + incl

[PATCH 18/19] hw/arm/aspeed: Build with I3C_DEVICES

2025-06-12 Thread Joe Komlodi
Allows us to attach the mock I3C target Signed-off-by: Joe Komlodi --- hw/arm/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig index 53d62cd08d..940418b46b 100644 --- a/hw/arm/Kconfig +++ b/hw/arm/Kconfig @@ -532,6 +532,7 @@ config ASPEED_SOC

[PATCH 13/19] hw/i3c/dw-i3c: Add IBI handling

2025-06-12 Thread Joe Komlodi
controller sets an interrupt to notify software about what happened. When the IBI is finished being serviced, the controller pushes the result of the IBI and any data received from the target into the IBI queue. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Stephen Longfield

[PATCH 16/19] hw/i3c/aspeed: Add I3C bus get function

2025-06-12 Thread Joe Komlodi
To retrieve the I3C bus object normally, the order is Aspeed I3C -> DW I3C[n] -> bus object, so make a nice wrapper for people to use. Signed-off-by: Joe Komlodi --- hw/i3c/aspeed_i3c.c | 9 + include/hw/i3c/aspeed_i3c.h | 2 ++ 2 files changed, 11 insertions(+) diff --gi

[PATCH 14/19] hw/i3c/dw-i3c: Add ctrl MMIO handling

2025-06-12 Thread Joe Komlodi
Adds functionality to the CTRL register. Signed-off-by: Joe Komlodi Reviewed-by: Titus Rwantare Reviewed-by: Patrick Venture --- hw/i3c/dw-i3c.c | 35 +++ 1 file changed, 35 insertions(+) diff --git a/hw/i3c/dw-i3c.c b/hw/i3c/dw-i3c.c index c5af331ac4

[PATCH 19/19] hw/i3c: Add hotplug support

2025-06-12 Thread Joe Komlodi
This adds support for hotplugging in I3C. Conceptually this can be thought of as an I3C target being physically socketed onto a board. It is then the target's responsibility to go through the hot-join and DAA process so it can participate on the bus. Signed-off-by: Joe Komlodi Review

[PATCH 06/19] hw/i3c/dw-i3c: Add more reset values

2025-06-12 Thread Joe Komlodi
Adds reset values for the new registers added. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture --- hw/i3c/dw-i3c.c | 20 +++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/hw/i3c/dw-i3c.c b/hw/i3c/dw-i3c.c index b252903ea4..845fbd5efd 100644 --- a/hw

[PATCH 11/19] hw/i3c/dw-i3c: Add IRQ MMIO behavior

2025-06-12 Thread Joe Komlodi
Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Hao Wu --- hw/i3c/dw-i3c.c | 56 + 1 file changed, 56 insertions(+) diff --git a/hw/i3c/dw-i3c.c b/hw/i3c/dw-i3c.c index ecd79aba8c..c58e12964c 100644 --- a/hw/i3c/dw-i3c.c

[PATCH 08/19] hw/i3c/dw-i3c: Add register RO field masks

2025-06-12 Thread Joe Komlodi
Adds read-only register masks for the DwC I3C controller. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture --- hw/i3c/dw-i3c.c | 40 1 file changed, 40 insertions(+) diff --git a/hw/i3c/dw-i3c.c b/hw/i3c/dw-i3c.c index 845fbd5efd..4f40f999f4

[PATCH 04/19] hw/i3c/dw-i3c: Add more register fields

2025-06-12 Thread Joe Komlodi
Adds the rest of the Designware register fields. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture --- hw/i3c/dw-i3c.c | 216 1 file changed, 216 insertions(+) diff --git a/hw/i3c/dw-i3c.c b/hw/i3c/dw-i3c.c index 4b1a3f3f07..b252903ea4

[PATCH 02/19] hw/i3c: Add bus support

2025-06-12 Thread Joe Komlodi
some way. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Titus Rwantare --- hw/i3c/core.c| 652 +++ hw/i3c/meson.build | 1 + hw/i3c/trace-events | 16 ++ include/hw/i3c/i3c.h | 277 ++ 4 files changed

[PATCH 07/19] hw/i3c/aspeed_i3c: Add register RO field masks

2025-06-12 Thread Joe Komlodi
Adds read-only register masks for the Aspeed I3C controller registers. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture --- hw/i3c/aspeed_i3c.c | 16 1 file changed, 16 insertions(+) diff --git a/hw/i3c/aspeed_i3c.c b/hw/i3c/aspeed_i3c.c index 7a16dfec53..1ad25e5a00

[PATCH 09/19] hw/i3c/dw-i3c: Treat more registers as read-as-zero

2025-06-12 Thread Joe Komlodi
RESET_CTRL and INTR_FORCE are write-only. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture --- hw/i3c/dw-i3c.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/i3c/dw-i3c.c b/hw/i3c/dw-i3c.c index 4f40f999f4..bf51c00935 100644 --- a/hw/i3c/dw-i3c.c +++ b/hw/i3c/dw-i3c.c

[PATCH 00/19] i3c: aspeed: Add I3C support

2025-06-12 Thread Joe Komlodi
too complicated, it just adds the device attempting to hotplug to the bus. It is the device's responsibility to hot-join and go through the DAA process to participate on the bus. Thanks, Joe Joe Komlodi (19): hw/misc/aspeed_i3c: Move to i3c directory hw/i3c: Add bus support hw/i3c: Sp

[PATCH 03/19] hw/i3c: Split DesignWare I3C out of Aspeed I3C

2025-06-12 Thread Joe Komlodi
The Aspeed I3C IP block is technically an Aspeed IP block that manages 6 DW I3C controllers. To help reflect this better and to make it easier for other SoCs to use the DW I3C model, we'll split out the DW portion from the Aspeed portion. Signed-off-by: Joe Komlodi --- hw/arm/Kc

[PATCH 05/19] hw/i3c/aspeed_i3c: Add more register fields

2025-06-12 Thread Joe Komlodi
Adds the rest of the Aspeed I3C controller register fields. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture --- hw/i3c/aspeed_i3c.c | 54 +++-- 1 file changed, 42 insertions(+), 12 deletions(-) diff --git a/hw/i3c/aspeed_i3c.c b/hw/i3c

[PATCH] system/physmem: Fix UBSan finding in address_space_write_rom_internal

2025-05-05 Thread Joe Komlodi
accel kvm When built with --enable-ubsan. Signed-off-by: Joe Komlodi --- system/physmem.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/system/physmem.c b/system/physmem.c index 16cf557d1a..ccd2b50da3 100644 --- a/system/physmem.c +++ b/system/physmem.c @@ -3204,6 +3204,7 @

Introduction of an idea and the current work to date on brltty for ppc64

2025-05-04 Thread Joe Nosay
https://freebsdgoogledeveloper.blogspot.com/2025/05/bhyve-and-powervm-solutions.html

BHyve on POWEr 64bit machines with virtualization support

2025-05-02 Thread Joe Nosay
In the source code of BHyve, there is a reference to qemu. The partial solution is to ask the qemu poc and development what the CPU machine parameters would equal the physical CPU. If that is not available, then the virtualization would need to be the most recent CPU software translation. I thought

[PATCH] hw/ssi/aspeed_smc: Allow 64-bit wide flash accesses

2025-04-21 Thread Joe Komlodi
region valid access size to allow for 64-bit accesses. Signed-off-by: Joe Komlodi --- hw/ssi/aspeed_smc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/ssi/aspeed_smc.c b/hw/ssi/aspeed_smc.c index faef1a8e5b..a1160187a4 100644 --- a/hw/ssi/aspeed_smc.c +++ b/hw/ssi

[PATCH 1/1] util/cacheflush: Make first DSB unconditional on aarch64

2025-03-11 Thread Joe Komlodi
/github.com/gcc-mirror/gcc/blob/85b46d0795ac76bc192cb8f88b646a647acf98c1/libgcc/config/aarch64/sync-cache.c#L67) which makes the first DSB unconditional, so we can fix the synchronization issue by doing that as well. Signed-off-by: Joe Komlodi --- util/cacheflush.c | 4 +++- 1 file changed, 3 i

[PATCH 0/1] util/cacheflush: Make first DSB unconditional on aarch64

2025-03-11 Thread Joe Komlodi
xecuted, which could lead to writes not being committed before execution. This function is intended to be a copy of the upstream gcc one, which does an unconditional DSB, so we can fix this by just doing that as well. Thanks! Joe Joe Komlodi (1): util/cacheflush: Make first DSB uncond

[PATCH] target/arm/tcg: Fix overflow in matrix-multiply accumulate

2024-08-11 Thread Joe Hattori
fd4b5 ("target/arm: Implement integer matrix multiply accumulate") Signed-off-by: Joe Hattori --- target/arm/tcg/vec_helper.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/target/arm/tcg/vec_helper.c b/target/arm/tcg/vec_helper.c index 98604d170fd3..e9c3352023

Re: [RFC PATCH 0/5] memattrs: target/arm: add user-defined and requester ID memattrs

2024-02-29 Thread Joe Komlodi
On Thu, Feb 29, 2024 at 1:57 AM Peter Maydell wrote: > > On Thu, 29 Feb 2024 at 04:52, Joe Komlodi wrote: > > On Wed, Feb 28, 2024 at 6:21 AM Peter Maydell > > wrote: > > > So as far as I can see, this patchset defines a bunch of mechanism, > > > but no ac

Re: [RFC PATCH 0/5] memattrs: target/arm: add user-defined and requester ID memattrs

2024-02-28 Thread Joe Komlodi
On Wed, Feb 28, 2024 at 6:21 AM Peter Maydell wrote: > > On Tue, 27 Feb 2024 at 22:24, Joe Komlodi wrote: > > This adds requester IDs to ARM CPUs and adds a "user-defined" memory > > attribute. > > > > The requester ID on ARM CPUs is there because I'

[RFC PATCH 1/5] target/arm: Add requester ID to memattrs

2024-02-27 Thread Joe Komlodi
ating TLBs. Similarly, we add the requester ID during PTW, while populating the rest of the memory attributes. We add the requester ID during GPC and descriptor grabbing as well as PTWs. Signed-off-by: Joe Komlodi --- target/arm/cpu.c | 4 target/arm/cpu.h | 6 ++ target/arm/ptw.

[RFC PATCH 5/5] hw/pci: Add user-defined memattrs

2024-02-27 Thread Joe Komlodi
MEMTXATTRS_UNSPECIFIED, and we should respect that instead of injecting user-defined attributes in the function. Signed-off-by: Joe Komlodi --- hw/pci/pci.c| 3 +++ include/hw/pci/pci_device.h | 1 + 2 files changed, 4 insertions(+) diff --git a/hw/pci/pci.c b/hw/pci/pci.c index 6496d027ca

[RFC PATCH 0/5] memattrs: target/arm: add user-defined and requester ID memattrs

2024-02-27 Thread Joe Komlodi
ces that set attributes (using address_space_rw or some other means), can add them on a per-device basis. RFC because it's possible we might want this implementated in some other way, and it touches some pretty frequently used code that I'm somewhat familiar with, but not 100% fam

[RFC PATCH 2/5] memattrs: Fix target_tlb_bit whitespace

2024-02-27 Thread Joe Komlodi
checkpatch.pl doesn't like these spaces around the colon, so we may as well fix it up. No functional change. Signed-off-by: Joe Komlodi --- include/exec/memattrs.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/exec/memattrs.h b/include/exec/memattrs.h

[RFC PATCH 3/5] memattrs: Add user-defined attribute

2024-02-27 Thread Joe Komlodi
These are used to represent implementation-specific data. These are based off of AMBA-AXI user signals, but can be used in any implementation. The length of 4-bits is arbitrary. Signed-off-by: Joe Komlodi --- include/exec/memattrs.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include

[RFC PATCH 4/5] target/arm: Add user-defined memattrs

2024-02-27 Thread Joe Komlodi
During transactions, these get added to memory attributes at the same time other attributes are added. Similar to the requester ID, these are added on PTWs, GPCs, and descriptor grabbing as well. Signed-off-by: Joe Komlodi --- target/arm/cpu.c | 2 ++ target/arm/cpu.h | 2 ++ target/arm/ptw.c

[PATCH v4 2/3] hw/i2c/smbus_slave: Add object path on error prints

2024-02-20 Thread Joe Komlodi
The current logging doesn't tell us which specific smbus device is an error state. Signed-off-by: Joe Komlodi Reviewed-by: Peter Maydell --- hw/i2c/smbus_slave.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/hw/i2c/smbus_slave.c b/hw/i2c/smbus_slave.c

[PATCH v4 3/3] hw/i2c: smbus_slave: Reset state on reset

2024-02-20 Thread Joe Komlodi
If a reset comes while the SMBus device is not in its idle state, it's possible for it to get confused on valid transactions post-reset. Signed-off-by: Joe Komlodi Reviewed-by: Peter Maydell --- hw/i2c/smbus_slave.c | 9 + 1 file changed, 9 insertions(+) diff --git a/h

[PATCH v4 0/3] hw/i2c: smbus: Reset fixes

2024-02-20 Thread Joe Komlodi
ward. Basically as long as a reset happens in the middle of a transaction, the state of the old transaction would still partially be there after the reset. Once a new transaction comes in, the partial stale state can cause the new transaction to incorrectly fail. Thanks, Joe Joe Komlodi (3): hw/

[PATCH v4 1/3] hw/i2c: core: Add reset

2024-02-20 Thread Joe Komlodi
It's possible for a reset to come in the middle of a transaction, which causes the bus to be in an old state when a new transaction comes in. Signed-off-by: Joe Komlodi --- hw/i2c/core.c | 19 +++ 1 file changed, 19 insertions(+) diff --git a/hw/i2c/core.c b/hw/i2c/core.c

Re: [PATCH v3 1/3] hw/i2c: core: Add reset

2024-02-20 Thread Joe Komlodi
On Fri, Feb 16, 2024 at 5:04 PM Corey Minyard wrote: > > On Thu, Feb 08, 2024 at 04:39:10PM +, Peter Maydell wrote: > > On Fri, 2 Feb 2024 at 20:48, Joe Komlodi wrote: > > > > > > It's possible for a reset to come in the middle of a transaction, which &

Re: [PATCH v3 1/3] hw/i2c: core: Add reset

2024-02-16 Thread Joe Komlodi
On Thu, Feb 8, 2024 at 8:39 AM Peter Maydell wrote: > > On Fri, 2 Feb 2024 at 20:48, Joe Komlodi wrote: > > > > It's possible for a reset to come in the middle of a transaction, which > > causes the bus to be in an old state when a new transaction comes in. >

[PATCH v3 3/3] hw/i2c: smbus_slave: Reset state on reset

2024-02-02 Thread Joe Komlodi
If a reset comes while the SMBus device is not in its idle state, it's possible for it to get confused on valid transactions post-reset. Signed-off-by: Joe Komlodi --- hw/i2c/smbus_slave.c | 9 + 1 file changed, 9 insertions(+) diff --git a/hw/i2c/smbus_slave.c b/hw/i2c/smbus_sl

[PATCH v3 0/3] hw/i2c: smbus: Reset fixes

2024-02-02 Thread Joe Komlodi
n would still partially be there after the reset. Once a new transaction comes in, the partial stale state can cause the new transaction to incorrectly fail. Thanks, Joe Joe Komlodi (3): hw/i2c: core: Add reset hw/i2c/smbus_slave: Add object path on error prints hw/i2c: smbus_slave: Res

[PATCH v3 1/3] hw/i2c: core: Add reset

2024-02-02 Thread Joe Komlodi
It's possible for a reset to come in the middle of a transaction, which causes the bus to be in an old state when a new transaction comes in. Signed-off-by: Joe Komlodi --- hw/i2c/core.c| 19 +++ include/hw/i2c/i2c.h | 2 +- 2 files changed, 20 insertions(+), 1 del

[PATCH v3 2/3] hw/i2c/smbus_slave: Add object path on error prints

2024-02-02 Thread Joe Komlodi
The current logging doesn't tell us which specific smbus device is an error state. Signed-off-by: Joe Komlodi --- hw/i2c/smbus_slave.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/hw/i2c/smbus_slave.c b/hw/i2c/smbus_slave.c index 1300c9ec72..9f9afc25a4 1

Re: [PATCH v2 1/3] hw/i2c: core: Add reset

2024-02-02 Thread Joe Komlodi
Hi peter, On Thu, Feb 1, 2024 at 7:24 AM Peter Maydell wrote: > > On Fri, 26 Jan 2024 at 00:56, Joe Komlodi wrote: > > > > It's possible for a reset to come in the middle of a transaction, which > > causes the bus to be in an old state when a new transaction comes i

[PATCH v2 1/3] hw/i2c: core: Add reset

2024-01-25 Thread Joe Komlodi
It's possible for a reset to come in the middle of a transaction, which causes the bus to be in an old state when a new transaction comes in. Signed-off-by: Joe Komlodi --- hw/i2c/core.c| 30 +- include/hw/i2c/i2c.h | 6 +- 2 files changed, 30 inser

[PATCH v2 3/3] hw/i2c: smbus_slave: Reset state on reset

2024-01-25 Thread Joe Komlodi
If a reset comes while the SMBus device is not in its idle state, it's possible for it to get confused on valid transactions post-reset. Signed-off-by: Joe Komlodi --- hw/i2c/smbus_slave.c | 9 + 1 file changed, 9 insertions(+) diff --git a/hw/i2c/smbus_slave.c b/hw/i2c/smbus_sl

[PATCH v2 0/3] hw/i2c: smbus: Reset fixes

2024-01-25 Thread Joe Komlodi
of the old transaction would still partially be there after the reset. Once a new transaction comes in, the partial stale state can cause the new transaction to incorrectly fail. Thanks, Joe Joe Komlodi (3): hw/i2c: core: Add reset hw/i2c/smbus_slave: Add object path on error prints hw/i2c: s

[PATCH v2 2/3] hw/i2c/smbus_slave: Add object path on error prints

2024-01-25 Thread Joe Komlodi
The current logging doesn't tell us which specific smbus device is an error state. Signed-off-by: Joe Komlodi --- hw/i2c/smbus_slave.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/hw/i2c/smbus_slave.c b/hw/i2c/smbus_slave.c index 1300c9ec72..e24a1ef472 1

Re: [PATCH 0/4] hw/i2c: smbus: Reset fixes

2024-01-24 Thread Joe Komlodi
On Thu, Jan 11, 2024 at 6:03 AM Corey Minyard wrote: > > On Wed, Jan 10, 2024 at 09:26:37PM +0000, Joe Komlodi wrote: > > Hi all, > > > > This series adds some resets for SMBus and for the I2C core. Along with > > it, we make SMBus slave error printing a little mor

Re: [PATCH 0/4] hw/i2c: smbus: Reset fixes

2024-01-10 Thread Joe Komlodi
+cminyard Accidentally typed Corey's email address wrong in the initial send, oops. On Wed, Jan 10, 2024 at 1:26 PM Joe Komlodi wrote: > > Hi all, > > This series adds some resets for SMBus and for the I2C core. Along with > it, we make SMBus slave error printing a

[PATCH 4/4] hw/i2c: smbus: mux: Reset SMBusDevice state on reset

2024-01-10 Thread Joe Komlodi
for the SMBusDevice class, and have the mux class invoke it when it resets. Signed-off-by: Joe Komlodi --- hw/i2c/i2c_mux_pca954x.c | 5 + hw/i2c/smbus_slave.c | 3 +++ include/hw/i2c/smbus_slave.h | 1 + 3 files changed, 9 insertions(+) diff --git a/hw/i2c/i2c_mux_pca954x.c b/hw

[PATCH 3/4] hw/i2c: smbus_slave: Reset state on reset

2024-01-10 Thread Joe Komlodi
If a reset comes while the SMBus device is not in its idle state, it's possible for it to get confused on valid transactions post-reset. Signed-off-by: Joe Komlodi --- hw/i2c/smbus_slave.c | 9 + 1 file changed, 9 insertions(+) diff --git a/hw/i2c/smbus_slave.c b/hw/i2c/smbus_sl

[PATCH 1/4] hw/i2c: core: Add reset

2024-01-10 Thread Joe Komlodi
It's possible for a reset to come in the middle of a transaction, which causes the bus to be in an old state when a new transaction comes in. Signed-off-by: Joe Komlodi --- hw/i2c/core.c| 30 +- include/hw/i2c/i2c.h | 6 +- 2 files changed, 30 inser

[PATCH 0/4] hw/i2c: smbus: Reset fixes

2024-01-10 Thread Joe Komlodi
straightforward. Basically as long as a reset happens in the middle of a transaction, the state of the old transaction would still partially be there after the reset. Once a new transaction comes in, the partial stale state can cause the new transaction to incorrectly fail. Thanks, Joe Joe Komlodi (4

[PATCH 2/4] hw/i2c/smbus_slave: Add object path on error prints

2024-01-10 Thread Joe Komlodi
The current logging doesn't tell us which specific smbus device is an error state. Signed-off-by: Joe Komlodi --- hw/i2c/smbus_slave.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/hw/i2c/smbus_slave.c b/hw/i2c/smbus_slave.c index 1300c9ec72..e24a1ef472 1

[PATCH 0/1] hw/arm/sse-timer: Add CNTFRQ reset property

2023-09-14 Thread Joe Komlodi
. Since it's valid for CNTFRQ to have a non-zero reset value, we just added an object property so people can set it. Thanks! Joe Joe Komlodi (1): hw/timer/sse-timer: Add CNTFRQ reset property hw/timer/sse-timer.c | 4 +++- include/hw/timer/sse-timer.h | 2 ++ 2 files changed, 5 inser

[PATCH 1/1] hw/timer/sse-timer: Add CNTFRQ reset property

2023-09-14 Thread Joe Komlodi
e the CNTFRQ reset value. Signed-off-by: Joe Komlodi --- hw/timer/sse-timer.c | 4 +++- include/hw/timer/sse-timer.h | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/hw/timer/sse-timer.c b/hw/timer/sse-timer.c index e92e83747d..a727f05bac 100644 --- a/hw/timer/sse-ti

Re: [PATCH 10/16] hw/i3c/aspeed_i3c: Add IBI handling

2023-04-12 Thread Joe Komlodi
Hi jeremy, On Tue, Apr 11, 2023 at 2:17 AM Jeremy Kerr wrote: > > Hi Joe, > > > +static int aspeed_i3c_device_ibi_finish(I3CBus *bus) > > +{ > > +AspeedI3CDevice *s = ASPEED_I3C_DEVICE(bus->qbus.parent); > > +bool nack_and_disable_hj = A

[PATCH 0/2] hw/arm/npcm7xx_gpio: Add some pin state QOM

2023-04-05 Thread Joe Komlodi
QMP, so this adds properties to allow people to do so. Since the NPCM7xx is typically used to help manage other SoCs, hopefully other people will find this useful as well. Thanks! Joe Joe Komlodi (2): hw/gpio/npcm7xx: Add GPIO DIN object property hw/gpio/npcm7xx: Support qom-get on GPIO pin

[PATCH 1/2] hw/gpio/npcm7xx: Add GPIO DIN object property

2023-04-05 Thread Joe Komlodi
;:"qom-set","arguments": { "path":"/machine/soc/gpio[0]", "property":"gpio-pins-in", "value":1048576 }} 1048576 == 0x10, JSON does not support hex. Signed-off-by: Joe Komlodi --- hw/gpio/npcm7xx_gpio.c | 28

[PATCH 2/2] hw/gpio/npcm7xx: Support qom-get on GPIO pin level

2023-04-05 Thread Joe Komlodi
;:{ "path":"/machine/soc/gpio[0]", "property":"gpio-pin-level" }} Signed-off-by: Joe Komlodi --- hw/gpio/npcm7xx_gpio.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/gpio/npcm7xx_gpio.c b/hw/gpio/npcm7xx_gpio.c index 2a7be60d8d..58db3a8d64

Re: [PATCH 14/16] hw/i3c: remote_i3c: Add model

2023-04-04 Thread Joe Komlodi
Hi Jeremy, On Sun, Apr 2, 2023 at 11:14 PM Jeremy Kerr wrote: > > Hi Joe, > > > Adds a model to communicate to remote I3C devices over chardev. This > > allows QEMU to communicate to I3C targets that exist outside of QEMU. > > Nice! > > I've been wanting s

Re: [PATCH 00/16] i3c: aspeed: Add I3C support

2023-04-04 Thread Joe Komlodi
ister space. > This is my understanding as well from an outside look. >From a QEMU standpoint I could split off the dwc portion into a dwc_i3c model, which the aspeed_i3c portion inherits from. I can do that in a v2 if that sounds good with everyone. Thanks, Joe > Cheers, > > > Jeremy

[PATCH 04/16] hw/i3c/aspeed_i3c: Add more reset values

2023-03-30 Thread Joe Komlodi
Adds reset values for the new registers added. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture --- hw/i3c/aspeed_i3c.c | 17 + 1 file changed, 17 insertions(+) diff --git a/hw/i3c/aspeed_i3c.c b/hw/i3c/aspeed_i3c.c index ae247e03bb..034a17ff8e 100644 --- a/hw/i3c

[PATCH 05/16] hw/i3c/aspeed_i3c: Add register RO field masks

2023-03-30 Thread Joe Komlodi
Adds read-only field masks for the I3C device and controller registers. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture --- hw/i3c/aspeed_i3c.c | 56 + 1 file changed, 56 insertions(+) diff --git a/hw/i3c/aspeed_i3c.c b/hw/i3c/aspeed_i3c.c

[PATCH 02/16] hw/i3c: Add bus support

2023-03-30 Thread Joe Komlodi
handle it in some way. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Titus Rwantare --- hw/i3c/core.c| 629 +++ hw/i3c/meson.build | 1 + hw/i3c/trace-events | 16 ++ include/hw/i3c/i3c.h | 275 +++ 4

[PATCH 13/16] hw/i3c: Add Mock target

2023-03-30 Thread Joe Komlodi
. Signed-off-by: Joe Komlodi Reviewed-by: Titus Rwantare Reviewed-by: Patrick Venture --- hw/i3c/Kconfig | 10 ++ hw/i3c/meson.build | 1 + hw/i3c/mock-target.c | 312 +++ hw/i3c/trace-events | 9 + include/hw/i3c/mock

[PATCH 16/16] hw/i3c: Add hotplug support

2023-03-30 Thread Joe Komlodi
This adds support for hotplugging in I3C. Conceptually this can be thought of as an I3C target being physically socketed onto a board. It is then the target's responsibility to go through the hot-join and DAA process so it can participate on the bus. Signed-off-by: Joe Komlodi Review

[PATCH 11/16] hw/i3c/aspeed_i3c: Add ctrl MMIO handling

2023-03-30 Thread Joe Komlodi
Adds functionality to the CTRL register. Signed-off-by: Joe Komlodi Reviewed-by: Titus Rwantare Reviewed-by: Patrick Venture --- hw/i3c/aspeed_i3c.c | 36 1 file changed, 36 insertions(+) diff --git a/hw/i3c/aspeed_i3c.c b/hw/i3c/aspeed_i3c.c index

[PATCH 10/16] hw/i3c/aspeed_i3c: Add IBI handling

2023-03-30 Thread Joe Komlodi
controller sets an interrupt to notify software about what happened. When the IBI is finished being serviced, the controller pushes the result of the IBI and any data received from the target into the IBI queue. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Stephen Longfield

[PATCH 01/16] hw/misc/aspeed_i3c: Move to i3c directory

2023-03-30 Thread Joe Komlodi
Moves the Aspeed I3C model and traces into hw/i3c and create I3C build files. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Titus Rwantare --- hw/Kconfig| 1 + hw/arm/Kconfig| 1 + hw/i3c/Kconfig

[PATCH 08/16] hw/i3c/aspeed_i3c: Add IRQ MMIO behavior

2023-03-30 Thread Joe Komlodi
Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Hao Wu --- hw/i3c/aspeed_i3c.c | 57 + 1 file changed, 57 insertions(+) diff --git a/hw/i3c/aspeed_i3c.c b/hw/i3c/aspeed_i3c.c index 2ed09234ff..b9aa1367d8 100644 --- a/hw/i3c

[PATCH 00/16] i3c: aspeed: Add I3C support

2023-03-30 Thread Joe Komlodi
ng support. The hotplugging doesn't do anything too complicated, it just adds the device attempting to hotplug to the bus. It is the device's responsibility to hot-join and go through the DAA process to participate on the bus. Thanks! Joe Joe Komlodi (16): hw/misc/aspeed_i3c: Move to i3

[PATCH 09/16] hw/i3c/aspeed_i3c: Add data TX and RX

2023-03-30 Thread Joe Komlodi
ve data to/from the controller, the user reads/writes to a bidirectional TX/RX port. Signed-off-by: Joe Komlodi Reviewed-by: Stephen Longfield Reviewed-by: Patrick Venture --- hw/i3c/aspeed_i3c.c | 848 hw/i3c/trace-events | 10 + incl

[PATCH 15/16] qtest: remote_i3c: Add remote I3C qtest

2023-03-30 Thread Joe Komlodi
This adds a remote I3C qtest using the Aspeed I3C controller and an AST2600 board. The qtest uses a basic Aspeed I3C driver to test: - data transmission from controller to target - data reception from target to controller - target sending an IBI (with data bytes) to controller Signed-off-by: Joe

[PATCH 03/16] hw/i3c/aspeed_i3c: Add more register fields

2023-03-30 Thread Joe Komlodi
Adds the rest of the fields laid out in the AST26xx datasheet. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture --- hw/i3c/aspeed_i3c.c | 260 ++-- 1 file changed, 248 insertions(+), 12 deletions(-) diff --git a/hw/i3c/aspeed_i3c.c b/hw/i3c

[PATCH 14/16] hw/i3c: remote_i3c: Add model

2023-03-30 Thread Joe Komlodi
tiated by target) - 1-byte opcode - 1-byte IBI address - 1-byte RnW boolean - 4-byte length of IBI payload from target as a LE uint32 (can be 0) - n-byte IBI payload Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Stephen Longfield --- hw/i3c/Kconfig | 5

[PATCH 06/16] hw/i3c/aspeed_i3c: Treat more registers as read-as-zero

2023-03-30 Thread Joe Komlodi
RESET_CTRL and INTR_FORCE are write-only. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture --- hw/i3c/aspeed_i3c.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/i3c/aspeed_i3c.c b/hw/i3c/aspeed_i3c.c index 6f514bef5e..79715f462d 100644 --- a/hw/i3c/aspeed_i3c.c +++ b/hw/i3c

[PATCH 12/16] hw/i3c/aspeed_i3c: Add controller resets

2023-03-30 Thread Joe Komlodi
Adds behavior to the device reset register. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Stephen Longfield --- hw/i3c/aspeed_i3c.c | 110 +--- hw/i3c/trace-events | 1 + 2 files changed, 104 insertions(+), 7 deletions(-) diff

[PATCH 07/16] hw/i3c/aspeed_i3c: Use 32 bits on MMIO writes

2023-03-30 Thread Joe Komlodi
The registers are only 32 bits wide, so we should cast the 64-bit value passed in to only be 32 bits wide. Signed-off-by: Joe Komlodi Reviewed-by: Patrick Venture Reviewed-by: Titus Rwantare --- hw/i3c/aspeed_i3c.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/hw

QEMU's slow dnf makecache process

2023-03-30 Thread Joe (Jun-Yan) Chen
ocess of "$dnf makecache" after the metadata has been downloaded? Or am I missing something? I am looking forward your expertise. Joe ** This email and attachments contain Ambarella Proprietary and/or Confidential

[PATCH 1/2] hw/i2c: smbus_slave: Reset state on reset

2023-03-20 Thread Joe Komlodi
If a reset comes while the SMBus device is not in its idle state, it's possible for it to get confused on valid transactions post-reset. Signed-off-by: Joe Komlodi --- hw/i2c/smbus_slave.c | 9 + 1 file changed, 9 insertions(+) diff --git a/hw/i2c/smbus_slave.c b/hw/i2c/smbus_sl

[PATCH 2/2] hw/i2c: core: Add reset

2023-03-20 Thread Joe Komlodi
It's possible for a reset to come in the middle of a transaction, which causes the bus to be in an old state when a new transaction comes in. Signed-off-by: Joe Komlodi --- hw/i2c/core.c | 25 ++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/hw/i2c/c

[PATCH 0/2] hw/i2c: Reset fixes

2023-03-20 Thread Joe Komlodi
problems. Thanks! Joe Joe Komlodi (2): hw/i2c: smbus_slave: Reset state on reset hw/i2c: core: Add reset hw/i2c/core.c| 25 ++--- hw/i2c/smbus_slave.c | 9 + 2 files changed, 31 insertions(+), 3 deletions(-) -- 2.40.0.rc2.332.ga46443480c-goog

Re: building e2k qemu errors

2022-05-27 Thread Joe Nosay
Will do, thanks On Fri, May 27, 2022 at 1:42 PM Peter Maydell wrote: > On Fri, 27 May 2022 at 16:16, Joe Nosay wrote: > > > > Does the newest qemu source at github include the e2k cpu? > > And, what is the exact address? > > Please keep emails on the mailing

building e2k qemu errors

2022-05-26 Thread Joe Nosay
The errors occur at the end of the attached file. changing dir to build for make ""... make[1]: Entering directory '/home/sossego/elbrus/qemu-e2k/build' /usr/bin/ninja build.ninja && touch build.ninja.stamp ninja: no work to do. /usr/bin/python3 -B /home/sossego/elbrus/qemu-e2k/meson/meson.py intr

[RFC PATCH 4/7] aspeed: i2c: Use reg array instead of individual vars

2022-03-30 Thread Joe Komlodi
macros on registers. Signed-off-by: Joe Komlodi Change-Id: Ib94996b17c361b8490c042b43c99d8abc69332e3 --- hw/i2c/aspeed_i2c.c | 286 +--- include/hw/i2c/aspeed_i2c.h | 11 +- 2 files changed, 133 insertions(+), 164 deletions(-) diff --git a/hw/i2c

[RFC PATCH 1/7] hw/registerfields: Add shared fields macros

2022-03-30 Thread Joe Komlodi
extract FIELD1 via SHARED_ARRAY_FIELD_EX32(s->regs, R_REG_MODE1, FIELD1) or SHARED_ARRAY_FIELD_EX32(s->regs, R_REG_MODE2, FIELD1) Signed-off-by: Joe Komlodi Change-Id: Id3dc53e7d2f8741c95697cbae69a81bb699fa3cb --- include/hw/registerfields.h | 70 + 1 file c

[RFC PATCH 2/7] aspeed: i2c: Add ctrl_global_rsvd property

2022-03-30 Thread Joe Komlodi
The Aspeed I2C controller is used across other SKUs that have different reserved bits for the ctrl_global_rsvd register. Signed-off-by: Joe Komlodi Change-Id: I606c5933c527274a9d2b0afe559b2e895767636c --- hw/arm/aspeed_ast2600.c | 2 ++ hw/i2c/aspeed_i2c.c | 4 include/hw/i2c

[RFC PATCH 0/7] aspeed: i2c: Add new mode support

2022-03-30 Thread Joe Komlodi
grate over to the register API and then add new mode support. Thanks! Joe Joe Komlodi (7): hw/registerfields: Add shared fields macros aspeed: i2c: Add ctrl_global_rsvd property aspeed: i2c: Migrate to registerfields API aspeed: i2c: Use reg array instead of individual vars aspeed: i2c: Ad

[RFC PATCH 3/7] aspeed: i2c: Migrate to registerfields API

2022-03-30 Thread Joe Komlodi
This cleans up some of the field accessing, setting, and clearing bitwise operations, and wraps them in macros instead. Signed-off-by: Joe Komlodi Change-Id: I33018d6325fa04376e7c29dc4a49ab389a8e333a --- hw/i2c/aspeed_i2c.c | 393 ++-- 1 file changed, 196

[RFC PATCH 7/7] aspeed: i2c: Move regs and helpers to header file

2022-03-30 Thread Joe Komlodi
Moves register definitions and short commonly used inlined functiosn to the header file to help tidy up the implementation file. Signed-off-by: Joe Komlodi Change-Id: I34dff7485b6bbe3c9482715ccd94dbd65dc5f324 --- hw/i2c/aspeed_i2c.c | 266 --- include/hw

[RFC PATCH 6/7] aspeed: i2c: Add PKT_DONE IRQ to trace

2022-03-30 Thread Joe Komlodi
Signed-off-by: Joe Komlodi Change-Id: I566eb09f4b9016e24570572f367627f6594039f5 --- hw/i2c/aspeed_i2c.c | 3 +++ hw/i2c/trace-events | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/hw/i2c/aspeed_i2c.c b/hw/i2c/aspeed_i2c.c index 948d8dc2bb..f179f78ee9 100644 --- a/hw/i2c

[RFC PATCH 5/7] aspeed: i2c: Add new mode support

2022-03-30 Thread Joe Komlodi
new mode, so we use SHARED_FIELD_XX macros to reuse most of the code between the different modes. For packet mode, most of the command behavior is the same compared to other modes, but there are some minor changes to how interrupts are handled compared to other modes. Signed-off-by: Jo

[RFC PATCH 1/6] hw/gpio/gpio_transmitter: Add Device

2021-12-15 Thread Joe Komlodi
controller doesn't care about it, and because any errors would be the fault of the external software receiving the GPIO transmitter packets. Signed-off-by: Joe Komlodi --- hw/gpio/Kconfig | 3 + hw/gpio/google_gpio_transmitter.c | 127

[RFC PATCH 5/6] hw/gpio/npcm7xx: init GPIO transmitter allowlist

2021-12-15 Thread Joe Komlodi
For the GPIO transmitter to properly transmit on pin changes, it must know the initial state of the GPIO pins on the controller. Signed-off-by: Joe Komlodi --- hw/gpio/npcm7xx_gpio.c | 9 + 1 file changed, 9 insertions(+) diff --git a/hw/gpio/npcm7xx_gpio.c b/hw/gpio/npcm7xx_gpio.c

  1   2   3   >