All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/8] hw/sh4: Kconfig cleanups
@ 2021-02-22 14:15 Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 1/8] hw/sh4: Add missing license Philippe Mathieu-Daudé
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-22 14:15 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Philippe Mathieu-Daudé,
	Max Reitz, Marc-André Lureau, Paolo Bonzini,
	Alex Bennée

Missing review: 1 (license)

Since v3:
- Include full MIT license text (Peter)

Since v2:
- Added missing TC58128/SH_PCI Kconfig entries (Peter)

Since v1:
- Addressed Peter Maydell review comments from
https://www.mail-archive.com/qemu-block@nongnu.org/msg80599.html

Philippe Mathieu-Daudé (8):
  hw/sh4: Add missing license
  hw/sh4: Add missing Kconfig dependency on SH7750 for the R2D board
  hw/intc: Introduce SH_INTC Kconfig entry
  hw/char: Introduce SH_SCI Kconfig entry
  hw/timer: Introduce SH_TIMER Kconfig entry
  hw/block: Introduce TC58128 eeprom Kconfig entry
  hw/pci-host: Introduce SH_PCI Kconfig entry
  hw/sh4: Remove now unused CONFIG_SH4 from Kconfig

 include/hw/sh4/sh.h           | 31 ++++++++++++++++++++++++++++---
 hw/block/tc58128.c            | 26 ++++++++++++++++++++++++++
 hw/{sh4 => pci-host}/sh_pci.c |  0
 MAINTAINERS                   |  6 ++++++
 hw/block/Kconfig              |  3 +++
 hw/block/meson.build          |  2 +-
 hw/char/Kconfig               |  3 +++
 hw/char/meson.build           |  2 +-
 hw/intc/Kconfig               |  3 +++
 hw/intc/meson.build           |  2 +-
 hw/pci-host/Kconfig           |  4 ++++
 hw/pci-host/meson.build       |  1 +
 hw/sh4/Kconfig                | 12 ++++++------
 hw/sh4/meson.build            |  1 -
 hw/timer/Kconfig              |  4 ++++
 hw/timer/meson.build          |  2 +-
 16 files changed, 88 insertions(+), 14 deletions(-)
 rename hw/{sh4 => pci-host}/sh_pci.c (100%)

-- 
2.26.2



^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v4 1/8] hw/sh4: Add missing license
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
@ 2021-02-22 14:15 ` Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 2/8] hw/sh4: Add missing Kconfig dependency on SH7750 for the R2D board Philippe Mathieu-Daudé
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-22 14:15 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Philippe Mathieu-Daudé,
	Max Reitz, Samuel Tardieu, Marc-André Lureau, Paolo Bonzini,
	Alex Bennée

This code was introduced in commit 27c7ca7e775,
("SHIX board emulation (Samuel Tardieu)"). Use
the same license.

Cc: Samuel Tardieu <sam@rfc1149.net>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 include/hw/sh4/sh.h | 31 ++++++++++++++++++++++++++++---
 hw/block/tc58128.c  | 26 ++++++++++++++++++++++++++
 2 files changed, 54 insertions(+), 3 deletions(-)

diff --git a/include/hw/sh4/sh.h b/include/hw/sh4/sh.h
index 93f464bf4cd..becb5969790 100644
--- a/include/hw/sh4/sh.h
+++ b/include/hw/sh4/sh.h
@@ -1,6 +1,31 @@
-#ifndef QEMU_SH_H
-#define QEMU_SH_H
-/* Definitions for SH board emulation.  */
+/*
+ * Definitions for SH board emulation
+ *
+ * Copyright (c) 2005 Samuel Tardieu
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * SPDX-License-Identifier: MIT
+ */
+#ifndef QEMU_HW_SH_H
+#define QEMU_HW_SH_H
 
 #include "hw/sh4/sh_intc.h"
 #include "target/sh4/cpu-qom.h"
diff --git a/hw/block/tc58128.c b/hw/block/tc58128.c
index 9888f01ac60..bfc27ad8993 100644
--- a/hw/block/tc58128.c
+++ b/hw/block/tc58128.c
@@ -1,3 +1,29 @@
+/*
+ * TC58128 NAND EEPROM emulation
+ *
+ * Copyright (c) 2005 Samuel Tardieu
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ * SPDX-License-Identifier: MIT
+ */
 #include "qemu/osdep.h"
 #include "qemu/units.h"
 #include "hw/sh4/sh.h"
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 2/8] hw/sh4: Add missing Kconfig dependency on SH7750 for the R2D board
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 1/8] hw/sh4: Add missing license Philippe Mathieu-Daudé
@ 2021-02-22 14:15 ` Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 3/8] hw/intc: Introduce SH_INTC Kconfig entry Philippe Mathieu-Daudé
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-22 14:15 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Philippe Mathieu-Daudé,
	Max Reitz, Marc-André Lureau, Paolo Bonzini,
	Alex Bennée

