qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 1/6] arm: Uniquely name imx25 I2C buses.


From: Alastair D'Silva
Subject: Re: [Qemu-devel] [PATCH v2 1/6] arm: Uniquely name imx25 I2C buses.
Date: Fri, 02 Dec 2016 09:45:06 +1100

On Thu, 2016-12-01 at 13:31 +0100, Cédric Le Goater wrote:

> On 12/01/2016 01:42 AM, Alastair D'Silva wrote:
> > On Wed, 2016-11-30 at 09:18 +0100, Cédric Le Goater wrote:
> > > On 11/30/2016 06:36 AM, Alastair D'Silva wrote:
<snip>
> > > > diff --git a/hw/i2c/imx_i2c.c b/hw/i2c/imx_i2c.c
> > > > index 37e5a62..7be10fb 100644
> > > > --- a/hw/i2c/imx_i2c.c
> > > > +++ b/hw/i2c/imx_i2c.c
> > > > @@ -305,12 +305,16 @@ static const VMStateDescription
> > > > imx_i2c_vmstate = {
> > > >  static void imx_i2c_realize(DeviceState *dev, Error **errp)
> > > >  {
> > > >      IMXI2CState *s = IMX_I2C(dev);
> > > > +    static int bus_count;
> > > 
> > > hmm, the static is ugly :/ 
> > > 
> > > Isn't there other ways to achieve this naming ? 
> > > 
> > > Thanks,
> > > 
> > > C.  
> > > 
> > 
> > I'm not seeing an obvious way around it. The busses are realized
> > independently (so I can't implement what we do with the aspeed i2c
> > busses), and it is named before fsl-imx25:fsl_imx25_realize() can
> > apply
> > specific properties to the bus.
> > 
> > If you have any suggestions, I'm all ears.
> 
> What about that ? 
> 
>       @@ -310,7 +310,7 @@ static void imx_i2c_realize(DeviceState
>                                  IMX_I2C_MEM_SIZE);
>            sysbus_init_mmio(SYS_BUS_DEVICE(dev), &s->iomem);
>            sysbus_init_irq(SYS_BUS_DEVICE(dev), &s->irq);
>       -    s->bus = i2c_init_bus(DEVICE(dev), "i2c");
>       +    s->bus = i2c_init_bus(DEVICE(dev), NULL);
>        }
>  
>  static void imx_i2c_class_init(ObjectClass *klass, void *data)
> 
> Which should name automatically the I2C objects :
> 
>       (qemu) info qom-tree 
>       /machine (imx25-pdk-machine)
>         /peripheral (container)
>         /soc (fsl,imx25)
>         /peripheral-anon (container)
>         /unattached (container)
>           /device[0] (arm926-arm-cpu)
>             /unnamed-gpio-in[1] (irq)
>             /unnamed-gpio-in[3] (irq)
>             /unnamed-gpio-in[2] (irq)
>             /unnamed-gpio-in[0] (irq)
> 
>           /device[15] (imx.i2c)
>             /imx.i2c[0] (qemu:memory-region)
>             /i2c-bus.0 (i2c-bus)
>           /device[17] (imx.i2c)
>             /imx.i2c[0] (qemu:memory-region)
>             /i2c-bus.2 (i2c-bus)
>           /device[16] (imx.i2c)
>             /imx.i2c[0] (qemu:memory-region)
>             /i2c-bus.1 (i2c-bus)
>          ....
> 
> 
> Cheers,
> 
> C. 

Oh, great, that looks like a much better solution, thanks :)

-- 
Alastair D'Silva           mob: 0423 762 819
skype:
alastair_dsilva    
Twitter: @EvilDeece
blog: http://alastair.d-silva.org


reply via email to

[Prev in Thread] Current Thread [Next in Thread]