Thread (105 messages) flat view 105 messages, 14 authors, 2017-11-22

Re: [PATCH 08/31] nds32: Cache and TLB routines

From: Greentime Hu <hidden>
Date: 2017-11-08 09:02:33
Also in: linux-arch, lkml

2017-11-08 16:45 GMT+08:00 Arnd Bergmann [off-list ref]:
On Wed, Nov 8, 2017 at 6:54 AM, Greentime Hu [off-list ref] wrote:
quoted
+#ifndef __NDS32_PROCFNS_H__
+#define __NDS32_PROCFNS_H__
+
+#define CPU_NAME n13
+
+#ifdef __KERNEL__
+
+#ifdef __STDC__
+#define ____cpu_fn(name,fn)       name##fn
+#else
+#define ____cpu_fn(name,fn)       name/**/fn
+#endif
+#define __cpu_fn(name,fn)         ____cpu_fn(name,fn)
+
+#define cpu_proc_init                  __cpu_fn( CPU_NAME, _proc_init)
+#define cpu_proc_fin                   __cpu_fn( CPU_NAME, _proc_fin)
+#define cpu_do_idle                    __cpu_fn( CPU_NAME, _do_idle)
+#define cpu_reset                      __cpu_fn( CPU_NAME, _reset)
+#define cpu_switch_mm                  __cpu_fn( CPU_NAME, _switch_mm)
I see you have copied this from ARM. Do you actually need the same complexity,
with the ability to build either optimal code for a particular CPU or
a multi-CPU
version?

Most other architectures seem to have settled for doing just one of the two
models. How many CPU implementations to you expect to support that
differ in all of those functions?
I think we can simplify the implementations because we may not have that
many implementations. I will refine it in the next version patch.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help