Skip to contentSkip to conversation

ARM: renesas: shmobile and multi_v7 defconfig updates

PATCH New Geert Uytterhoeven 7 participants 22 messages Jul 10, 2017 – Nov 1, 2017

Subsystems (4)
lore
Share & tools
lore

Geert Uytterhoeven

author maintainer
#0 lore raw

cover ARM: renesas: shmobile and multi_v7 defconfig updates

Hi Arnd, Kevin, Magnus, Olof, Simon,

This patch series updates shmobile_defconfig and multi_v7_defconfig to (re-)enable some features:
- Re-enable R-Car PCIe (shmobile_defconfig),
- Re-enable R-Car XHCI (shmobile_defconfig),
- Re-enable R-Car sound (both),
- Update DRM bridge (both),
- Enable serial port DMA (both).

There also a patch included to refresh shmobile_defconfig.
To avoid conflicts, I didn't refresh multi_v7_defconfig (although it could definitely use a refresh), and only made "simple" changes to it.

Thanks!

Geert Uytterhoeven (9):
ARM: shmobile: defconfig: Enable missing PCIE_RCAR dependency
ARM: shmobile: defconfig: Replace USB_XHCI_RCAR by USB_XHCI_PLATFORM
ARM: shmobile: defconfig: Replace SND_SOC_RSRC_CARD by
SND_SIMPLE_SCU_CARD
ARM: shmobile: defconfig: Replace DRM_RCAR_HDMI by generic bridge
options
ARM: shmobile: defconfig: Enable DMA for serial ports
ARM: shmobile: defconfig: Refresh
ARM: multi_v7_defconfig: Replace SND_SOC_RSRC_CARD by
SND_SIMPLE_SCU_CARD
ARM: multi_v7_defconfig: Replace DRM_RCAR_HDMI by generic bridge
options
ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

 arch/arm/configs/multi_v7_defconfig |  5 +++--
 arch/arm/configs/shmobile_defconfig | 16 +++++++++-------
 2 files changed, 12 insertions(+), 9 deletions(-)
Signature · 12 lines
2.7.4

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds
author maintainer
#1 lore raw

PATCH 1/9 ARM: shmobile: defconfig: Enable missing PCIE_RCAR dependency

PCIE_RCAR is no longer enabled, as it now has a dependency on PCI_MSI_IRQ_DOMAIN instead of selecting PCI_MSI and PCI_MSI_IRQ_DOMAIN. Fix this by explicitly enabling PCIE_RCAR in shmobile_defconfig.

Fixes 3ee803641e76bea7 ("PCI/MSI: irqchip: Fix PCI_MSI dependencies")
---
 arch/arm/configs/shmobile_defconfig | 1 +
 1 file changed, 1 insertion(+)
arch/arm/configs/shmobile_defconfig +1 -0
index 3c66a422fb4df567..04cd18424016eba5 100644
@@ -27,6 +27,7 @@ CONFIG_ARCH_SH73A0=y
 CONFIG_PL310_ERRATA_588369=y
 CONFIG_ARM_ERRATA_754322=y
 CONFIG_PCI=y
+CONFIG_PCI_MSI=y
 CONFIG_PCI_RCAR_GEN2=y
 CONFIG_PCIE_RCAR=y
 CONFIG_SMP=y
Signature · 1 line
2.7.4
author maintainer
#2 lore raw

PATCH 2/9 ARM: shmobile: defconfig: Replace USB_XHCI_RCAR by USB_XHCI_PLATFORM

In reply to Geert Uytterhoeven

USB_XHCI_RCAR is no longer enabled, as it now has a dependency on USB_XHCI_PLATFORM, instead of selecting USB_XHCI_PLATFORM. As the latter selects the former if ARCH_RENESAS, fix this by replacing USB_XHCI_RCAR by USB_XHCI_PLATFORM in shmobile_defconfig.

Fixes f879fc32aa0c96fb ("usb: host: xhci-rcar: Avoid long wait in xhci_reset()")
---
 arch/arm/configs/shmobile_defconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/configs/shmobile_defconfig +1 -1
index 04cd18424016eba5..bfbeae3f6a884987 100644
@@ -175,7 +175,7 @@ CONFIG_SND_SOC_AK4642=y
 CONFIG_SND_SOC_WM8978=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
