Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

hexagon: export raw I/O routines for modules

Patch series "Fixes for ARCH=hexagon allmodconfig", v2.

This series fixes some issues noticed with ARCH=hexagon allmodconfig.

This patch (of 3):

When building ARCH=hexagon allmodconfig, the following errors occur:

ERROR: modpost: "__raw_readsl" [drivers/i3c/master/svc-i3c-master.ko] undefined!
ERROR: modpost: "__raw_writesl" [drivers/i3c/master/dw-i3c-master.ko] undefined!
ERROR: modpost: "__raw_readsl" [drivers/i3c/master/dw-i3c-master.ko] undefined!
ERROR: modpost: "__raw_writesl" [drivers/i3c/master/i3c-master-cdns.ko] undefined!
ERROR: modpost: "__raw_readsl" [drivers/i3c/master/i3c-master-cdns.ko] undefined!

Export these symbols so that modules can use them without any errors.

Link: https://lkml.kernel.org/r/20211115174250.1994179-1-nathan@kernel.org
Link: https://lkml.kernel.org/r/20211115174250.1994179-2-nathan@kernel.org
Fixes: 013bf24c3829 ("Hexagon: Provide basic implementation and/or stubs for I/O routines.")
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Acked-by: Brian Cain <bcain@codeaurora.org>
Cc: Nick Desaulniers <ndesaulniers@google.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Nathan Chancellor and committed by
Linus Torvalds
ffb92ce8 9a543f00

+4
+4
arch/hexagon/lib/io.c
··· 27 27 *dst++ = *src; 28 28 29 29 } 30 + EXPORT_SYMBOL(__raw_readsw); 30 31 31 32 /* 32 33 * __raw_writesw - read words a short at a time ··· 48 47 49 48 50 49 } 50 + EXPORT_SYMBOL(__raw_writesw); 51 51 52 52 /* Pretty sure len is pre-adjusted for the length of the access already */ 53 53 void __raw_readsl(const void __iomem *addr, void *data, int len) ··· 64 62 65 63 66 64 } 65 + EXPORT_SYMBOL(__raw_readsl); 67 66 68 67 void __raw_writesl(void __iomem *addr, const void *data, int len) 69 68 { ··· 79 76 80 77 81 78 } 79 + EXPORT_SYMBOL(__raw_writesl);