Add all inmate console definitions to the cell config of the inmate.

Later, the hypervisor will take the definition and copy it over to the
communication region that may be accessed by the inmate.

This patch changes the structure of struct cell_desc, so increase the
header revision, and align jailhouse-cell-linux accordingly.

Note:
Addresses of those consoles are taken from mach.h

Signed-off-by: Ralf Ramsauer <[email protected]>
---
 configs/arm/bananapi-gic-demo.c            | 10 ++++++++++
 configs/arm/bananapi-linux-demo.c          | 10 ++++++++++
 configs/arm/bananapi-uart-demo.c           | 10 ++++++++++
 configs/arm/emtrion-rzg1e-linux-demo.c     | 10 ++++++++++
 configs/arm/emtrion-rzg1e-uart-demo.c      | 10 ++++++++++
 configs/arm/emtrion-rzg1h-linux-demo.c     | 10 ++++++++++
 configs/arm/emtrion-rzg1h-uart-demo.c      | 10 ++++++++++
 configs/arm/emtrion-rzg1m-linux-demo.c     | 10 ++++++++++
 configs/arm/emtrion-rzg1m-uart-demo.c      | 10 ++++++++++
 configs/arm/jetson-tk1-demo.c              | 10 ++++++++++
 configs/arm/jetson-tk1-linux-demo.c        | 10 ++++++++++
 configs/arm/orangepi0-gic-demo.c           |  7 +++++++
 configs/arm/orangepi0-linux-demo.c         |  7 +++++++
 configs/arm/vexpress-gic-demo.c            |  7 +++++++
 configs/arm/vexpress-linux-demo.c          |  7 +++++++
 configs/arm/vexpress-uart-demo.c           |  7 +++++++
 configs/arm64/amd-seattle-gic-demo.c       |  7 +++++++
 configs/arm64/amd-seattle-linux-demo.c     |  7 +++++++
 configs/arm64/amd-seattle-uart-demo.c      |  7 +++++++
 configs/arm64/espressobin-gic-demo.c       |  7 +++++++
 configs/arm64/espressobin-linux-demo.c     |  7 +++++++
 configs/arm64/foundation-v8-gic-demo.c     |  7 +++++++
 configs/arm64/foundation-v8-linux-demo.c   |  7 +++++++
 configs/arm64/foundation-v8-uart-demo.c    |  7 +++++++
 configs/arm64/hikey-gic-demo.c             |  7 +++++++
 configs/arm64/hikey-linux-demo.c           |  7 +++++++
 configs/arm64/imx8mq-gic-demo.c            |  7 +++++++
 configs/arm64/jetson-tx1-demo.c            |  7 +++++++
 configs/arm64/jetson-tx1-linux-demo.c      |  7 +++++++
 configs/arm64/jetson-tx2-demo.c            |  7 +++++++
 configs/arm64/qemu-arm64-gic-demo.c        |  7 +++++++
 configs/arm64/qemu-arm64-linux-demo.c      |  7 +++++++
 configs/arm64/zynqmp-zcu102-gic-demo.c     |  7 +++++++
 configs/arm64/zynqmp-zcu102-linux-demo-2.c |  7 +++++++
 configs/arm64/zynqmp-zcu102-linux-demo.c   |  7 +++++++
 include/jailhouse/cell-config.h            |  2 ++
 36 files changed, 280 insertions(+)