-CONFIG_USB_XHCI_RCAR=y
+CONFIG_USB_XHCI_PLATFORM=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_OHCI_HCD=y
 CONFIG_USB_R8A66597_HCD=y
Signature · 1 line
2.7.4
author maintainer
#3 lore raw

PATCH 3/9 ARM: shmobile: defconfig: Replace SND_SOC_RSRC_CARD by SND_SIMPLE_SCU_CARD

In reply to Geert Uytterhoeven

SND_SOC_RSRC_CARD was renamed SND_SIMPLE_SCU_CARD, hence update shmobile_defconfig.

Fixes d12c6216c4a58f9f ("ASoC: rsrc-card: rename rsrc-card to simple-scu-card phase3")
---
 arch/arm/configs/shmobile_defconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/configs/shmobile_defconfig +1 -1
index bfbeae3f6a884987..ab9a45938c3cd34f 100644
@@ -170,9 +170,9 @@ CONFIG_SND=y
 CONFIG_SND_SOC=y
 CONFIG_SND_SOC_SH4_FSI=y
 CONFIG_SND_SOC_RCAR=y
-CONFIG_SND_SOC_RSRC_CARD=y
 CONFIG_SND_SOC_AK4642=y
 CONFIG_SND_SOC_WM8978=y
+CONFIG_SND_SIMPLE_SCU_CARD=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_PLATFORM=y
Signature · 1 line
2.7.4
author maintainer
#4 lore raw

PATCH 4/9 ARM: shmobile: defconfig: Replace DRM_RCAR_HDMI by generic bridge options

In reply to Geert Uytterhoeven

The manual bridge implementation was removed in favor of the generic one, so now we need to enable standard bridge drivers like DRM_DUMB_VGA_DAC and DRM_I2C_ADV7511.
DRM_I2C_ADV7511 was already enabled, but the (newer) audio part wasn't.

Fixes 5c602531feb3db39 ("drm: rcar-du: Replace manual bridge implementation with DRM bridge")
---
 arch/arm/configs/shmobile_defconfig | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
arch/arm/configs/shmobile_defconfig +3 -2
index ab9a45938c3cd34f..b8d2dcbc9cc745b6 100644
@@ -154,10 +154,11 @@ CONFIG_VIDEO_ADV7180=y
 CONFIG_VIDEO_ADV7604=y
 CONFIG_VIDEO_ML86V7667=y
 CONFIG_DRM=y
-CONFIG_DRM_I2C_ADV7511=y
 CONFIG_DRM_RCAR_DU=y
-CONFIG_DRM_RCAR_HDMI=y
 CONFIG_DRM_RCAR_LVDS=y
+CONFIG_DRM_DUMB_VGA_DAC=y
+CONFIG_DRM_I2C_ADV7511=y
+CONFIG_DRM_I2C_ADV7511_AUDIO=y
 CONFIG_FB_SH_MOBILE_LCDC=y
 CONFIG_FB_SH_MOBILE_MERAM=y
 # CONFIG_LCD_CLASS_DEVICE is not set
Signature · 1 line
2.7.4
author maintainer
#5 lore raw

PATCH 5/9 ARM: shmobile: defconfig: Enable DMA for serial ports

In reply to Geert Uytterhoeven

DMA for (H)SCIF(A|B) serial ports on R-Car Gen2 and RZ/G1 SoCs is considered stable, hence enable it by default.

---
 arch/arm/configs/shmobile_defconfig | 1 +
 1 file changed, 1 insertion(+)
arch/arm/configs/shmobile_defconfig +1 -0
index b8d2dcbc9cc745b6..dd9d1f9ede6e7f34 100644
@@ -106,6 +106,7 @@ CONFIG_SERIAL_8250_EM=y
 CONFIG_SERIAL_SH_SCI=y
 CONFIG_SERIAL_SH_SCI_NR_UARTS=20
 CONFIG_SERIAL_SH_SCI_CONSOLE=y
+CONFIG_SERIAL_SH_SCI_DMA=y
 CONFIG_I2C_CHARDEV=y
 CONFIG_I2C_MUX=y
 CONFIG_I2C_DEMUX_PINCTRL=y