r2d_init() calls sh7750_init() so depends on SH7750.Harmless
at the moment because nothing actually uses CONFIG_SH7750
(hw/sh4/meson.build always compiles sh7750.c and sh7750_regnames.c
unconditionally).

Fixes: 7ab58d4c841 ("sh4-softmmu.mak: express dependencies with Kconfig")
Reported-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 hw/sh4/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/sh4/Kconfig b/hw/sh4/Kconfig
index 4cbce3a0ed5..0452b4624ae 100644
--- a/hw/sh4/Kconfig
+++ b/hw/sh4/Kconfig
@@ -10,6 +10,7 @@ config R2D
     select PCI
     select SM501
     select SH4
+    select SH7750
 
 config SHIX
     bool
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 3/8] hw/intc: Introduce SH_INTC Kconfig entry
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 1/8] hw/sh4: Add missing license Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 2/8] hw/sh4: Add missing Kconfig dependency on SH7750 for the R2D board Philippe Mathieu-Daudé
@ 2021-02-22 14:15 ` Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 4/8] hw/char: Introduce SH_SCI " Philippe Mathieu-Daudé
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-22 14:15 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Philippe Mathieu-Daudé,
	Max Reitz, Marc-André Lureau, Paolo Bonzini,
	Alex Bennée

We want to be able to use the 'SH4' config for architecture
specific features. Add more fine-grained selection by adding
a CONFIG_SH_INTC selector for the SH4 interrupt controller.

Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 hw/intc/Kconfig     | 3 +++
 hw/intc/meson.build | 2 +-
 hw/sh4/Kconfig      | 1 +
 3 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/hw/intc/Kconfig b/hw/intc/Kconfig
index c18d11142a8..66bf0b90b47 100644
--- a/hw/intc/Kconfig
+++ b/hw/intc/Kconfig
@@ -53,6 +53,9 @@ config OMPIC
 config PPC_UIC
     bool
 
+config SH_INTC
+    bool
+
 config RX_ICU
     bool
 
diff --git a/hw/intc/meson.build b/hw/intc/meson.build
index 53cba115690..b3d9345a0d2 100644
--- a/hw/intc/meson.build
+++ b/hw/intc/meson.build
@@ -47,7 +47,7 @@
 specific_ss.add(when: 'CONFIG_RX_ICU', if_true: files('rx_icu.c'))
 specific_ss.add(when: 'CONFIG_S390_FLIC', if_true: files('s390_flic.c'))
 specific_ss.add(when: 'CONFIG_S390_FLIC_KVM', if_true: files('s390_flic_kvm.c'))
-specific_ss.add(when: 'CONFIG_SH4', if_true: files('sh_intc.c'))
+specific_ss.add(when: 'CONFIG_SH_INTC', if_true: files('sh_intc.c'))
 specific_ss.add(when: 'CONFIG_SIFIVE_CLINT', if_true: files('sifive_clint.c'))
 specific_ss.add(when: 'CONFIG_SIFIVE_PLIC', if_true: files('sifive_plic.c'))
 specific_ss.add(when: 'CONFIG_XICS', if_true: files('xics.c'))
diff --git a/hw/sh4/Kconfig b/hw/sh4/Kconfig
index 0452b4624ae..c2008c6a0d2 100644
--- a/hw/sh4/Kconfig
+++ b/hw/sh4/Kconfig
@@ -19,6 +19,7 @@ config SHIX
 
 config SH7750
     bool
+    select SH_INTC
 
 config SH4
     bool
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 4/8] hw/char: Introduce SH_SCI Kconfig entry
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
                   ` (2 preceding siblings ...)
  2021-02-22 14:15 ` [PATCH v4 3/8] hw/intc: Introduce SH_INTC Kconfig entry Philippe Mathieu-Daudé
@ 2021-02-22 14:15 ` Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 5/8] hw/timer: Introduce SH_TIMER " Philippe Mathieu-Daudé
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-22 14:15 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Philippe Mathieu-Daudé,
	Max Reitz, Marc-André Lureau, Paolo Bonzini,
	Alex Bennée

