Re: [PATCH 06/12] dma-mapping: improve selection of dma_declare_coherent availability
On Mon, 11 Feb 2019, Christoph Hellwig wrote: > This API is primarily used through DT entries, but two architectures > and two drivers call it directly. So instead of selecting the config > symbol for random architectures pull it in implicitly for the actual > users. Also rename the Kconfig option to describe the feature better. > > Signed-off-by: Christoph Hellwig > --- > arch/arc/Kconfig| 1 - > arch/arm/Kconfig| 2 +- > arch/arm64/Kconfig | 1 - > arch/csky/Kconfig | 1 - > arch/mips/Kconfig | 1 - > arch/riscv/Kconfig | 1 - > arch/sh/Kconfig | 2 +- > arch/unicore32/Kconfig | 1 - > arch/x86/Kconfig| 1 - > drivers/mfd/Kconfig | 2 ++ If everyone else is happy with these changes, then so am I. Acked-by: Lee Jones > drivers/of/Kconfig | 3 ++- > include/linux/device.h | 2 +- > include/linux/dma-mapping.h | 8 > kernel/dma/Kconfig | 2 +- > kernel/dma/Makefile | 2 +- > 15 files changed, 13 insertions(+), 17 deletions(-) -- Lee Jones [李琼斯] Linaro Services Technical Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog ___ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc
Re: [PATCH 01/12] mfd/sm501: depend on HAS_DMA
On Mon, 11 Feb 2019, Christoph Hellwig wrote: > Currently the sm501 mfd driver can be compiled without any dependencies, > but through the use of dma_declare_coherent it really depends on > having DMA and iomem support. Normally we don't explicitly require DMA > support as we have stubs for it if on UML, but in this case the driver > selects support for dma_declare_coherent and thus also requires > memmap support. Guard this by an explicit dependency. > > Signed-off-by: Christoph Hellwig > --- > drivers/mfd/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig > index f461460a2aeb..f15f6489803d 100644 > --- a/drivers/mfd/Kconfig > +++ b/drivers/mfd/Kconfig > @@ -1066,6 +1066,7 @@ config MFD_SI476X_CORE > > config MFD_SM501 > tristate "Silicon Motion SM501" > + depends on HAS_DMA >---help--- > This is the core driver for the Silicon Motion SM501 multimedia > companion chip. This device is a multifunction device which may I would normally have taken this, but I fear it will conflict with [PATCH 06/12]. For that reason, just take my: Acked-by: Lee Jones -- Lee Jones [李琼斯] Linaro Services Technical Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog ___ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc
[PATCH 0/3] power: reset: Convert Power-Off driver to tristate
Provide support to compile the Power-Off driver as a module. Elliot Berman (2): reboot: Export reboot_mode power: reset: Enable tristate on restart power-off driver Lee Jones (1): arch: Export machine_restart() instances so they can be called from modules arch/arc/kernel/reset.c| 1 + arch/arm/kernel/reboot.c | 1 + arch/arm64/kernel/process.c| 1 + arch/csky/kernel/power.c | 1 + arch/h8300/kernel/process.c| 1 + arch/hexagon/kernel/reset.c| 1 + arch/m68k/kernel/process.c | 1 + arch/microblaze/kernel/reset.c | 1 + arch/mips/kernel/reset.c | 1 + arch/mips/lantiq/falcon/reset.c| 1 + arch/mips/sgi-ip27/ip27-reset.c| 1 + arch/nios2/kernel/process.c| 1 + arch/openrisc/kernel/process.c | 1 + arch/parisc/kernel/process.c | 1 + arch/powerpc/kernel/setup-common.c | 1 + arch/riscv/kernel/reset.c | 1 + arch/s390/kernel/setup.c | 1 + arch/sh/kernel/reboot.c| 1 + arch/sparc/kernel/process_32.c | 1 + arch/sparc/kernel/reboot.c | 1 + arch/um/kernel/reboot.c| 1 + arch/x86/kernel/reboot.c | 1 + arch/xtensa/kernel/setup.c | 1 + drivers/power/reset/Kconfig| 2 +- kernel/reboot.c| 2 ++ 25 files changed, 26 insertions(+), 1 deletion(-) Cc: Albert Ou Cc: Anton Ivanov Cc: Borislav Petkov Cc: Brian Cain Cc: Catalin Marinas Cc: Christian Borntraeger Cc: Chris Zankel Cc: David S. Miller Cc: Geert Uytterhoeven Cc: Guo Ren Cc: Heiko Carstens Cc: Helge Deller Cc: Ingo Molnar Cc: James E.J. Bottomley Cc: Jeff Dike Cc: John Crispin Cc: Jonas Bonn Cc: Ley Foon Tan Cc: linux-arm-ker...@lists.infradead.org Cc: linux-c...@vger.kernel.org Cc: linux-hexa...@vger.kernel.org Cc: linux-ker...@vger.kernel.org Cc: linux-m...@lists.linux-m68k.org Cc: linux-m...@vger.kernel.org Cc: linux-par...@vger.kernel.org Cc: linuxppc-...@lists.ozlabs.org Cc: linux-ri...@lists.infradead.org Cc: linux-s...@vger.kernel.org Cc: linux...@vger.kernel.org Cc: linux-snps-arc@lists.infradead.org Cc: linux...@lists.infradead.org Cc: linux-xte...@linux-xtensa.org Cc: Max Filippov Cc: Michael Ellerman Cc: Michal Simek Cc: openr...@lists.librecores.org Cc: Palmer Dabbelt Cc: Paul Walmsley Cc: Richard Weinberger Cc: Rich Felker Cc: sparcli...@vger.kernel.org Cc: Stafford Horne Cc: Stefan Kristiansson Cc: Thomas Bogendoerfer Cc: Thomas Gleixner Cc: uclinux-h8-de...@lists.sourceforge.jp Cc: Vasily Gorbik Cc: Vineet Gupta Cc: Will Deacon Cc: Yoshinori Sato -- 2.32.0.605.g8dce9f2422-goog ___ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc
[PATCH 1/3] arch: Export machine_restart() instances so they can be called from modules
A recent attempt to convert the Power Reset Restart driver to tristate failed because of the following compile error (reported once merged by Stephen Rothwell via Linux Next): ERROR: "machine_restart" [drivers/power/reset/restart-poweroff.ko] undefined! This error occurs since some of the machine_restart() instances are not currently exported for use in modules. This patch aims to rectify that. Cc: Vineet Gupta Cc: Catalin Marinas Cc: Will Deacon Cc: Guo Ren Cc: Yoshinori Sato Cc: Brian Cain Cc: Geert Uytterhoeven Cc: Michal Simek Cc: Thomas Bogendoerfer Cc: John Crispin Cc: Ley Foon Tan Cc: Jonas Bonn Cc: Stefan Kristiansson Cc: Stafford Horne Cc: James E.J. Bottomley Cc: Helge Deller Cc: Michael Ellerman Cc: Paul Walmsley Cc: Palmer Dabbelt Cc: Albert Ou Cc: Heiko Carstens Cc: Vasily Gorbik Cc: Christian Borntraeger Cc: Rich Felker Cc: David S. Miller Cc: Jeff Dike Cc: Richard Weinberger Cc: Anton Ivanov Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Borislav Petkov Cc: Chris Zankel Cc: Max Filippov Cc: Greg Kroah-Hartman Cc: Sebastian Reichel Cc: linux-snps-arc@lists.infradead.org Cc: linux-ker...@vger.kernel.org Cc: linux-arm-ker...@lists.infradead.org Cc: linux-c...@vger.kernel.org Cc: uclinux-h8-de...@lists.sourceforge.jp Cc: linux-hexa...@vger.kernel.org Cc: linux-m...@lists.linux-m68k.org Cc: linux-m...@vger.kernel.org Cc: openr...@lists.librecores.org Cc: linux-par...@vger.kernel.org Cc: linuxppc-...@lists.ozlabs.org Cc: linux-ri...@lists.infradead.org Cc: linux-s...@vger.kernel.org Cc: linux...@vger.kernel.org Cc: sparcli...@vger.kernel.org Cc: linux...@lists.infradead.org Cc: linux-xte...@linux-xtensa.org Signed-off-by: Lee Jones --- The 2 patches this change supports have the required Acks already. NB: If it's safe to omit some of these, let me know and I'll revise the patch. arch/arc/kernel/reset.c| 1 + arch/arm/kernel/reboot.c | 1 + arch/arm64/kernel/process.c| 1 + arch/csky/kernel/power.c | 1 + arch/h8300/kernel/process.c| 1 + arch/hexagon/kernel/reset.c| 1 + arch/m68k/kernel/process.c | 1 + arch/microblaze/kernel/reset.c | 1 + arch/mips/kernel/reset.c | 1 + arch/mips/lantiq/falcon/reset.c| 1 + arch/mips/sgi-ip27/ip27-reset.c| 1 + arch/nios2/kernel/process.c| 1 + arch/openrisc/kernel/process.c | 1 + arch/parisc/kernel/process.c | 1 + arch/powerpc/kernel/setup-common.c | 1 + arch/riscv/kernel/reset.c | 1 + arch/s390/kernel/setup.c | 1 + arch/sh/kernel/reboot.c| 1 + arch/sparc/kernel/process_32.c | 1 + arch/sparc/kernel/reboot.c | 1 + arch/um/kernel/reboot.c| 1 + arch/x86/kernel/reboot.c | 1 + arch/xtensa/kernel/setup.c | 1 + 23 files changed, 23 insertions(+) diff --git a/arch/arc/kernel/reset.c b/arch/arc/kernel/reset.c index fd6c3eb930bad..ae4f8a43b0af4 100644 --- a/arch/arc/kernel/reset.c +++ b/arch/arc/kernel/reset.c @@ -20,6 +20,7 @@ void machine_restart(char *__unused) pr_info("Put your restart handler here\n"); machine_halt(); } +EXPORT_SYMBOL(machine_restart); void machine_power_off(void) { diff --git a/arch/arm/kernel/reboot.c b/arch/arm/kernel/reboot.c index 0ce388f154226..2878260efd130 100644 --- a/arch/arm/kernel/reboot.c +++ b/arch/arm/kernel/reboot.c @@ -150,3 +150,4 @@ void machine_restart(char *cmd) printk("Reboot failed -- System halted\n"); while (1); } +EXPORT_SYMBOL(machine_restart); diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c index b4bb67f17a2ca..cf89ce91d7145 100644 --- a/arch/arm64/kernel/process.c +++ b/arch/arm64/kernel/process.c @@ -212,6 +212,7 @@ void machine_restart(char *cmd) printk("Reboot failed -- System halted\n"); while (1); } +EXPORT_SYMBOL(machine_restart); #define bstr(suffix, str) [PSR_BTYPE_ ## suffix >> PSR_BTYPE_SHIFT] = str static const char *const btypes[] = { diff --git a/arch/csky/kernel/power.c b/arch/csky/kernel/power.c index 923ee4e381b81..b466c825cbb3c 100644 --- a/arch/csky/kernel/power.c +++ b/arch/csky/kernel/power.c @@ -28,3 +28,4 @@ void machine_restart(char *cmd) do_kernel_restart(cmd); asm volatile ("bkpt"); } +EXPORT_SYMBOL(machine_restart); diff --git a/arch/h8300/kernel/process.c b/arch/h8300/kernel/process.c index 46b1342ce515b..8203ac5cd33ec 100644 --- a/arch/h8300/kernel/process.c +++ b/arch/h8300/kernel/process.c @@ -66,6 +66,7 @@ void machine_restart(char *__unused) local_irq_disable(); __asm__("jmp @@0"); } +EXPORT_SYMBOL(machine_restart); void machine_halt(void) { diff --git a/arch/hexagon/kernel/reset.c b/arch/hexagon/kernel/reset.c index da36114d928f0..433378d52063c 100644 --- a/arch/hexagon/kernel/reset.c +++ b/arch/hexagon/kernel/reset.c @@ -19,6 +19,7 @@ void machine_halt(void) vo
Re: [PATCH 1/3] arch: Export machine_restart() instances so they can be called from modules
On Thu, 05 Aug 2021, Greg Kroah-Hartman wrote: > On Thu, Aug 05, 2021 at 06:36:25PM +0100, Catalin Marinas wrote: > > On Thu, Aug 05, 2021 at 08:50:30AM +0100, Lee Jones wrote: > > > diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c > > > index b4bb67f17a2ca..cf89ce91d7145 100644 > > > --- a/arch/arm64/kernel/process.c > > > +++ b/arch/arm64/kernel/process.c > > > @@ -212,6 +212,7 @@ void machine_restart(char *cmd) > > > printk("Reboot failed -- System halted\n"); > > > while (1); > > > } > > > +EXPORT_SYMBOL(machine_restart); > > > > Should we make this EXPORT_SYMBOL_GPL? I suppose it's not for general > > use by out of tree drivers and it matches the other pm_power_off symbol > > we export in this file. > > Yes please. Sure. Thanks for the feedback. -- Lee Jones [李琼斯] Senior Technical Lead - Developer Services Linaro.org │ Open source software for Arm SoCs Follow Linaro: Facebook | Twitter | Blog ___ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc
[PATCH v2 0/3] power: reset: Convert Power-Off driver to tristate
Provide support to compile the Power-Off driver as a module. v1 => v2: - s/EXPORT_SYMBOL/EXPORT_SYMBOL_GPL/ Elliot Berman (2): reboot: Export reboot_mode power: reset: Enable tristate on restart power-off driver Lee Jones (1): arch: Export machine_restart() instances so they can be called from modules arch/arc/kernel/reset.c| 1 + arch/arm/kernel/reboot.c | 1 + arch/arm64/kernel/process.c| 1 + arch/csky/kernel/power.c | 1 + arch/h8300/kernel/process.c| 1 + arch/hexagon/kernel/reset.c| 1 + arch/m68k/kernel/process.c | 1 + arch/microblaze/kernel/reset.c | 1 + arch/mips/kernel/reset.c | 1 + arch/mips/lantiq/falcon/reset.c| 1 + arch/mips/sgi-ip27/ip27-reset.c| 1 + arch/nds32/kernel/process.c| 2 +- arch/nios2/kernel/process.c| 1 + arch/openrisc/kernel/process.c | 1 + arch/parisc/kernel/process.c | 1 + arch/powerpc/kernel/setup-common.c | 1 + arch/riscv/kernel/reset.c | 1 + arch/s390/kernel/setup.c | 1 + arch/sh/kernel/reboot.c| 1 + arch/sparc/kernel/process_32.c | 1 + arch/sparc/kernel/reboot.c | 1 + arch/um/kernel/reboot.c| 1 + arch/x86/kernel/reboot.c | 1 + arch/xtensa/kernel/setup.c | 1 + drivers/power/reset/Kconfig| 2 +- kernel/reboot.c| 2 ++ 26 files changed, 27 insertions(+), 2 deletions(-) Cc: Albert Ou Cc: Anton Ivanov Cc: Borislav Petkov Cc: Brian Cain Cc: Christian Borntraeger Cc: Chris Zankel Cc: David S. Miller Cc: Guo Ren Cc: Heiko Carstens Cc: Helge Deller Cc: Ingo Molnar Cc: James E.J. Bottomley Cc: Jeff Dike Cc: John Crispin Cc: Jonas Bonn Cc: Ley Foon Tan Cc: linux-arm-ker...@lists.infradead.org Cc: linux-c...@vger.kernel.org Cc: linux-hexa...@vger.kernel.org Cc: linux-ker...@vger.kernel.org Cc: linux-m...@lists.linux-m68k.org Cc: linux-m...@vger.kernel.org Cc: linux-par...@vger.kernel.org Cc: linuxppc-...@lists.ozlabs.org Cc: linux-ri...@lists.infradead.org Cc: linux-s...@vger.kernel.org Cc: linux...@vger.kernel.org Cc: linux-snps-arc@lists.infradead.org Cc: linux...@lists.infradead.org Cc: linux-xte...@linux-xtensa.org Cc: Max Filippov Cc: Michael Ellerman Cc: Michal Simek Cc: openr...@lists.librecores.org Cc: Palmer Dabbelt Cc: Paul Walmsley Cc: Richard Weinberger Cc: Rich Felker Cc: sparcli...@vger.kernel.org Cc: Stafford Horne Cc: Stefan Kristiansson Cc: Thomas Gleixner Cc: uclinux-h8-de...@lists.sourceforge.jp Cc: Vasily Gorbik Cc: Vineet Gupta Cc: Will Deacon Cc: Yoshinori Sato -- 2.33.0.153.gba50c8fa24-goog ___ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc
[PATCH v2 1/3] arch: Export machine_restart() instances so they can be called from modules
A recent attempt to convert the Power Reset Restart driver to tristate failed because of the following compile error (reported once merged by Stephen Rothwell via Linux Next): ERROR: "machine_restart" [drivers/power/reset/restart-poweroff.ko] undefined! This error occurs since some of the machine_restart() instances are not currently exported for use in modules. This patch aims to rectify that. Cc: Vineet Gupta Cc: Will Deacon Cc: Guo Ren Cc: Yoshinori Sato Cc: Brian Cain Cc: Michal Simek Cc: John Crispin Cc: Ley Foon Tan Cc: Jonas Bonn Cc: Stefan Kristiansson Cc: Stafford Horne Cc: James E.J. Bottomley Cc: Helge Deller Cc: Michael Ellerman Cc: Paul Walmsley Cc: Palmer Dabbelt Cc: Albert Ou Cc: Heiko Carstens Cc: Vasily Gorbik Cc: Christian Borntraeger Cc: Rich Felker Cc: David S. Miller Cc: Jeff Dike Cc: Richard Weinberger Cc: Anton Ivanov Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Borislav Petkov Cc: Chris Zankel Cc: Max Filippov Cc: linux-snps-arc@lists.infradead.org Cc: linux-ker...@vger.kernel.org Cc: linux-arm-ker...@lists.infradead.org Cc: linux-c...@vger.kernel.org Cc: uclinux-h8-de...@lists.sourceforge.jp Cc: linux-hexa...@vger.kernel.org Cc: linux-m...@lists.linux-m68k.org Cc: linux-m...@vger.kernel.org Cc: openr...@lists.librecores.org Cc: linux-par...@vger.kernel.org Cc: linuxppc-...@lists.ozlabs.org Cc: linux-ri...@lists.infradead.org Cc: linux-s...@vger.kernel.org Cc: linux...@vger.kernel.org Cc: sparcli...@vger.kernel.org Cc: linux...@lists.infradead.org Cc: linux-xte...@linux-xtensa.org Signed-off-by: Lee Jones Acked-by: Geert Uytterhoeven Acked-by: Catalin Marinas Acked-by: Thomas Bogendoerfer --- arch/arc/kernel/reset.c| 1 + arch/arm/kernel/reboot.c | 1 + arch/arm64/kernel/process.c| 1 + arch/csky/kernel/power.c | 1 + arch/h8300/kernel/process.c| 1 + arch/hexagon/kernel/reset.c| 1 + arch/m68k/kernel/process.c | 1 + arch/microblaze/kernel/reset.c | 1 + arch/mips/kernel/reset.c | 1 + arch/mips/lantiq/falcon/reset.c| 1 + arch/mips/sgi-ip27/ip27-reset.c| 1 + arch/nds32/kernel/process.c| 2 +- arch/nios2/kernel/process.c| 1 + arch/openrisc/kernel/process.c | 1 + arch/parisc/kernel/process.c | 1 + arch/powerpc/kernel/setup-common.c | 1 + arch/riscv/kernel/reset.c | 1 + arch/s390/kernel/setup.c | 1 + arch/sh/kernel/reboot.c| 1 + arch/sparc/kernel/process_32.c | 1 + arch/sparc/kernel/reboot.c | 1 + arch/um/kernel/reboot.c| 1 + arch/x86/kernel/reboot.c | 1 + arch/xtensa/kernel/setup.c | 1 + 24 files changed, 24 insertions(+), 1 deletion(-) diff --git a/arch/arc/kernel/reset.c b/arch/arc/kernel/reset.c index fd6c3eb930bad..1f5d8ce532e2f 100644 --- a/arch/arc/kernel/reset.c +++ b/arch/arc/kernel/reset.c @@ -20,6 +20,7 @@ void machine_restart(char *__unused) pr_info("Put your restart handler here\n"); machine_halt(); } +EXPORT_SYMBOL_GPL(machine_restart); void machine_power_off(void) { diff --git a/arch/arm/kernel/reboot.c b/arch/arm/kernel/reboot.c index 3044fcb8d0736..95cdcb17251af 100644 --- a/arch/arm/kernel/reboot.c +++ b/arch/arm/kernel/reboot.c @@ -146,3 +146,4 @@ void machine_restart(char *cmd) printk("Reboot failed -- System halted\n"); while (1); } +EXPORT_SYMBOL_GPL(machine_restart); diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c index c8989b999250d..d7557f649dbd6 100644 --- a/arch/arm64/kernel/process.c +++ b/arch/arm64/kernel/process.c @@ -148,6 +148,7 @@ void machine_restart(char *cmd) printk("Reboot failed -- System halted\n"); while (1); } +EXPORT_SYMBOL_GPL(machine_restart); #define bstr(suffix, str) [PSR_BTYPE_ ## suffix >> PSR_BTYPE_SHIFT] = str static const char *const btypes[] = { diff --git a/arch/csky/kernel/power.c b/arch/csky/kernel/power.c index 923ee4e381b81..1787de5b13ba6 100644 --- a/arch/csky/kernel/power.c +++ b/arch/csky/kernel/power.c @@ -28,3 +28,4 @@ void machine_restart(char *cmd) do_kernel_restart(cmd); asm volatile ("bkpt"); } +EXPORT_SYMBOL_GPL(machine_restart); diff --git a/arch/h8300/kernel/process.c b/arch/h8300/kernel/process.c index 2ac27e4248a46..f92f473a1934a 100644 --- a/arch/h8300/kernel/process.c +++ b/arch/h8300/kernel/process.c @@ -66,6 +66,7 @@ void machine_restart(char *__unused) local_irq_disable(); __asm__("jmp @@0"); } +EXPORT_SYMBOL_GPL(machine_restart); void machine_halt(void) { diff --git a/arch/hexagon/kernel/reset.c b/arch/hexagon/kernel/reset.c index da36114d928f0..ed79e0e5a0318 100644 --- a/arch/hexagon/kernel/reset.c +++ b/arch/hexagon/kernel/reset.c @@ -19,6 +19,7 @@ void machine_halt(void) void machine_restart(char *cmd) { } +EXPORT_SYMBOL_GPL(machine_restart); void (*pm_power_off)(void) = NULL; EXPO