From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=45571 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Or5qY-0006kH-QQ for qemu-devel@nongnu.org; Thu, 02 Sep 2010 05:12:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Or5qW-0002E4-4C for qemu-devel@nongnu.org; Thu, 02 Sep 2010 05:12:38 -0400 Received: from mail.valinux.co.jp ([210.128.90.3]:44559) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Or5qV-0002DU-L1 for qemu-devel@nongnu.org; Thu, 02 Sep 2010 05:12:36 -0400 From: Isaku Yamahata Date: Thu, 2 Sep 2010 18:25:03 +0900 Message-Id: Subject: [Qemu-devel] [PATCH 0/6 v3] introduce qbus reset callback and pci bus reset clean up List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: gleb@redhat.com, glommer@redhat.com, blauwirbel@gmail.com, yamahata@valinux.co.jp, alex.williamson@redhat.com, avi@redhat.com, pbonzini@redhat.com I recreated the patch series based on your qbus walker of git://repo.or.cz/qemu/aliguori.git Anthony, can you please review the first three patches and merge them if okay? BTW what's the merge plan of the repo? Any chance to merge the walker part first? Patch description: Introduce bus reset callback at qbus layer and clean up pci bus reset by utilizing it. At last implement pci secondary bus reset which is my motivation. But I suppose scsi bus and ide bus also can take advantage of this patch series. Changes v2 -> v3: - rebased to Anthony's qdev clean up tree. - utilize qbus walker. Changes v1 -> v2: - addressed personal feed back from Gerd. - reset signal are triggered by bus and propagated down into device. - Only 5/8 is modified. Other patches remains same. Isaku Yamahata (6): qdev: Make qbus_walk_children() call busfn for root bus. qdev: introduce reset call back for qbus level. qdev: introduce a helper function which triggers reset from a given device. pci: make pci reset use qdev reset frame work. pci: teach pci devices that have reset callback how to reset common registers. pci bridge: implement secondary bus reset. hw/e1000.c | 1 + hw/lsi53c895a.c | 2 + hw/pci.c | 45 +++++++++++++++++++++++++++++++++---- hw/pci.h | 2 + hw/pcnet.c | 1 + hw/qdev-core.h | 6 +++++ hw/qdev.c | 66 ++++++++++++++++++++++++++++++++++++------------------ hw/rtl8139.c | 2 + hw/virtio-pci.c | 1 + 9 files changed, 99 insertions(+), 27 deletions(-)