We want to be able to use the 'SH4' config for architecture
specific features. Add more fine-grained selection by adding
a CONFIG_SH_SCI selector for the SH4 serial controller.

Add the missing MAINTAINERS entries.

Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 MAINTAINERS         | 2 ++
 hw/char/Kconfig     | 3 +++
 hw/char/meson.build | 2 +-
 hw/sh4/Kconfig      | 1 +
 4 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 9b2aa18e1fe..b53a937714a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1388,6 +1388,7 @@ R2D
 M: Yoshinori Sato <ysato@users.sourceforge.jp>
 R: Magnus Damm <magnus.damm@gmail.com>
 S: Odd Fixes
+F: hw/char/sh_serial.c
 F: hw/sh4/r2d.c
 F: hw/intc/sh_intc.c
 F: include/hw/sh4/sh_intc.h
@@ -1396,6 +1397,7 @@ Shix
 M: Yoshinori Sato <ysato@users.sourceforge.jp>
 R: Magnus Damm <magnus.damm@gmail.com>
 S: Odd Fixes
+F: hw/char/sh_serial.c
 F: hw/sh4/shix.c
 F: hw/intc/sh_intc.c
 F: include/hw/sh4/sh_intc.h
diff --git a/hw/char/Kconfig b/hw/char/Kconfig
index 939bc447588..f6f4fffd1b7 100644
--- a/hw/char/Kconfig
+++ b/hw/char/Kconfig
@@ -50,6 +50,9 @@ config SCLPCONSOLE
 config TERMINAL3270
     bool
 
+config SH_SCI
+    bool
+
 config RENESAS_SCI
     bool
 
diff --git a/hw/char/meson.build b/hw/char/meson.build
index 196ac91fa29..afe9a0af88c 100644
--- a/hw/char/meson.build
+++ b/hw/char/meson.build
@@ -31,7 +31,7 @@
 softmmu_ss.add(when: 'CONFIG_RASPI', if_true: files('bcm2835_aux.c'))
 softmmu_ss.add(when: 'CONFIG_RENESAS_SCI', if_true: files('renesas_sci.c'))
 softmmu_ss.add(when: 'CONFIG_SIFIVE_UART', if_true: files('sifive_uart.c'))
-softmmu_ss.add(when: 'CONFIG_SH4', if_true: files('sh_serial.c'))
+softmmu_ss.add(when: 'CONFIG_SH_SCI', if_true: files('sh_serial.c'))
 softmmu_ss.add(when: 'CONFIG_STM32F2XX_USART', if_true: files('stm32f2xx_usart.c'))
 softmmu_ss.add(when: 'CONFIG_MCHP_PFSOC_MMUART', if_true: files('mchp_pfsoc_mmuart.c'))
 
diff --git a/hw/sh4/Kconfig b/hw/sh4/Kconfig
index c2008c6a0d2..47240aa97b7 100644
--- a/hw/sh4/Kconfig
+++ b/hw/sh4/Kconfig
@@ -20,6 +20,7 @@ config SHIX
 config SH7750
     bool
     select SH_INTC
+    select SH_SCI
 
 config SH4
     bool
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 5/8] hw/timer: Introduce SH_TIMER Kconfig entry
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
                   ` (3 preceding siblings ...)
  2021-02-22 14:15 ` [PATCH v4 4/8] hw/char: Introduce SH_SCI " Philippe Mathieu-Daudé