diff --git a/configs/arm/bananapi-gic-demo.c b/configs/arm/bananapi-gic-demo.c
index a96e9cfb..881207ee 100644
--- a/configs/arm/bananapi-gic-demo.c
+++ b/configs/arm/bananapi-gic-demo.c
@@ -31,6 +31,16 @@ struct {
 
                .cpu_set_size = sizeof(config.cpus),
                .num_memory_regions = ARRAY_SIZE(config.mem_regions),
+
+               .console = {
+                       .address = 0x01c29c00,
+                       .clock_reg = 0x01c2006c,
+                       .gate_nr = 23,
+                       .divider = 0x0d,
+                       .flags = JAILHOUSE_CON1_TYPE_8250 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/bananapi-linux-demo.c 
b/configs/arm/bananapi-linux-demo.c
index 93d401c6..50b2bb06 100644
--- a/configs/arm/bananapi-linux-demo.c
+++ b/configs/arm/bananapi-linux-demo.c
@@ -37,6 +37,16 @@ struct {
                .num_pci_devices = ARRAY_SIZE(config.pci_devices),
 
                .vpci_irq_base = 123,
+
+               .console = {
+                       .address = 0x01c29c00,
+                       .clock_reg = 0x01c2006c,
+                       .gate_nr = 23,
+                       .divider = 0x0d,
+                       .flags = JAILHOUSE_CON1_TYPE_8250 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/bananapi-uart-demo.c b/configs/arm/bananapi-uart-demo.c
index d33cd952..bd110146 100644
--- a/configs/arm/bananapi-uart-demo.c
+++ b/configs/arm/bananapi-uart-demo.c
@@ -31,6 +31,16 @@ struct {
 
                .cpu_set_size = sizeof(config.cpus),
                .num_memory_regions = ARRAY_SIZE(config.mem_regions),
+
+               .console = {
+                       .address = 0x01c29c00,
+                       .clock_reg = 0x01c2006c,
+                       .gate_nr = 23,
+                       .divider = 0x0d,
+                       .flags = JAILHOUSE_CON1_TYPE_8250 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/emtrion-rzg1e-linux-demo.c 
b/configs/arm/emtrion-rzg1e-linux-demo.c
index 7ddd20e7..f005d9a9 100644
--- a/configs/arm/emtrion-rzg1e-linux-demo.c
+++ b/configs/arm/emtrion-rzg1e-linux-demo.c
@@ -36,6 +36,16 @@ struct {
                .num_irqchips = ARRAY_SIZE(config.irqchips),
                /* .num_pci_devices = ARRAY_SIZE(config.pci_devices),
                .vpci_irq_base = 123, */
+
+               .console = {
+                       .address = 0xe6ee0000,
+                       .clock_reg = 0xe615014c,
+                       .gate_nr = 15,
+                       .divider = 0x10,
+                       .flags = JAILHOUSE_CON1_TYPE_HSCIF |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/emtrion-rzg1e-uart-demo.c 
b/configs/arm/emtrion-rzg1e-uart-demo.c
index c063b4c8..0af05bc7 100644
--- a/configs/arm/emtrion-rzg1e-uart-demo.c
+++ b/configs/arm/emtrion-rzg1e-uart-demo.c
@@ -31,6 +31,16 @@ struct {
 
                .cpu_set_size = sizeof(config.cpus),
                .num_memory_regions = ARRAY_SIZE(config.mem_regions),
+
+               .console = {
+                       .address = 0xe6ee0000,
+                       .clock_reg = 0xe615014c,
+                       .gate_nr = 15,
+                       .divider = 0x10,
+                       .flags = JAILHOUSE_CON1_TYPE_HSCIF |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/emtrion-rzg1h-linux-demo.c 
b/configs/arm/emtrion-rzg1h-linux-demo.c
index 97389245..ac0866c1 100644
--- a/configs/arm/emtrion-rzg1h-linux-demo.c
+++ b/configs/arm/emtrion-rzg1h-linux-demo.c
@@ -36,6 +36,16 @@ struct {
                .num_irqchips = ARRAY_SIZE(config.irqchips),
                /* .num_pci_devices = ARRAY_SIZE(config.pci_devices),
                .vpci_irq_base = 123, */
+
+               .console = {
+                       .address = 0xe6c40000,
+                       .clock_reg = 0xe6150138,
+                       .gate_nr = 4,
+                       .divider = 0x1b,
+                       .flags = JAILHOUSE_CON1_TYPE_SCIFA |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/emtrion-rzg1h-uart-demo.c 
b/configs/arm/emtrion-rzg1h-uart-demo.c
index 8bcfb9bd..597337c5 100644
--- a/configs/arm/emtrion-rzg1h-uart-demo.c
+++ b/configs/arm/emtrion-rzg1h-uart-demo.c
@@ -31,6 +31,16 @@ struct {
 
                .cpu_set_size = sizeof(config.cpus),
                .num_memory_regions = ARRAY_SIZE(config.mem_regions),
+
+               .console = {
+                       .address = 0xe6c40000,
+                       .clock_reg = 0xe6150138,
+                       .gate_nr = 4,
+                       .divider = 0x1b,
+                       .flags = JAILHOUSE_CON1_TYPE_SCIFA |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/emtrion-rzg1m-linux-demo.c 
b/configs/arm/emtrion-rzg1m-linux-demo.c
index e7893512..61f2ba3a 100644
--- a/configs/arm/emtrion-rzg1m-linux-demo.c
+++ b/configs/arm/emtrion-rzg1m-linux-demo.c
@@ -36,6 +36,16 @@ struct {
                .num_irqchips = ARRAY_SIZE(config.irqchips),
                /* .num_pci_devices = ARRAY_SIZE(config.pci_devices),
                .vpci_irq_base = 123, */
+
+               .console = {
+                       .address = 0xe6ee0000,
+                       .clock_reg = 0xe615014c,
+                       .gate_nr = 15,
+                       .divider = 0x10,
+                       .flags = JAILHOUSE_CON1_TYPE_HSCIF |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/emtrion-rzg1m-uart-demo.c 
b/configs/arm/emtrion-rzg1m-uart-demo.c
index 752f7aeb..a961f8c4 100644
--- a/configs/arm/emtrion-rzg1m-uart-demo.c
+++ b/configs/arm/emtrion-rzg1m-uart-demo.c
@@ -31,6 +31,16 @@ struct {
 
                .cpu_set_size = sizeof(config.cpus),
                .num_memory_regions = ARRAY_SIZE(config.mem_regions),
+
+               .console = {
+                       .address = 0xe6ee0000,
+                       .clock_reg = 0xe615014c,
+                       .gate_nr = 15,
+                       .divider = 0x10,
+                       .flags = JAILHOUSE_CON1_TYPE_HSCIF |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/jetson-tk1-demo.c b/configs/arm/jetson-tk1-demo.c
index 15c90e61..5a2ed067 100644
--- a/configs/arm/jetson-tk1-demo.c
+++ b/configs/arm/jetson-tk1-demo.c
@@ -37,6 +37,16 @@ struct {
                .num_memory_regions = ARRAY_SIZE(config.mem_regions),
 
                .cpu_reset_address = CONFIG_INMATE_BASE,
+
+               .console = {
+                       .address = 0x70006300,
+                       /* .clock_reg = 0x60006000 + 0x330, */
+                       /* .gate_nr = (65 % 32), */
+                       /* .divider = 0xdd, */
+                       .flags = JAILHOUSE_CON1_TYPE_8250 |
+                               JAILHOUSE_CON1_ACCESS_MMIO |
+                               JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/jetson-tk1-linux-demo.c 
b/configs/arm/jetson-tk1-linux-demo.c
index c66a6863..0e04c42b 100644
--- a/configs/arm/jetson-tk1-linux-demo.c
+++ b/configs/arm/jetson-tk1-linux-demo.c
@@ -37,6 +37,16 @@ struct {
                .num_pci_devices = ARRAY_SIZE(config.pci_devices),
 
                .vpci_irq_base = 152,
+
+               .console = {
+                       .address = 0x70006300,
+                       /* .clock_reg = 0x60006000 + 0x330, */
+                       /* .gate_nr = (65 % 32), */
+                       /* .divider = 0xdd, */
+                       .flags = JAILHOUSE_CON1_TYPE_8250 |
+                               JAILHOUSE_CON1_ACCESS_MMIO |
+                               JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/orangepi0-gic-demo.c b/configs/arm/orangepi0-gic-demo.c
index fe199bcd..a391ad53 100644
--- a/configs/arm/orangepi0-gic-demo.c
+++ b/configs/arm/orangepi0-gic-demo.c
@@ -31,6 +31,13 @@ struct {
 
                .cpu_set_size = sizeof(config.cpus),
                .num_memory_regions = ARRAY_SIZE(config.mem_regions),
+
+               .console = {
+                       .address = 0x01c28000,
+                       .flags = JAILHOUSE_CON1_TYPE_8250 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/orangepi0-linux-demo.c 
b/configs/arm/orangepi0-linux-demo.c
index a3da1053..a561491a 100644
--- a/configs/arm/orangepi0-linux-demo.c
+++ b/configs/arm/orangepi0-linux-demo.c
@@ -37,6 +37,13 @@ struct {
                .num_pci_devices = ARRAY_SIZE(config.pci_devices),
 
                .vpci_irq_base = 123,
+
+               .console = {
+                       .address = 0x01c28000,
+                       .flags = JAILHOUSE_CON1_TYPE_8250 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/vexpress-gic-demo.c b/configs/arm/vexpress-gic-demo.c
index fd59dfa2..1e109c10 100644
--- a/configs/arm/vexpress-gic-demo.c
+++ b/configs/arm/vexpress-gic-demo.c
@@ -34,6 +34,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0x1c090000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/vexpress-linux-demo.c 
b/configs/arm/vexpress-linux-demo.c
index 7f1b8198..63247757 100644
--- a/configs/arm/vexpress-linux-demo.c
+++ b/configs/arm/vexpress-linux-demo.c
@@ -35,6 +35,13 @@ struct {
                .num_irqchips = 1,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0x1c090000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm/vexpress-uart-demo.c b/configs/arm/vexpress-uart-demo.c
index eedcad90..829d288d 100644
--- a/configs/arm/vexpress-uart-demo.c
+++ b/configs/arm/vexpress-uart-demo.c
@@ -34,6 +34,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0x1c090000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/amd-seattle-gic-demo.c 
b/configs/arm64/amd-seattle-gic-demo.c
index aaccdf25..36e5c16b 100644
--- a/configs/arm64/amd-seattle-gic-demo.c
+++ b/configs/arm64/amd-seattle-gic-demo.c
@@ -34,6 +34,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0xe1010000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/amd-seattle-linux-demo.c 
b/configs/arm64/amd-seattle-linux-demo.c
index 88b9740d..6a7efe95 100644
--- a/configs/arm64/amd-seattle-linux-demo.c
+++ b/configs/arm64/amd-seattle-linux-demo.c
@@ -35,6 +35,13 @@ struct {
                .num_memory_regions = ARRAY_SIZE(config.mem_regions),
                .num_irqchips = ARRAY_SIZE(config.irqchips),
                .num_pci_devices = ARRAY_SIZE(config.pci_devices),
+
+               .console = {
+                       .address = 0xe1010000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/amd-seattle-uart-demo.c 
b/configs/arm64/amd-seattle-uart-demo.c
index b620919b..d29f9ae2 100644
--- a/configs/arm64/amd-seattle-uart-demo.c
+++ b/configs/arm64/amd-seattle-uart-demo.c
@@ -34,6 +34,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0xe1010000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/espressobin-gic-demo.c 
b/configs/arm64/espressobin-gic-demo.c
index 2cd1e5cd..ce586dc2 100644
--- a/configs/arm64/espressobin-gic-demo.c
+++ b/configs/arm64/espressobin-gic-demo.c
@@ -34,6 +34,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0xd0012000,
+                       .flags = JAILHOUSE_CON1_TYPE_MVEBU |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/espressobin-linux-demo.c 
b/configs/arm64/espressobin-linux-demo.c
index 1d358c31..9cc84140 100644
--- a/configs/arm64/espressobin-linux-demo.c
+++ b/configs/arm64/espressobin-linux-demo.c
@@ -37,6 +37,13 @@ struct {
                .num_pci_devices = ARRAY_SIZE(config.pci_devices),
 
                .vpci_irq_base = 140-32,
+
+               .console = {
+                       .address = 0xd0012000,
+                       .flags = JAILHOUSE_CON1_TYPE_MVEBU |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/foundation-v8-gic-demo.c 
b/configs/arm64/foundation-v8-gic-demo.c
index 02a8f38b..2b35c352 100644
--- a/configs/arm64/foundation-v8-gic-demo.c
+++ b/configs/arm64/foundation-v8-gic-demo.c
@@ -34,6 +34,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0x1c090000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/foundation-v8-linux-demo.c 
b/configs/arm64/foundation-v8-linux-demo.c
index 1601a4f0..fbf65d3d 100644
--- a/configs/arm64/foundation-v8-linux-demo.c
+++ b/configs/arm64/foundation-v8-linux-demo.c
@@ -35,6 +35,13 @@ struct {
                .num_irqchips = 1,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0x1c090000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/foundation-v8-uart-demo.c 
b/configs/arm64/foundation-v8-uart-demo.c
index bde46352..ce7d67e2 100644
--- a/configs/arm64/foundation-v8-uart-demo.c
+++ b/configs/arm64/foundation-v8-uart-demo.c
@@ -34,6 +34,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0x1c090000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/hikey-gic-demo.c b/configs/arm64/hikey-gic-demo.c
index f5618863..596cd2ad 100644
--- a/configs/arm64/hikey-gic-demo.c
+++ b/configs/arm64/hikey-gic-demo.c
@@ -34,6 +34,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0xf7113000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/hikey-linux-demo.c b/configs/arm64/hikey-linux-demo.c
index 57cfb959..df85fde3 100644
--- a/configs/arm64/hikey-linux-demo.c
+++ b/configs/arm64/hikey-linux-demo.c
@@ -37,6 +37,13 @@ struct {
                .num_pci_devices = ARRAY_SIZE(config.pci_devices),
 
                .vpci_irq_base = 143-32,
+
+               .console = {
+                       .address = 0xf7113000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/imx8mq-gic-demo.c b/configs/arm64/imx8mq-gic-demo.c
index 7f13f7ae..d33e6b83 100644
--- a/configs/arm64/imx8mq-gic-demo.c
+++ b/configs/arm64/imx8mq-gic-demo.c
@@ -31,6 +31,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0x30860000,
+                       .flags = JAILHOUSE_CON1_TYPE_IMX |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/jetson-tx1-demo.c b/configs/arm64/jetson-tx1-demo.c
index e369d00b..3d904ece 100644
--- a/configs/arm64/jetson-tx1-demo.c
+++ b/configs/arm64/jetson-tx1-demo.c
@@ -31,6 +31,13 @@ struct {
 
                .cpu_set_size = sizeof(config.cpus),
                .num_memory_regions = ARRAY_SIZE(config.mem_regions),
+
+               .console = {
+                       .address = 0x70006000,
+                       .flags = JAILHOUSE_CON1_TYPE_8250 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/jetson-tx1-linux-demo.c 
b/configs/arm64/jetson-tx1-linux-demo.c
index 8ea66a32..084f64a5 100644
--- a/configs/arm64/jetson-tx1-linux-demo.c
+++ b/configs/arm64/jetson-tx1-linux-demo.c
@@ -46,6 +46,13 @@ struct {
                .vpci_irq_base = 152,
 
                .cpu_reset_address = CONFIG_INMATE_BASE,
+
+               .console = {
+                       .address = 0x70006000,
+                       .flags = JAILHOUSE_CON1_TYPE_8250 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/jetson-tx2-demo.c b/configs/arm64/jetson-tx2-demo.c
index 93b3fbf9..e3c87eb3 100644
--- a/configs/arm64/jetson-tx2-demo.c
+++ b/configs/arm64/jetson-tx2-demo.c
@@ -26,6 +26,13 @@ struct {
 
                .cpu_set_size = sizeof(config.cpus),
                .num_memory_regions = ARRAY_SIZE(config.mem_regions),
+
+               .console = {
+                       .address = 0x3100000,
+                       .flags = JAILHOUSE_CON1_TYPE_8250 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/qemu-arm64-gic-demo.c 
b/configs/arm64/qemu-arm64-gic-demo.c
index 33e95dc3..5ee2ddc3 100644
--- a/configs/arm64/qemu-arm64-gic-demo.c
+++ b/configs/arm64/qemu-arm64-gic-demo.c
@@ -34,6 +34,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0x09000000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/qemu-arm64-linux-demo.c 
b/configs/arm64/qemu-arm64-linux-demo.c
index b72d6ab6..4aba161d 100644
--- a/configs/arm64/qemu-arm64-linux-demo.c
+++ b/configs/arm64/qemu-arm64-linux-demo.c
@@ -38,6 +38,13 @@ struct {
                .num_pci_devices = ARRAY_SIZE(config.pci_devices),
 
                .vpci_irq_base = 140-32,
+
+               .console = {
+                       .address = 0x09000000,
+                       .flags = JAILHOUSE_CON1_TYPE_PL011 |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/zynqmp-zcu102-gic-demo.c 
b/configs/arm64/zynqmp-zcu102-gic-demo.c
index a12799c0..d03c9d00 100644
--- a/configs/arm64/zynqmp-zcu102-gic-demo.c
+++ b/configs/arm64/zynqmp-zcu102-gic-demo.c
@@ -34,6 +34,13 @@ struct {
                .num_irqchips = 0,
                .pio_bitmap_size = 0,
                .num_pci_devices = 0,
+
+               .console = {
+                       .address = 0xff010000,
+                       .flags = JAILHOUSE_CON1_TYPE_XUARTPS |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/zynqmp-zcu102-linux-demo-2.c 
b/configs/arm64/zynqmp-zcu102-linux-demo-2.c
index 1091712c..54a6ac88 100644
--- a/configs/arm64/zynqmp-zcu102-linux-demo-2.c
+++ b/configs/arm64/zynqmp-zcu102-linux-demo-2.c
@@ -37,6 +37,13 @@ struct {
                .num_pci_devices = ARRAY_SIZE(config.pci_devices),
 
                .vpci_irq_base = 144-32,
+
+               .console = {
+                       .address = 0xff010000,
+                       .flags = JAILHOUSE_CON1_TYPE_XUARTPS |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/configs/arm64/zynqmp-zcu102-linux-demo.c 
b/configs/arm64/zynqmp-zcu102-linux-demo.c
index d226ca7a..d208df40 100644
--- a/configs/arm64/zynqmp-zcu102-linux-demo.c
+++ b/configs/arm64/zynqmp-zcu102-linux-demo.c
@@ -37,6 +37,13 @@ struct {
                .num_pci_devices = ARRAY_SIZE(config.pci_devices),
 
                .vpci_irq_base = 140-32,
+
+               .console = {
+                       .address = 0xff010000,
+                       .flags = JAILHOUSE_CON1_TYPE_XUARTPS |
+                                JAILHOUSE_CON1_ACCESS_MMIO |
+                                JAILHOUSE_CON1_REGDIST_4,
+               },
        },
 
        .cpus = {
diff --git a/include/jailhouse/cell-config.h b/include/jailhouse/cell-config.h
index 7af7d6a8..09a45a40 100644
--- a/include/jailhouse/cell-config.h
+++ b/include/jailhouse/cell-config.h
@@ -81,6 +81,8 @@ struct jailhouse_cell_desc {
 
        __u64 cpu_reset_address;
        __u64 msg_reply_timeout;
+
+       struct jailhouse_console console;
 } __attribute__((packed));
 
 #define JAILHOUSE_MEM_READ             0x0001
-- 
2.17.0

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to