diff mbox series

[v4,10/19] boards.h: Ignore migration for SMBus devices on older machines

Message ID 20190128175458.27255-11-minyard@acm.org
State New
Headers show
Series [v4,01/19] i2c: Split smbus into parts | expand

Commit Message

Corey Minyard Jan. 28, 2019, 5:54 p.m. UTC
From: Corey Minyard <cminyard@mvista.com>


Migration capability is being added for pm_smbus and SMBus devices.
This change will allow backwards compatibility to be kept when
migrating back to an old qemu version.  Add a bool to the machine
class tho keep smbus migration from happening.  Future changes
will use this.

Signed-off-by: Corey Minyard <cminyard@mvista.com>

Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

---
 hw/i386/pc_piix.c   | 1 +
 hw/i386/pc_q35.c    | 1 +
 include/hw/boards.h | 1 +
 3 files changed, 3 insertions(+)

-- 
2.17.1

Comments

Eduardo Habkost Jan. 28, 2019, 6:08 p.m. UTC | #1
On Mon, Jan 28, 2019 at 11:54:49AM -0600, minyard@acm.org wrote:
> From: Corey Minyard <cminyard@mvista.com>

> 

> Migration capability is being added for pm_smbus and SMBus devices.

> This change will allow backwards compatibility to be kept when

> migrating back to an old qemu version.  Add a bool to the machine

> class tho keep smbus migration from happening.  Future changes

> will use this.

> 

> Signed-off-by: Corey Minyard <cminyard@mvista.com>

> Cc: Eduardo Habkost <ehabkost@redhat.com>

> Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>

> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

> ---

>  hw/i386/pc_piix.c   | 1 +

>  hw/i386/pc_q35.c    | 1 +

>  include/hw/boards.h | 1 +

>  3 files changed, 3 insertions(+)

> 

> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c

> index 6ba163ccbb..a8331b82f2 100644

> --- a/hw/i386/pc_piix.c

> +++ b/hw/i386/pc_piix.c

> @@ -431,6 +431,7 @@ static void pc_i440fx_machine_options(MachineClass *m)

>  static void pc_i440fx_4_0_machine_options(MachineClass *m)

>  {

>      pc_i440fx_machine_options(m);

> +    m->smbus_no_migration_support = true;

>      m->alias = "pc";

>      m->is_default = 1;

>  }

> diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c

> index 1689885cac..bafc73b2d9 100644

> --- a/hw/i386/pc_q35.c

> +++ b/hw/i386/pc_q35.c

> @@ -368,6 +368,7 @@ static void pc_q35_machine_options(MachineClass *m)

>  static void pc_q35_4_0_machine_options(MachineClass *m)

>  {

>      pc_q35_machine_options(m);

> +    m->smbus_no_migration_support = true;

>      m->alias = "q35";

>  }

>  


Wasn't this supposed to be added to pc_*_3_1_machine_options(),
so the flag is set to false on pc-*-4.0?

-- 
Eduardo
Corey Minyard Jan. 28, 2019, 6:22 p.m. UTC | #2
On Mon, Jan 28, 2019 at 04:08:59PM -0200, Eduardo Habkost wrote:
> On Mon, Jan 28, 2019 at 11:54:49AM -0600, minyard@acm.org wrote:

> > From: Corey Minyard <cminyard@mvista.com>

> > 

> > Migration capability is being added for pm_smbus and SMBus devices.

> > This change will allow backwards compatibility to be kept when

> > migrating back to an old qemu version.  Add a bool to the machine

> > class tho keep smbus migration from happening.  Future changes

> > will use this.

> > 

> > Signed-off-by: Corey Minyard <cminyard@mvista.com>

> > Cc: Eduardo Habkost <ehabkost@redhat.com>

> > Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>

> > Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

> > ---

> >  hw/i386/pc_piix.c   | 1 +

> >  hw/i386/pc_q35.c    | 1 +

> >  include/hw/boards.h | 1 +

> >  3 files changed, 3 insertions(+)

> > 

> > diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c

> > index 6ba163ccbb..a8331b82f2 100644

> > --- a/hw/i386/pc_piix.c

> > +++ b/hw/i386/pc_piix.c

> > @@ -431,6 +431,7 @@ static void pc_i440fx_machine_options(MachineClass *m)

> >  static void pc_i440fx_4_0_machine_options(MachineClass *m)

> >  {

> >      pc_i440fx_machine_options(m);

> > +    m->smbus_no_migration_support = true;

> >      m->alias = "pc";

> >      m->is_default = 1;

> >  }

> > diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c

> > index 1689885cac..bafc73b2d9 100644

> > --- a/hw/i386/pc_q35.c

> > +++ b/hw/i386/pc_q35.c

> > @@ -368,6 +368,7 @@ static void pc_q35_machine_options(MachineClass *m)

> >  static void pc_q35_4_0_machine_options(MachineClass *m)

> >  {

> >      pc_q35_machine_options(m);

> > +    m->smbus_no_migration_support = true;

> >      m->alias = "q35";

> >  }

> >  

> 

> Wasn't this supposed to be added to pc_*_3_1_machine_options(),

> so the flag is set to false on pc-*-4.0?


Yes, I stuck it in the wrong place.  I'll fix it.

-corey

> 

> -- 

> Eduardo
diff mbox series

Patch

diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 6ba163ccbb..a8331b82f2 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -431,6 +431,7 @@  static void pc_i440fx_machine_options(MachineClass *m)
 static void pc_i440fx_4_0_machine_options(MachineClass *m)
 {
     pc_i440fx_machine_options(m);
+    m->smbus_no_migration_support = true;
     m->alias = "pc";
     m->is_default = 1;
 }
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index 1689885cac..bafc73b2d9 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -368,6 +368,7 @@  static void pc_q35_machine_options(MachineClass *m)
 static void pc_q35_4_0_machine_options(MachineClass *m)
 {
     pc_q35_machine_options(m);
+    m->smbus_no_migration_support = true;
     m->alias = "q35";
 }
 
diff --git a/include/hw/boards.h b/include/hw/boards.h
index 02f114085f..e7f7b85008 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -207,6 +207,7 @@  struct MachineClass {
     void (*numa_auto_assign_ram)(MachineClass *mc, NodeInfo *nodes,
                                  int nb_nodes, ram_addr_t size);
     bool ignore_boot_device_suffixes;
+    bool smbus_no_migration_support;
 
     HotplugHandler *(*get_hotplug_handler)(MachineState *machine,
                                            DeviceState *dev);