@ 2021-02-22 14:15 ` Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 6/8] hw/block: Introduce TC58128 eeprom " Philippe Mathieu-Daudé
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-22 14:15 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Philippe Mathieu-Daudé,
	Max Reitz, Marc-André Lureau, Paolo Bonzini,
	Alex Bennée

We want to be able to use the 'SH4' config for architecture
specific features. Add more fine-grained selection by adding
a CONFIG_SH_TIMER selector for the SH4 timer control unit.

Add the missing MAINTAINERS entries.

Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 MAINTAINERS          | 2 ++
 hw/sh4/Kconfig       | 2 +-
 hw/timer/Kconfig     | 4 ++++
 hw/timer/meson.build | 2 +-
 4 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index b53a937714a..a03557f4f7c 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1391,6 +1391,7 @@ S: Odd Fixes
 F: hw/char/sh_serial.c
 F: hw/sh4/r2d.c
 F: hw/intc/sh_intc.c
+F: hw/timer/sh_timer.c
 F: include/hw/sh4/sh_intc.h
 
 Shix
@@ -1400,6 +1401,7 @@ S: Odd Fixes
 F: hw/char/sh_serial.c
 F: hw/sh4/shix.c
 F: hw/intc/sh_intc.c
+F: hw/timer/sh_timer.c
 F: include/hw/sh4/sh_intc.h
 
 SPARC Machines
diff --git a/hw/sh4/Kconfig b/hw/sh4/Kconfig
index 47240aa97b7..e569470a614 100644
--- a/hw/sh4/Kconfig
+++ b/hw/sh4/Kconfig
@@ -21,7 +21,7 @@ config SH7750
     bool
     select SH_INTC
     select SH_SCI
+    select SH_TIMER
 
 config SH4
     bool
-    select PTIMER
diff --git a/hw/timer/Kconfig b/hw/timer/Kconfig
index 8749edfb6a5..18936ef55bf 100644
--- a/hw/timer/Kconfig
+++ b/hw/timer/Kconfig
@@ -36,6 +36,10 @@ config CMSDK_APB_DUALTIMER
     bool
     select PTIMER
 
+config SH_TIMER
+    bool
+    select PTIMER
+
 config RENESAS_TMR
     bool
 
diff --git a/hw/timer/meson.build b/hw/timer/meson.build
index be343f68fed..26c2701fd78 100644
--- a/hw/timer/meson.build
+++ b/hw/timer/meson.build
@@ -30,7 +30,7 @@
 softmmu_ss.add(when: 'CONFIG_PUV3', if_true: files('puv3_ost.c'))
 softmmu_ss.add(when: 'CONFIG_PXA2XX', if_true: files('pxa2xx_timer.c'))
 softmmu_ss.add(when: 'CONFIG_RASPI', if_true: files('bcm2835_systmr.c'))
-softmmu_ss.add(when: 'CONFIG_SH4', if_true: files('sh_timer.c'))
+softmmu_ss.add(when: 'CONFIG_SH_TIMER', if_true: files('sh_timer.c'))
 softmmu_ss.add(when: 'CONFIG_SLAVIO', if_true: files('slavio_timer.c'))
 softmmu_ss.add(when: 'CONFIG_STM32F2XX_TIMER', if_true: files('stm32f2xx_timer.c'))
 softmmu_ss.add(when: 'CONFIG_XILINX', if_true: files('xilinx_timer.c'))
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 6/8] hw/block: Introduce TC58128 eeprom Kconfig entry
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
                   ` (4 preceding siblings ...)
  2021-02-22 14:15 ` [PATCH v4 5/8] hw/timer: Introduce SH_TIMER " Philippe Mathieu-Daudé
@ 2021-02-22 14:15 ` Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 7/8] hw/pci-host: Introduce SH_PCI " Philippe Mathieu-Daudé
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-22 14:15 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Philippe Mathieu-Daudé,
	Max Reitz, Marc-André Lureau, Paolo Bonzini,
	Alex Bennée

Add more fine-grained selection by adding a CONFIG_TC58128
selector for the TC58128 eeprom.