Signature · 1 line
2.7.4
author maintainer
#6 lore raw

PATCH 6/9 ARM: shmobile: defconfig: Refresh

In reply to Geert Uytterhoeven

- Several options were moved,
- INPUT_MOUSEDEV_PSAUX is no longer enabled by default since commit 73d8ef76006b649f ("Input: mousedev - stop offering PS/2 to userspace by default").

---
 arch/arm/configs/shmobile_defconfig | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
arch/arm/configs/shmobile_defconfig +2 -3
index dd9d1f9ede6e7f34..1cad253c030f4b25 100644
@@ -89,9 +89,8 @@ CONFIG_SMSC911X=y
 # CONFIG_NET_VENDOR_STMICRO is not set
 # CONFIG_NET_VENDOR_VIA is not set
 # CONFIG_NET_VENDOR_WIZNET is not set
-CONFIG_SMSC_PHY=y
 CONFIG_MICREL_PHY=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
+CONFIG_SMSC_PHY=y
 CONFIG_INPUT_EVDEV=y
 CONFIG_KEYBOARD_GPIO=y
 # CONFIG_INPUT_MOUSE is not set
@@ -123,9 +122,9 @@ CONFIG_SPI_SH_HSPI=y
 CONFIG_GPIO_EM=y
 CONFIG_GPIO_RCAR=y
 CONFIG_GPIO_PCF857X=y
-CONFIG_POWER_SUPPLY=y
 CONFIG_POWER_RESET=y
 CONFIG_POWER_RESET_RMOBILE=y
+CONFIG_POWER_SUPPLY=y
 # CONFIG_HWMON is not set
 CONFIG_THERMAL=y
 CONFIG_CPU_THERMAL=y
Signature · 1 line
2.7.4
author maintainer
#7 lore raw

PATCH 7/9 ARM: multi_v7_defconfig: Replace SND_SOC_RSRC_CARD by SND_SIMPLE_SCU_CARD

In reply to Geert Uytterhoeven

SND_SOC_RSRC_CARD was renamed SND_SIMPLE_SCU_CARD, hence update multi_v7_defconfig.

Fixes d12c6216c4a58f9f ("ASoC: rsrc-card: rename rsrc-card to simple-scu-card phase3")

---
multi_v7_defconfig is in desperate need of a refresh.

Again, I just replaced the symbols, and ignored any other churn.

---
 arch/arm/configs/multi_v7_defconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/configs/multi_v7_defconfig +1 -1
index 4d19c1b4b8e7c1e8..7fa1746970ecc531 100644
@@ -650,7 +650,7 @@ CONFIG_SND_SOC_SMDK_WM8994_PCM=m
 CONFIG_SND_SOC_SNOW=m
 CONFIG_SND_SOC_SH4_FSI=m
 CONFIG_SND_SOC_RCAR=m
-CONFIG_SND_SOC_RSRC_CARD=m
+CONFIG_SND_SIMPLE_SCU_CARD=m
 CONFIG_SND_SUN4I_CODEC=m
 CONFIG_SND_SOC_TEGRA=m
 CONFIG_SND_SOC_TEGRA_RT5640=m
Signature · 1 line
2.7.4
author maintainer
#8 lore raw

PATCH 8/9 ARM: multi_v7_defconfig: Replace DRM_RCAR_HDMI by generic bridge options

In reply to Geert Uytterhoeven

The manual bridge implementation was removed in favor of the generic one, so now we need to enable standard bridge drivers like DRM_DUMB_VGA_DAC and DRM_I2C_ADV7511.
Both were already enabled, but the (newer) ADV7511 audio part wasn't.

Fixes 5c602531feb3db39 ("drm: rcar-du: Replace manual bridge implementation with DRM bridge")

---
multi_v7_defconfig is in desperate need of a refresh.

To reduce conflicts, I went for the simple option of adding CONFIG_DRM_I2C_ADV7511_AUDIO below CONFIG_DRM_I2C_ADV7511, instead of moving CONFIG_DRM_I2C_ADV7511 and CONFIG_DRM_DUMB_VGA_DAC around.

---
 arch/arm/configs/multi_v7_defconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/configs/multi_v7_defconfig +1 -1
