From patchwork Wed Sep 18 06:54:18 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bibo Mao X-Patchwork-Id: 1986704 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=patchwork.ozlabs.org) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4X7qDX0XtSz1y20 for ; Wed, 18 Sep 2024 16:55:56 +1000 (AEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sqoaN-0003X8-PP; Wed, 18 Sep 2024 02:54:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sqoaB-0002xj-Is for qemu-devel@nongnu.org; Wed, 18 Sep 2024 02:54:35 -0400 Received: from mail.loongson.cn ([114.242.206.163]) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sqoa7-0005OS-Sf for qemu-devel@nongnu.org; Wed, 18 Sep 2024 02:54:35 -0400 Received: from loongson.cn (unknown [10.2.5.213]) by gateway (Coremail) with SMTP id _____8Bx9+gieepmqH4KAA--.22902S3; Wed, 18 Sep 2024 14:54:26 +0800 (CST) Received: from localhost.localdomain (unknown [10.2.5.213]) by front1 (Coremail) with SMTP id qMiowMAxSeYieepmKlQJAA--.53115S2; Wed, 18 Sep 2024 14:54:26 +0800 (CST) From: Bibo Mao To: Song Gao , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Cc: Jiaxun Yang , qemu-devel@nongnu.org Subject: [PATCH v2 0/8] hw/intc/loongarch_pch: Split into pic common and pic Date: Wed, 18 Sep 2024 14:54:18 +0800 Message-Id: <20240918065426.2341823-1-maobibo@loongson.cn> X-Mailer: git-send-email 2.39.3 MIME-Version: 1.0 X-CM-TRANSID: qMiowMAxSeYieepmKlQJAA--.53115S2 X-CM-SenderInfo: xpdruxter6z05rqj20fqof0/ X-Coremail-Antispam: 1Uk129KBjDUn29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7KY7 ZEXasCq-sGcSsGvfJ3UbIjqfuFe4nvWSU5nxnvy29KBjDU0xBIdaVrnUUvcSsGvfC2Kfnx nUUI43ZEXa7xR_UUUUUUUUU== Received-SPF: pass client-ip=114.242.206.163; envelope-from=maobibo@loongson.cn; helo=mail.loongson.cn X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org In order to support irqchip_in_kenrel method, split loongarch pch pic driver into two parts, pic common and pic TCG driver. LoongArch pic common driver includes vmstate and property interface, also vmstate load and store interface is defined in pic common driver. In future LoongArch pic kvm driver can inherit from pic common driver. --- v1 ... v2: 1. Reorganize the patchset, put macro and structure moving patch as first one 2. Split the patchset with smaller patch, so that it is easier to review --- Bibo Mao (8): include: Add loongarch_pic_common header file include: Move struct LoongArchPCHPIC to loongarch_pic_common header file hw/intc/loongarch_pch: Merge instance_init() into realize() hw/intc/loongarch_pch: Rename LoongArchPCHPIC with LoongArchPICCommonState hw/intc/loongarch_pch: Move some functions to file loongarch_pic_common hw/intc/loongarch_pch: Inherit from loongarch_pic_common hw/intc/loongarch_pch: Add pre_save and post_load interfaces hw/intc/loongarch_pch: Code cleanup about loongarch_pch_pic hw/intc/loongarch_pch_pic.c | 106 ++++++++----------------- hw/intc/loongarch_pic_common.c | 97 ++++++++++++++++++++++ hw/intc/meson.build | 2 +- hw/loongarch/virt.c | 2 +- include/hw/intc/loongarch_pch_pic.h | 70 ++++------------ include/hw/intc/loongarch_pic_common.h | 82 +++++++++++++++++++ 6 files changed, 230 insertions(+), 129 deletions(-) create mode 100644 hw/intc/loongarch_pic_common.c create mode 100644 include/hw/intc/loongarch_pic_common.h base-commit: 2b81c046252fbfb375ad30632362fc16e6e22bd5