As this device is only used by the Shix machine, add an entry
to the proper section in MAINTAINERS.

Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 MAINTAINERS          | 1 +
 hw/block/Kconfig     | 3 +++
 hw/block/meson.build | 2 +-
 hw/sh4/Kconfig       | 1 +
 4 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index a03557f4f7c..a0cb89161cb 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1398,6 +1398,7 @@ Shix
 M: Yoshinori Sato <ysato@users.sourceforge.jp>
 R: Magnus Damm <magnus.damm@gmail.com>
 S: Odd Fixes
+F: hw/block/tc58128.c
 F: hw/char/sh_serial.c
 F: hw/sh4/shix.c
 F: hw/intc/sh_intc.c
diff --git a/hw/block/Kconfig b/hw/block/Kconfig
index 2d17f481adc..4fcd1521668 100644
--- a/hw/block/Kconfig
+++ b/hw/block/Kconfig
@@ -22,6 +22,9 @@ config ECC
 config ONENAND
     bool
 
+config TC58128
+    bool
+
 config NVME_PCI
     bool
     default y if PCI_DEVICES
diff --git a/hw/block/meson.build b/hw/block/meson.build
index 602ca6c8541..4bf994c64ff 100644
--- a/hw/block/meson.build
+++ b/hw/block/meson.build
@@ -12,7 +12,7 @@
 softmmu_ss.add(when: 'CONFIG_SSI_M25P80', if_true: files('m25p80.c'))
 softmmu_ss.add(when: 'CONFIG_SWIM', if_true: files('swim.c'))
 softmmu_ss.add(when: 'CONFIG_XEN', if_true: files('xen-block.c'))
-softmmu_ss.add(when: 'CONFIG_SH4', if_true: files('tc58128.c'))
+softmmu_ss.add(when: 'CONFIG_TC58128', if_true: files('tc58128.c'))
 softmmu_ss.add(when: 'CONFIG_NVME_PCI', if_true: files('nvme.c', 'nvme-ns.c'))
 
 specific_ss.add(when: 'CONFIG_VIRTIO_BLK', if_true: files('virtio-blk.c'))
diff --git a/hw/sh4/Kconfig b/hw/sh4/Kconfig
index e569470a614..34c01dadde9 100644
--- a/hw/sh4/Kconfig
+++ b/hw/sh4/Kconfig
@@ -16,6 +16,7 @@ config SHIX
     bool
     select SH7750
     select SH4
+    select TC58128
 
 config SH7750
     bool
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 7/8] hw/pci-host: Introduce SH_PCI Kconfig entry
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
                   ` (5 preceding siblings ...)
  2021-02-22 14:15 ` [PATCH v4 6/8] hw/block: Introduce TC58128 eeprom " Philippe Mathieu-Daudé
@ 2021-02-22 14:15 ` Philippe Mathieu-Daudé
  2021-02-22 14:15 ` [PATCH v4 8/8] hw/sh4: Remove now unused CONFIG_SH4 from Kconfig Philippe Mathieu-Daudé
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-22 14:15 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Philippe Mathieu-Daudé,
	Max Reitz, Marc-André Lureau, Paolo Bonzini,
	Alex Bennée

We want to be able to use the 'SH4' config for architecture
specific features. Add more fine-grained selection by adding
a CONFIG_SH_PCI selector for the SH4 PCI controller.
Move the file with the other PCI host devices in hw/pci-host
and add its missing MAINTAINERS entries.

Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 hw/{sh4 => pci-host}/sh_pci.c | 0
 MAINTAINERS                   | 1 +
 hw/pci-host/Kconfig           | 4 ++++
 hw/pci-host/meson.build       | 1 +
 hw/sh4/Kconfig                | 1 +
 hw/sh4/meson.build            | 1 -
 6 files changed, 7 insertions(+), 1 deletion(-)
 rename hw/{sh4 => pci-host}/sh_pci.c (100%)

