From: Peter Maydell <peter.maydell@linaro.org> To: qemu-devel@nongnu.org Cc: Stafford Horne <shorne@gmail.com>, Jia Liu <proljc@gmail.com> Subject: [PATCH 0/3] target/openrisc: Move pic_cpu code into CPU object Date: Fri, 27 Nov 2020 22:51:24 +0000 Message-ID: <20201127225127.14770-1-peter.maydell@linaro.org> (raw) The openrisc code uses an old style of interrupt handling, where a separate standalone set of qemu_irqs invoke a function openrisc_pic_cpu_handler() which signals the interrupt to the CPU proper by directly calling cpu_interrupt() and cpu_reset_interrupt(). Because CPU objects now inherit (indirectly) from TYPE_DEVICE, they can have GPIO input lines themselves, and the neater modern way to implement this is to simply have the CPU object itself provide the input IRQ lines. The main aim of this patch series is to make that refactoring, which fixes a trivial memory leak reported by Coverity of the IRQs allocated in cpu_openrisc_pic_init(), and removes one callsite of the qemu_allocate_irqs() function. Patch 1 is a minor bugfix noticed along the way; patch 2 is there to make the change in patch 3 simpler and clearer to review. Tested with 'make check' and 'make check-acceptance'. thanks -- PMM Peter Maydell (3): hw/openrisc/openrisc_sim: Use IRQ splitter when connecting IRQ to multiple CPUs hw/openrisc/openrisc_sim: Abstract out "get IRQ x of CPU y" target/openrisc: Move pic_cpu code into CPU object proper target/openrisc/cpu.h | 1 - hw/openrisc/openrisc_sim.c | 46 +++++++++++++++++----------- hw/openrisc/pic_cpu.c | 61 -------------------------------------- target/openrisc/cpu.c | 32 ++++++++++++++++++++ hw/openrisc/Kconfig | 1 + hw/openrisc/meson.build | 2 +- 6 files changed, 63 insertions(+), 80 deletions(-) delete mode 100644 hw/openrisc/pic_cpu.c -- 2.20.1
next reply index Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-11-27 22:51 Peter Maydell [this message] 2020-11-27 22:51 ` [PATCH 1/3] hw/openrisc/openrisc_sim: Use IRQ splitter when connecting IRQ to multiple CPUs Peter Maydell 2020-11-29 11:59 ` Stafford Horne 2020-11-27 22:51 ` [PATCH 2/3] hw/openrisc/openrisc_sim: Abstract out "get IRQ x of CPU y" Peter Maydell 2020-11-29 12:01 ` Stafford Horne 2020-11-27 22:51 ` [PATCH 3/3] target/openrisc: Move pic_cpu code into CPU object proper Peter Maydell 2020-11-29 12:03 ` Stafford Horne 2020-12-11 13:57 ` [PATCH 0/3] target/openrisc: Move pic_cpu code into CPU object Peter Maydell
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=20201127225127.14770-1-peter.maydell@linaro.org \ --to=peter.maydell@linaro.org \ --cc=proljc@gmail.com \ --cc=qemu-devel@nongnu.org \ --cc=shorne@gmail.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
QEMU-Devel Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/qemu-devel/0 qemu-devel/git/0.git git clone --mirror https://lore.kernel.org/qemu-devel/1 qemu-devel/git/1.git git clone --mirror https://lore.kernel.org/qemu-devel/2 qemu-devel/git/2.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 qemu-devel qemu-devel/ https://lore.kernel.org/qemu-devel \ qemu-devel@nongnu.org public-inbox-index qemu-devel Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.nongnu.qemu-devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git