From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43778) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WFQnJ-0001pG-Mk for qemu-devel@nongnu.org; Mon, 17 Feb 2014 11:11:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WFQnD-0002RO-Ma for qemu-devel@nongnu.org; Mon, 17 Feb 2014 11:11:45 -0500 Received: from mx1.redhat.com ([209.132.183.28]:30484) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WFQnD-0002RI-DY for qemu-devel@nongnu.org; Mon, 17 Feb 2014 11:11:39 -0500 Message-ID: <530234B6.1020307@redhat.com> Date: Mon, 17 Feb 2014 17:11:34 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <52FE3D0E.8070904@redhat.com> <52FE44DB.8030408@suse.de> <52FE4820.8050009@redhat.com> <5301D40F.2010506@redhat.com> <5301DC83.6030307@redhat.com> <5301E6AA.7000809@redhat.com> <53020C67.5040603@redhat.com> <53021CF6.5010808@redhat.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] Fwd: Trying to write a new device / virtio-i2c ? List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Alex David Cc: qemu-devel Il 17/02/2014 16:33, Alex David ha scritto: > If you need more than one bus, you need a new device exposing the > I2C bus, besides the new sensor devices. USB-I2C could be one such > device. > > So let me see if I understood well. USB-I2C (host QEMU device) seems a > good idea, I could normally do : qemu-system-i386 -device > usb-I2c,chardev=foo -device usb-i2c,chardev=bar -chardev > socket,path=/tmp/test0,server,nowait,id=foo -chardev > socket,path=/tmp/test1,server,nowait,id=bar. Almost. For QOM: -device usb-i2c,id=usb-i2c-0 -device i2c-my-sensor,address=0x48,bus=usb-i2c-0.0 For chardev: -device usb-i2c,id=usb-i2c-0 -chardev socket,path=/tmp/test0,server,nowait,id=chr-foo-0 -device i2c-my-sensor,address=0x48,bus=usb-i2c-0.0,chardev=chr-foo-0 Repeat for the other buses, replacing -0 with -1 and -2. > I need a "USB-I2C guest kernel driver" that would register a bus (i2c-1 > for chardev foo, i2c-2 for chardev bar etc...), I guess ? It exists already, drivers/i2c/busses/i2c-tiny-usb.c. Paolo