diff --git a/hw/sh4/sh_pci.c b/hw/pci-host/sh_pci.c
similarity index 100%
rename from hw/sh4/sh_pci.c
rename to hw/pci-host/sh_pci.c
diff --git a/MAINTAINERS b/MAINTAINERS
index a0cb89161cb..e39997f129a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1391,6 +1391,7 @@ S: Odd Fixes
 F: hw/char/sh_serial.c
 F: hw/sh4/r2d.c
 F: hw/intc/sh_intc.c
+F: hw/pci-host/sh_pci.c
 F: hw/timer/sh_timer.c
 F: include/hw/sh4/sh_intc.h
 
diff --git a/hw/pci-host/Kconfig b/hw/pci-host/Kconfig
index 8b8c763c28c..2ccc96f02ce 100644
--- a/hw/pci-host/Kconfig
+++ b/hw/pci-host/Kconfig
@@ -68,3 +68,7 @@ config PCI_POWERNV
 
 config REMOTE_PCIHOST
     bool
+
+config SH_PCI
+    bool
+    select PCI
diff --git a/hw/pci-host/meson.build b/hw/pci-host/meson.build
index 1847c69905c..87a896973e7 100644
--- a/hw/pci-host/meson.build
+++ b/hw/pci-host/meson.build
@@ -10,6 +10,7 @@
 pci_ss.add(when: 'CONFIG_PCI_SABRE', if_true: files('sabre.c'))
 pci_ss.add(when: 'CONFIG_XEN_IGD_PASSTHROUGH', if_true: files('xen_igd_pt.c'))
 pci_ss.add(when: 'CONFIG_REMOTE_PCIHOST', if_true: files('remote.c'))
+pci_ss.add(when: 'CONFIG_SH_PCI', if_true: files('sh_pci.c'))
 
 # PPC devices
 pci_ss.add(when: 'CONFIG_PREP_PCI', if_true: files('prep.c'))
diff --git a/hw/sh4/Kconfig b/hw/sh4/Kconfig
index 34c01dadde9..b9f0538d57f 100644
--- a/hw/sh4/Kconfig
+++ b/hw/sh4/Kconfig
@@ -11,6 +11,7 @@ config R2D
     select SM501
     select SH4
     select SH7750
+    select SH_PCI
 
 config SHIX
     bool
diff --git a/hw/sh4/meson.build b/hw/sh4/meson.build
index 303c0f42879..424d5674dea 100644
--- a/hw/sh4/meson.build
+++ b/hw/sh4/meson.build
@@ -2,7 +2,6 @@
 sh4_ss.add(files(
   'sh7750.c',
   'sh7750_regnames.c',
-  'sh_pci.c'
 ))
 sh4_ss.add(when: 'CONFIG_R2D', if_true: files('r2d.c'))
 sh4_ss.add(when: 'CONFIG_SHIX', if_true: files('shix.c'))
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v4 8/8] hw/sh4: Remove now unused CONFIG_SH4 from Kconfig
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
                   ` (6 preceding siblings ...)
  2021-02-22 14:15 ` [PATCH v4 7/8] hw/pci-host: Introduce SH_PCI " Philippe Mathieu-Daudé
@ 2021-02-22 14:15 ` Philippe Mathieu-Daudé
  2021-02-24 15:40 ` [PATCH v4 0/8] hw/sh4: Kconfig cleanups Richard Henderson
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-22 14:15 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Philippe Mathieu-Daudé,
	Max Reitz, Marc-André Lureau, Paolo Bonzini,
	Alex Bennée

As replaced the generic CONFIG_SH4 by more fine-grained
selectors, we can remove this now unused config variable.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 hw/sh4/Kconfig | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/hw/sh4/Kconfig b/hw/sh4/Kconfig
index b9f0538d57f..ab733a3f760 100644
--- a/hw/sh4/Kconfig
+++ b/hw/sh4/Kconfig
@@ -9,14 +9,12 @@ config R2D
     select USB_OHCI_PCI
     select PCI
     select SM501
-    select SH4
     select SH7750
     select SH_PCI
 
 config SHIX
     bool
     select SH7750
-    select SH4
     select TC58128
 
 config SH7750
@@ -24,6 +22,3 @@ config SH7750
     select SH_INTC
     select SH_SCI
     select SH_TIMER
-
-config SH4
-    bool
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH v4 0/8] hw/sh4: Kconfig cleanups
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
                   ` (7 preceding siblings ...)
  2021-02-22 14:15 ` [PATCH v4 8/8] hw/sh4: Remove now unused CONFIG_SH4 from Kconfig Philippe Mathieu-Daudé
@ 2021-02-24 15:40 ` Richard Henderson
  2021-02-25 10:09 ` Paolo Bonzini
  2021-02-26 18:01 ` Philippe Mathieu-Daudé
  10 siblings, 0 replies; 12+ messages in thread
From: Richard Henderson @ 2021-02-24 15:40 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Max Reitz, Paolo Bonzini, Marc-André Lureau,
	Alex Bennée

On 2/22/21 6:15 AM, Philippe Mathieu-Daudé wrote:
> Philippe Mathieu-Daudé (8):
>   hw/sh4: Add missing license
>   hw/sh4: Add missing Kconfig dependency on SH7750 for the R2D board
>   hw/intc: Introduce SH_INTC Kconfig entry
>   hw/char: Introduce SH_SCI Kconfig entry
>   hw/timer: Introduce SH_TIMER Kconfig entry
>   hw/block: Introduce TC58128 eeprom Kconfig entry
>   hw/pci-host: Introduce SH_PCI Kconfig entry
>   hw/sh4: Remove now unused CONFIG_SH4 from Kconfig

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

r~


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v4 0/8] hw/sh4: Kconfig cleanups
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
                   ` (8 preceding siblings ...)
  2021-02-24 15:40 ` [PATCH v4 0/8] hw/sh4: Kconfig cleanups Richard Henderson
@ 2021-02-25 10:09 ` Paolo Bonzini
  2021-02-26 18:01 ` Philippe Mathieu-Daudé
  10 siblings, 0 replies; 12+ messages in thread
From: Paolo Bonzini @ 2021-02-25 10:09 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Max Reitz, Marc-André Lureau, Alex Bennée

On 22/02/21 15:15, Philippe Mathieu-Daudé wrote:
> Missing review: 1 (license)
> 
> Since v3:
> - Include full MIT license text (Peter)
> 
> Since v2:
> - Added missing TC58128/SH_PCI Kconfig entries (Peter)
> 
> Since v1:
> - Addressed Peter Maydell review comments from
> https://www.mail-archive.com/qemu-block@nongnu.org/msg80599.html
> 
> Philippe Mathieu-Daudé (8):
>    hw/sh4: Add missing license
>    hw/sh4: Add missing Kconfig dependency on SH7750 for the R2D board
>    hw/intc: Introduce SH_INTC Kconfig entry
>    hw/char: Introduce SH_SCI Kconfig entry
>    hw/timer: Introduce SH_TIMER Kconfig entry
>    hw/block: Introduce TC58128 eeprom Kconfig entry
>    hw/pci-host: Introduce SH_PCI Kconfig entry
>    hw/sh4: Remove now unused CONFIG_SH4 from Kconfig
> 
>   include/hw/sh4/sh.h           | 31 ++++++++++++++++++++++++++++---
>   hw/block/tc58128.c            | 26 ++++++++++++++++++++++++++
>   hw/{sh4 => pci-host}/sh_pci.c |  0
>   MAINTAINERS                   |  6 ++++++
>   hw/block/Kconfig              |  3 +++
>   hw/block/meson.build          |  2 +-
>   hw/char/Kconfig               |  3 +++
>   hw/char/meson.build           |  2 +-
>   hw/intc/Kconfig               |  3 +++
>   hw/intc/meson.build           |  2 +-
>   hw/pci-host/Kconfig           |  4 ++++
>   hw/pci-host/meson.build       |  1 +
>   hw/sh4/Kconfig                | 12 ++++++------
>   hw/sh4/meson.build            |  1 -
>   hw/timer/Kconfig              |  4 ++++
>   hw/timer/meson.build          |  2 +-
>   16 files changed, 88 insertions(+), 14 deletions(-)
>   rename hw/{sh4 => pci-host}/sh_pci.c (100%)
> 

Acked-by: Paolo Bonzini <pbonzini@redhat.com>

Paolo



^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v4 0/8] hw/sh4: Kconfig cleanups
  2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
                   ` (9 preceding siblings ...)
  2021-02-25 10:09 ` Paolo Bonzini
@ 2021-02-26 18:01 ` Philippe Mathieu-Daudé
  10 siblings, 0 replies; 12+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-26 18:01 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Yoshinori Sato, qemu-block,
	Magnus Damm, Max Reitz, Paolo Bonzini, Marc-André Lureau,
	Alex Bennée