index 7fa1746970ecc531..ea2075d8e185f7aa 100644
@@ -584,6 +584,7 @@ CONFIG_VIDEO_ADV7180=m
 CONFIG_VIDEO_ML86V7667=m
 CONFIG_DRM=y
 CONFIG_DRM_I2C_ADV7511=m
+CONFIG_DRM_I2C_ADV7511_AUDIO=y
 # CONFIG_DRM_I2C_CH7006 is not set
 # CONFIG_DRM_I2C_SIL164 is not set
 CONFIG_DRM_DUMB_VGA_DAC=m
@@ -603,7 +604,6 @@ CONFIG_ROCKCHIP_DW_MIPI_DSI=y
 CONFIG_ROCKCHIP_INNO_HDMI=y
 CONFIG_DRM_ATMEL_HLCDC=m
 CONFIG_DRM_RCAR_DU=m
-CONFIG_DRM_RCAR_HDMI=y
 CONFIG_DRM_RCAR_LVDS=y
 CONFIG_DRM_SUN4I=m
 CONFIG_DRM_TEGRA=y
Signature · 1 line
2.7.4
#9 lore raw

PATCH 8/9 ARM: multi_v7_defconfig: Replace DRM_RCAR_HDMI by generic bridge options

Hi Geert,

Thank you for the patch.

Quoted 7 lines · On Monday 10 Jul 2017 15:28:21 Geert Uytterhoeven wrote:

The manual bridge implementation was removed in favor of the generic one, so now we need to enable standard bridge drivers like DRM_DUMB_VGA_DAC and DRM_I2C_ADV7511.
Both were already enabled, but the (newer) ADV7511 audio part wasn't.

