Hexagon: Export raw I/O routines for modules
PATCH 1/1 Hexagon: Export raw I/O routines for modules
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.
---
It would be nice if this could get into 5.14 at some point so that we can build ARCH=hexagon allmodconfig in our CI.
arch/hexagon/lib/io.c | 4 ++++ 1 file changed, 4 insertions(+)
arch/hexagon/lib/io.c +4 -0
@@ -27,6 +27,7 @@ void __raw_readsw(const void __iomem *addr, void *data, int len) *dst++ = *src; } +EXPORT_SYMBOL (__raw_readsw);/* * __raw_writesw - read words a short at a time
@@ -47,6 +48,7 @@ void __raw_writesw(void __iomem *addr, const void *data, int len) } +EXPORT_SYMBOL (__raw_writesw);/* Pretty sure len is pre-adjusted for the length of the access already */ void __raw_readsl (const void __iomem *addr,void *data,int len)
@@ -62,6 +64,7 @@ void __raw_readsl(const void __iomem *addr, void *data, int len) } +EXPORT_SYMBOL (__raw_readsl);void __raw_writesl (void __iomem *addr,const void *data,int len) {
@@ -76,3 +79,4 @@ void __raw_writesl(void __iomem *addr, const void *data, int len) } +EXPORT_SYMBOL (__raw_writesl);
base-commit: f55966571d5eb2876a11e48e798b4592fa1ffbb7
Signature · 1 line
2.32.0.93.g670b81a890
Quoted 54 lines · Nathan Chancellor
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.
Fixes 013bf24c3829 ("Hexagon: Provide basic implementation and/or stubs for I/O routines.")Signed-off-by Nathan Chancellor <[email protected]>---
It would be nice if this could get into 5.14 at some point so that we can build ARCH=hexagon allmodconfig in our CI.
arch/hexagon/lib/io.c | 4 ++++ 1 file changed, 4 insertions(+)arch/hexagon/lib/io.c +4
-0@@ -27,6 +27,7 @@ void __raw_readsw(const void __iomem *addr, void *data, int len) *dst++ = *src; } +EXPORT_SYMBOL (__raw_readsw);/* * __raw_writesw - read words a short at a time @@ -47,6 +48,7 @@ void __raw_writesw(void __iomem *addr, const void *data, int len) } +EXPORT_SYMBOL (__raw_writesw);/* Pretty sure len is pre-adjusted for the length of the access already */ void __raw_readsl (const void __iomem *addr,void *data,int len)@@ -62,6 +64,7 @@ void __raw_readsl(const void __iomem *addr, void *data, int len) } +EXPORT_SYMBOL (__raw_readsl);void __raw_writesl (void __iomem *addr,const void *data,int len) {@@ -76,3 +79,4 @@ void __raw_writesl(void __iomem *addr, const void *data, int len) } +EXPORT_SYMBOL (__raw_writesl);
Quoted 3 lines
base-commit:
f55966571d5eb2876a11e48e798b4592fa1ffbb7Signature · 1 line
2.32.0.93.g670b81a890
Ping? Brian, if you do not want to carry this, can you give an ack so that Andrew can?
Cheers,
Nathan
Brian Cain
Acked-byQuoted 4 lines
-----Original Message-----
From: Nathan Chancellor <[email protected]>
...
Quoted 1 line · Nathan Chancellor
...
Quoted 21 lines
Quoted 3 lines
Export these symbols so that modules can use them without any errors.
Fixes 013bf24c3829 ("Hexagon: Provide basic implementation and/or stubsfor I/O routines.")
arch/hexagon/lib/io.c void __raw_readsw(const void __iomem *addr, void
Quoted 14 lines
Signed-off-by Nathan Chancellor <[email protected]>---
It would be nice if this could get into 5.14 at some point so that we can build ARCH=hexagon allmodconfig in our CI.
arch/hexagon/lib/io.c | 4 ++++ 1 file changed, 4 insertions(+)arch/hexagon/lib/io.c +0
-0@@ -27,6 +27,7 @@ void __raw_readsw(const void __iomem *addr, void*data, int len)
Quoted 2 lines
arch/hexagon/lib/io.c +0
-0*dst++ = *src;
Quoted 13 lines
arch/hexagon/lib/io.c void __raw_writesw(void __iomem *addr, const void
Quoted 6 lines
arch/hexagon/lib/io.c +1
-0} +EXPORT_SYMBOL (__raw_readsw);/* * __raw_writesw - read words a short at a time @@ -47,6 +48,7 @@ void __raw_writesw(void __iomem *addr, const void*data, int len)
Quoted 6 lines
arch/hexagon/lib/io.c +1
-0} +EXPORT_SYMBOL (__raw_writesw);/* Pretty sure len is pre-adjusted for the length of the access
already */
Quoted 17 lines
arch/hexagon/lib/io.c void __raw_readsl(const void __iomem *addr, void
Quoted 2 lines
arch/hexagon/lib/io.c +0
-0void __raw_readsl (const void __iomem *addr,void *data,int len)@@ -62,6 +64,7 @@ void __raw_readsl(const void __iomem *addr, void*data, int len)
arch/hexagon/lib/io.c void __raw_writesl(void __iomem *addr, const void
Quoted 8 lines
arch/hexagon/lib/io.c +1
-0} +EXPORT_SYMBOL (__raw_readsl);void __raw_writesl (void __iomem *addr,const void *data,int len) {@@ -76,3 +79,4 @@ void __raw_writesl(void __iomem *addr, const void*data, int len)
Quoted 5 lines
arch/hexagon/lib/io.c +1
-0} +EXPORT_SYMBOL (__raw_writesl);
Quoted 6 lines
Quoted 3 lines
base-commit:
f55966571d5eb2876a11e48e798b4592fa1ffbb7--
2.32.0.93.g670b81a890Ping? Brian, if you do not want to carry this, can you give an ack so that Andrew can?
Andrew, could you pick this up? Brian gave his ack and we just got a 0day report about this:
https://lore.kernel.org/r/[email protected]/
If you need me to resend this, I can.
Cheers,
Nathan
Quoted 57 lines · Nathan Chancellor
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.
Fixes 013bf24c3829 ("Hexagon: Provide basic implementation and/or stubs for I/O routines.")Signed-off-by Nathan Chancellor <[email protected]>---
It would be nice if this could get into 5.14 at some point so that we can build ARCH=hexagon allmodconfig in our CI.
arch/hexagon/lib/io.c | 4 ++++ 1 file changed, 4 insertions(+)arch/hexagon/lib/io.c +4
-0@@ -27,6 +27,7 @@ void __raw_readsw(const void __iomem *addr, void *data, int len) *dst++ = *src; } +EXPORT_SYMBOL (__raw_readsw);/* * __raw_writesw - read words a short at a time @@ -47,6 +48,7 @@ void __raw_writesw(void __iomem *addr, const void *data, int len) } +EXPORT_SYMBOL (__raw_writesw);/* Pretty sure len is pre-adjusted for the length of the access already */ void __raw_readsl (const void __iomem *addr,void *data,int len)@@ -62,6 +64,7 @@ void __raw_readsl(const void __iomem *addr, void *data, int len) } +EXPORT_SYMBOL (__raw_readsl);void __raw_writesl (void __iomem *addr,const void *data,int len) {@@ -76,3 +79,4 @@ void __raw_writesl(void __iomem *addr, const void *data, int len) } +EXPORT_SYMBOL (__raw_writesl);base-commit:
f55966571d5eb2876a11e48e798b4592fa1ffbb7Signature · 1 line
2.32.0.93.g670b81a890