On 2/22/21 3:15 PM, Philippe Mathieu-Daudé wrote:

> Philippe Mathieu-Daudé (8):
>   hw/sh4: Add missing license
>   hw/sh4: Add missing Kconfig dependency on SH7750 for the R2D board
>   hw/intc: Introduce SH_INTC Kconfig entry
>   hw/char: Introduce SH_SCI Kconfig entry
>   hw/timer: Introduce SH_TIMER Kconfig entry
>   hw/block: Introduce TC58128 eeprom Kconfig entry
>   hw/pci-host: Introduce SH_PCI Kconfig entry
>   hw/sh4: Remove now unused CONFIG_SH4 from Kconfig
> 
>  include/hw/sh4/sh.h           | 31 ++++++++++++++++++++++++++++---
>  hw/block/tc58128.c            | 26 ++++++++++++++++++++++++++
>  hw/{sh4 => pci-host}/sh_pci.c |  0
>  MAINTAINERS                   |  6 ++++++
>  hw/block/Kconfig              |  3 +++
>  hw/block/meson.build          |  2 +-
>  hw/char/Kconfig               |  3 +++
>  hw/char/meson.build           |  2 +-
>  hw/intc/Kconfig               |  3 +++
>  hw/intc/meson.build           |  2 +-
>  hw/pci-host/Kconfig           |  4 ++++
>  hw/pci-host/meson.build       |  1 +
>  hw/sh4/Kconfig                | 12 ++++++------
>  hw/sh4/meson.build            |  1 -
>  hw/timer/Kconfig              |  4 ++++
>  hw/timer/meson.build          |  2 +-
>  16 files changed, 88 insertions(+), 14 deletions(-)
>  rename hw/{sh4 => pci-host}/sh_pci.c (100%)

As SH4 is not very active, I'm queuing this and will send a pull
request in a few days.


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2021-02-26 18:17 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-22 14:15 [PATCH v4 0/8] hw/sh4: Kconfig cleanups Philippe Mathieu-Daudé
2021-02-22 14:15 ` [PATCH v4 1/8] hw/sh4: Add missing license Philippe Mathieu-Daudé
2021-02-22 14:15 ` [PATCH v4 2/8] hw/sh4: Add missing Kconfig dependency on SH7750 for the R2D board Philippe Mathieu-Daudé
2021-02-22 14:15 ` [PATCH v4 3/8] hw/intc: Introduce SH_INTC Kconfig entry Philippe Mathieu-Daudé
2021-02-22 14:15 ` [PATCH v4 4/8] hw/char: Introduce SH_SCI " Philippe Mathieu-Daudé
2021-02-22 14:15 ` [PATCH v4 5/8] hw/timer: Introduce SH_TIMER " Philippe Mathieu-Daudé
2021-02-22 14:15 ` [PATCH v4 6/8] hw/block: Introduce TC58128 eeprom " Philippe Mathieu-Daudé
2021-02-22 14:15 ` [PATCH v4 7/8] hw/pci-host: Introduce SH_PCI " Philippe Mathieu-Daudé
2021-02-22 14:15 ` [PATCH v4 8/8] hw/sh4: Remove now unused CONFIG_SH4 from Kconfig Philippe Mathieu-Daudé
2021-02-24 15:40 ` [PATCH v4 0/8] hw/sh4: Kconfig cleanups Richard Henderson
2021-02-25 10:09 ` Paolo Bonzini
2021-02-26 18:01 ` Philippe Mathieu-Daudé

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.