Fixes 5c602531feb3db39 ("drm: rcar-du: Replace manual bridge implementation

with DRM bridge")

I wonder if this patch really needs a Fixes tag. All it does is removing a now deleted kernel option, and adding a new unrelated one. The former is related to 5c602531feb3db39, but I'm not sure it should be considered as a bug.

The content of this patch looks good to me though.

Quoted 32 lines

---
multi_v7_defconfig is in desperate need of a refresh.

To reduce conflicts, I went for the simple option of adding CONFIG_DRM_I2C_ADV7511_AUDIO below CONFIG_DRM_I2C_ADV7511, instead of moving CONFIG_DRM_I2C_ADV7511 and CONFIG_DRM_DUMB_VGA_DAC around.

---
 arch/arm/configs/multi_v7_defconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
(quoted diff) +0 -0

b/arch/arm/configs/multi_v7_defconfig index
7fa1746970ecc531..ea2075d8e185f7aa 100644

arch/arm/configs/multi_v7_defconfig +1 -1
@@ -584,6 +584,7 @@ CONFIG_VIDEO_ADV7180=m
 CONFIG_VIDEO_ML86V7667=m
 CONFIG_DRM=y
 CONFIG_DRM_I2C_ADV7511=m
+CONFIG_DRM_I2C_ADV7511_AUDIO=y
 # CONFIG_DRM_I2C_CH7006 is not set
 # CONFIG_DRM_I2C_SIL164 is not set
 CONFIG_DRM_DUMB_VGA_DAC=m
@@ -603,7 +604,6 @@ CONFIG_ROCKCHIP_DW_MIPI_DSI=y
 CONFIG_ROCKCHIP_INNO_HDMI=y
 CONFIG_DRM_ATMEL_HLCDC=m
 CONFIG_DRM_RCAR_DU=m
-CONFIG_DRM_RCAR_HDMI=y
 CONFIG_DRM_RCAR_LVDS=y
 CONFIG_DRM_SUN4I=m
 CONFIG_DRM_TEGRA=y
Signature · 3 lines
Regards,

Laurent Pinchart
#10 lore raw

PATCH 8/9 ARM: multi_v7_defconfig: Replace DRM_RCAR_HDMI by generic bridge options

Hi Laurent,

Quoted 6 lines · Laurent Pinchart
Quoted 5 lines · On Monday 10 Jul 2017 15:28:21 Geert Uytterhoeven wrote:

The manual bridge implementation was removed in favor of the generic one, so now we need to enable standard bridge drivers like DRM_DUMB_VGA_DAC and DRM_I2C_ADV7511.
Both were already enabled, but the (newer) ADV7511 audio part wasn't.

Quoted 6 lines
Quoted 2 lines
Fixes 5c602531feb3db39 ("drm: rcar-du: Replace manual bridge implementation

with DRM bridge")

I wonder if this patch really needs a Fixes tag. All it does is removing a now deleted kernel option, and adding a new unrelated one. The former is related to 5c602531feb3db39, but I'm not sure it should be considered as a bug.

I added a Fixes tag because it aids backporting: if 5c602531feb3db39 is backported, the defconfig update should be backported, too.

Quoted 1 line

The content of this patch looks good to me though.

Thanks!

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

author maintainer
#11 lore raw

PATCH 9/9 ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

In reply to Geert Uytterhoeven

DMA for (H)SCIF(A|B) serial ports on Renesas R-Car Gen2 and RZ/G1 SoCs is considered stable, hence enable it by default.

---
 arch/arm/configs/multi_v7_defconfig | 1 +
 1 file changed, 1 insertion(+)
arch/arm/configs/multi_v7_defconfig +1 -0
index ea2075d8e185f7aa..072a455008df9751 100644
@@ -330,6 +330,7 @@ CONFIG_SERIAL_IMX_CONSOLE=y
 CONFIG_SERIAL_SH_SCI=y
 CONFIG_SERIAL_SH_SCI_NR_UARTS=20
 CONFIG_SERIAL_SH_SCI_CONSOLE=y
+CONFIG_SERIAL_SH_SCI_DMA=y
 CONFIG_SERIAL_MSM=y
 CONFIG_SERIAL_MSM_CONSOLE=y
 CONFIG_SERIAL_VT8500=y
Signature · 1 line
2.7.4
maintainer
#12 lore raw

PATCH 9/9 ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

Hi Geert,

Quoted 13 lines · Geert Uytterhoeven

DMA for (H)SCIF(A|B) serial ports on Renesas R-Car Gen2 and RZ/G1 SoCs is considered stable, hence enable it by default.

---
 arch/arm/configs/multi_v7_defconfig | 1 +
 1 file changed, 1 insertion(+)
arch/arm/configs/multi_v7_defconfig +0 -0
index ea2075d8e185f7aa..072a455008df9751 100644

arch/arm/configs/multi_v7_defconfig CONFIG_SERIAL_IMX_CONSOLE=y · line 336

Quoted 7 lines
arch/arm/configs/multi_v7_defconfig +1 -0
@@ -330,6 +330,7 @@ CONFIG_SERIAL_IMX_CONSOLE=y
 CONFIG_SERIAL_SH_SCI=y
 CONFIG_SERIAL_SH_SCI_NR_UARTS=20
 CONFIG_SERIAL_SH_SCI_CONSOLE=y
+CONFIG_SERIAL_SH_SCI_DMA=y
 CONFIG_SERIAL_MSM=y
 CONFIG_SERIAL_MSM_CONSOLE=y
 CONFIG_SERIAL_VT8500=y

Thanks, FWIW I'm very happy to see DMA enabled for the SCIF driver in mainline.

Since enabling DMA Engine still keeps PIO support around I wonder why we need this Kconfig at all - other drivers seem to get by without this kind of thing?
So in my opinion it would also be nice to get rid of SERIAL_SH_SCI_DMA completely and reducing the number of special per-driver Kconfig entries.

Cheers,

/ magnus

#13 lore raw

PATCH 9/9 ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

Hi Magnus,

Quoted 25 lines · Magnus Damm
Quoted 13 lines · Geert Uytterhoeven

DMA for (H)SCIF(A|B) serial ports on Renesas R-Car Gen2 and RZ/G1 SoCs is considered stable, hence enable it by default.

---
 arch/arm/configs/multi_v7_defconfig | 1 +
 1 file changed, 1 insertion(+)
arch/arm/configs/multi_v7_defconfig +0 -0
index ea2075d8e185f7aa..072a455008df9751 100644

arch/arm/configs/multi_v7_defconfig CONFIG_SERIAL_IMX_CONSOLE=y · line 336

Quoted 7 lines
arch/arm/configs/multi_v7_defconfig +1 -0
@@ -330,6 +330,7 @@ CONFIG_SERIAL_IMX_CONSOLE=y
 CONFIG_SERIAL_SH_SCI=y
 CONFIG_SERIAL_SH_SCI_NR_UARTS=20
 CONFIG_SERIAL_SH_SCI_CONSOLE=y
+CONFIG_SERIAL_SH_SCI_DMA=y
 CONFIG_SERIAL_MSM=y
 CONFIG_SERIAL_MSM_CONSOLE=y
 CONFIG_SERIAL_VT8500=y

Thanks, FWIW I'm very happy to see DMA enabled for the SCIF driver in mainline.

Quoted 6 lines

Since enabling DMA Engine still keeps PIO support around I wonder why we need this Kconfig at all - other drivers seem to get by without this kind of thing?
So in my opinion it would also be nice to get rid of SERIAL_SH_SCI_DMA completely and reducing the number of special per-driver Kconfig entries.

In general, I would agree, and remove the option at the blimp of an eye. However, this driver is shared with H8/300 and SuperH. While both could use DMA (but it's not supported by Linux yet), I don't know if they are willing to live with the increased static and dynamic memory footprint of SH_SCI DMA support.

Whether we want to hide the option (and default to y if ARCH_RENESAS, i.e. ARM) is another question. Note that that wouldn't reduce code maintainability, as the #ifdefs would be kept, and it would prevent building and testing with/without DMA on ARM.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

#14 lore raw

PATCH 9/9 ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

Quoted 4 lines · Geert Uytterhoeven

Whether we want to hide the option (and default to y if ARCH_RENESAS, i.e. ARM) is another question. Note that that wouldn't reduce code maintainability, as the #ifdefs would be kept, and it would prevent building and testing with/without DMA on ARM.

arch/sh/configs/sdk7786_defconfig enables it, too, so it should at least be a user-selectable option on SuperH if you do that.

Arnd

#15 lore raw

PATCH 9/9 ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

Hi Arnd,

Quoted 10 lines · Arnd Bergmann
Quoted 4 lines · Geert Uytterhoeven

Whether we want to hide the option (and default to y if ARCH_RENESAS, i.e. ARM) is another question. Note that that wouldn't reduce code maintainability, as the #ifdefs would be kept, and it would prevent building and testing with/without DMA on ARM.

arch/sh/configs/sdk7786_defconfig enables it, too, so it should at least be a user-selectable option on SuperH if you do that.

But that can't enable DMA, as (1) the non-DT DMA configuration was removed due to (2) being unused.

Cfr. commit 219fb0c1436e4893 ("serial: sh-sci: Remove the platform data dma slave rx/tx channel IDs").

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

#16 lore raw

PATCH 9/9 ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

In reply to Geert Uytterhoeven
Quoted 12 lines · Geert Uytterhoeven

Hi Magnus,

Quoted 8 lines · Magnus Damm

On Mon, Jul 10, 2017 at 10:28 PM, Geert Uytterhoeven

Since enabling DMA Engine still keeps PIO support around I wonder why we need this Kconfig at all - other drivers seem to get by without this kind of thing?
So in my opinion it would also be nice to get rid of SERIAL_SH_SCI_DMA completely and reducing the number of special per-driver Kconfig entries.

Quoted 5 lines

In general, I would agree, and remove the option at the blimp of an eye. However, this driver is shared with H8/300 and SuperH. While both could use DMA (but it's not supported by Linux yet), I don't know if they are willing to live with the increased static and dynamic memory footprint of SH_SCI DMA support.

One more thing: enabling the DMA support in the console driver generally means you cannot use printk in the DMA driver anywhere that may be called during printk(). Not sure if that is a concern here.

Arnd

#17 lore raw

PATCH 9/9 ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

Hi Arnd,

Quoted 17 lines · Arnd Bergmann
Quoted 9 lines · Geert Uytterhoeven
Quoted 7 lines · Magnus Damm

On Mon, Jul 10, 2017 at 10:28 PM, Geert Uytterhoeven
Since enabling DMA Engine still keeps PIO support around I wonder why we need this Kconfig at all - other drivers seem to get by without this kind of thing?
So in my opinion it would also be nice to get rid of SERIAL_SH_SCI_DMA completely and reducing the number of special per-driver Kconfig entries.

Quoted 5 lines

In general, I would agree, and remove the option at the blimp of an eye. However, this driver is shared with H8/300 and SuperH. While both could use DMA (but it's not supported by Linux yet), I don't know if they are willing to live with the increased static and dynamic memory footprint of SH_SCI DMA support.

Quoted 3 lines

One more thing: enabling the DMA support in the console driver generally means you cannot use printk in the DMA driver anywhere that may be called during printk(). Not sure if that is a concern here.

Not anymore, as all of these prints should have been removed/disabled already.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

#18 lore raw

PATCH 9/9 ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

Quoted 20 lines · Geert Uytterhoeven

Hi Arnd,

Quoted 17 lines · Arnd Bergmann
Quoted 14 lines · Geert Uytterhoeven
Quoted 7 lines · Magnus Damm

On Mon, Jul 10, 2017 at 10:28 PM, Geert Uytterhoeven
Since enabling DMA Engine still keeps PIO support around I wonder why we need this Kconfig at all - other drivers seem to get by without this kind of thing?
So in my opinion it would also be nice to get rid of SERIAL_SH_SCI_DMA completely and reducing the number of special per-driver Kconfig entries.

In general, I would agree, and remove the option at the blimp of an eye. However, this driver is shared with H8/300 and SuperH. While both could use DMA (but it's not supported by Linux yet), I don't know if they are willing to live with the increased static and dynamic memory footprint of SH_SCI DMA support.

Quoted 5 lines
Quoted 3 lines

One more thing: enabling the DMA support in the console driver generally means you cannot use printk in the DMA driver anywhere that may be called during printk(). Not sure if that is a concern here.

Not anymore, as all of these prints should have been removed/disabled already.

Last I checked qemu-system-sh4 still doesn't work with current linux serial driver unless you do:

drivers/tty/serial/sh-sci.c +1 -1
@@ -2193,7 +2193,7 @@ static void sci_reset(struct uart_port *port)
 			setup_timer(&s->rx_fifo_timer, rx_fifo_timer_fn,
 				    (unsigned long)s);
 		} else {
-			if (port->type == PORT_SCIFA ||
+			if (1 || port->type == PORT_SCIFA ||
 			    port->type == PORT_SCIFB)
 				scif_set_rtrg(port, 1);
 			else

Does this DMA stuff make that situation worse?

Rob

#19 lore raw

PATCH 9/9 ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

Hi Rob,

Quoted 40 lines · Rob Landley
Quoted 18 lines · Geert Uytterhoeven
Quoted 17 lines · Arnd Bergmann
Quoted 14 lines · Geert Uytterhoeven
Quoted 7 lines · Magnus Damm

On Mon, Jul 10, 2017 at 10:28 PM, Geert Uytterhoeven
Since enabling DMA Engine still keeps PIO support around I wonder why we need this Kconfig at all - other drivers seem to get by without this kind of thing?
So in my opinion it would also be nice to get rid of SERIAL_SH_SCI_DMA completely and reducing the number of special per-driver Kconfig entries.

In general, I would agree, and remove the option at the blimp of an eye. However, this driver is shared with H8/300 and SuperH. While both could use DMA (but it's not supported by Linux yet), I don't know if they are willing to live with the increased static and dynamic memory footprint of SH_SCI DMA support.

Quoted 5 lines
Quoted 3 lines

One more thing: enabling the DMA support in the console driver generally means you cannot use printk in the DMA driver anywhere that may be called during printk(). Not sure if that is a concern here.

Not anymore, as all of these prints should have been removed/disabled already.

Last I checked qemu-system-sh4 still doesn't work with current linux serial driver unless you do:

drivers/tty/serial/sh-sci.c +1 -1
@@ -2193,7 +2193,7 @@ static void sci_reset(struct uart_port *port)
                        setup_timer(&s->rx_fifo_timer, rx_fifo_timer_fn,
                                    (unsigned long)s);
                } else {
-                       if (port->type == PORT_SCIFA ||
+                       if (1 || port->type == PORT_SCIFA ||
                            port->type == PORT_SCIFB)
                                scif_set_rtrg(port, 1);
                        else
Quoted 1 line

Does this DMA stuff make that situation worse?

No, SH-SCI DMA is not used on your platform.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

#20 lore raw

PATCH 9/9 ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

Quoted 43 lines · Geert Uytterhoeven

Hi Rob,

Quoted 40 lines · Rob Landley
Quoted 18 lines · Geert Uytterhoeven
Quoted 17 lines · Arnd Bergmann
Quoted 14 lines · Geert Uytterhoeven
Quoted 7 lines · Magnus Damm

On Mon, Jul 10, 2017 at 10:28 PM, Geert Uytterhoeven
Since enabling DMA Engine still keeps PIO support around I wonder why we need this Kconfig at all - other drivers seem to get by without this kind of thing?
So in my opinion it would also be nice to get rid of SERIAL_SH_SCI_DMA completely and reducing the number of special per-driver Kconfig entries.

In general, I would agree, and remove the option at the blimp of an eye. However, this driver is shared with H8/300 and SuperH. While both could use DMA (but it's not supported by Linux yet), I don't know if they are willing to live with the increased static and dynamic memory footprint of SH_SCI DMA support.

Quoted 5 lines
Quoted 3 lines

One more thing: enabling the DMA support in the console driver generally means you cannot use printk in the DMA driver anywhere that may be called during printk(). Not sure if that is a concern here.

Not anymore, as all of these prints should have been removed/disabled already.

Last I checked qemu-system-sh4 still doesn't work with current linux serial driver unless you do:

drivers/tty/serial/sh-sci.c +1 -1
@@ -2193,7 +2193,7 @@ static void sci_reset(struct uart_port *port)
                        setup_timer(&s->rx_fifo_timer, rx_fifo_timer_fn,
                                    (unsigned long)s);
                } else {
-                       if (port->type == PORT_SCIFA ||
+                       if (1 || port->type == PORT_SCIFA ||
                            port->type == PORT_SCIFB)
                                scif_set_rtrg(port, 1);
                        else
Quoted 5 lines
Quoted 1 line

Does this DMA stuff make that situation worse?

No, SH-SCI DMA is not used on your platform.

Gr{oetje,eeting}s,

This issue is still there. QEMU's serial output is borked with the last year's worth of vanilla superh kernels.

Rob

#21 lore raw

cover ARM: renesas: shmobile and multi_v7 defconfig updates

In reply to Geert Uytterhoeven
Quoted 10 lines · Geert Uytterhoeven

Hi Arnd, Kevin, Magnus, Olof, Simon,

This patch series updates shmobile_defconfig and multi_v7_defconfig to (re-)enable some features:
- Re-enable R-Car PCIe (shmobile_defconfig),
- Re-enable R-Car XHCI (shmobile_defconfig),
- Re-enable R-Car sound (both),
- Update DRM bridge (both),
- Enable serial port DMA (both).

Quoted 3 lines

There also a patch included to refresh shmobile_defconfig.
To avoid conflicts, I didn't refresh multi_v7_defconfig (although it could definitely use a refresh), and only made "simple" changes to it.

Thanks, all applied.

Personally I would be in favour of co-ordinating a refresh of multi_v7_defconfig.

Quoted 36 lines

Thanks!

Geert Uytterhoeven (9):
ARM: shmobile: defconfig: Enable missing PCIE_RCAR dependency
ARM: shmobile: defconfig: Replace USB_XHCI_RCAR by USB_XHCI_PLATFORM
ARM: shmobile: defconfig: Replace SND_SOC_RSRC_CARD by
SND_SIMPLE_SCU_CARD
ARM: shmobile: defconfig: Replace DRM_RCAR_HDMI by generic bridge
options
ARM: shmobile: defconfig: Enable DMA for serial ports
ARM: shmobile: defconfig: Refresh
ARM: multi_v7_defconfig: Replace SND_SOC_RSRC_CARD by
SND_SIMPLE_SCU_CARD
ARM: multi_v7_defconfig: Replace DRM_RCAR_HDMI by generic bridge
options
ARM: multi_v7_defconfig: Enable DMA for Renesas serial ports

 arch/arm/configs/multi_v7_defconfig |  5 +++--
 arch/arm/configs/shmobile_defconfig | 16 +++++++++-------
 2 files changed, 12 insertions(+), 9 deletions(-)
Signature · 12 lines
2.7.4

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds