Message ID | 20220607120530.2447112-3-tarumizu.kohei@fujitsu.com |
---|---|
State | New |
Headers | show |
Series | Add hardware prefetch control driver for A64FX and x86 | expand |
On 6/7/22 05:05, Kohei Tarumizu wrote: > diff --git a/drivers/soc/fujitsu/Kconfig b/drivers/soc/fujitsu/Kconfig > new file mode 100644 > index 000000000000..6c5990b75cc5 > --- /dev/null > +++ b/drivers/soc/fujitsu/Kconfig > @@ -0,0 +1,26 @@ > +# SPDX-License-Identifier: GPL-2.0-only > + > +menu "Fujitsu SoC drivers" > + > +config ALLOW_INCOMPLETE_CACHE_SYSFS > + bool > + > +config A64FX_HWPF_CONTROL > + tristate "A64FX Hardware Prefetch Control driver" > + depends on ARM64 > + select ALLOW_INCOMPLETE_CACHE_SYSFS > + help > + This provides a sysfs interface to control the Hardware Prefetch > + behavior for A64FX. > + > + A64FX has IMP_PF_STREAM_DETECT_CTRL_EL0, which can control the > + hardware prefech behavior. If the processor supports this, the prefetch > + module can be loaded with the name a64fx-pfctl. > + > + Depending on the characteristics of the application, this register > + parameters improve or degrade performance. > + > + Please see Documentation/ABI/testing/sysfs-devices-system-cpu for > + more information.
diff --git a/MAINTAINERS b/MAINTAINERS index d6d879cb0afd..b3e920a8a044 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -8620,6 +8620,11 @@ F: include/linux/hwmon*.h F: include/trace/events/hwmon*.h K: (devm_)?hwmon_device_(un)?register(|_with_groups|_with_info) +HARDWARE PREFETCH CONTROL DRIVERS +M: Kohei Tarumizu <tarumizu.kohei@fujitsu.com> +S: Maintained +F: drivers/soc/fujitsu/a64fx-pfctl.c + HARDWARE RANDOM NUMBER GENERATOR CORE M: Matt Mackall <mpm@selenic.com> M: Herbert Xu <herbert@gondor.apana.org.au> diff --git a/drivers/soc/Kconfig b/drivers/soc/Kconfig index c5aae42673d3..d87754799d90 100644 --- a/drivers/soc/Kconfig +++ b/drivers/soc/Kconfig @@ -9,6 +9,7 @@ source "drivers/soc/atmel/Kconfig" source "drivers/soc/bcm/Kconfig" source "drivers/soc/canaan/Kconfig" source "drivers/soc/fsl/Kconfig" +source "drivers/soc/fujitsu/Kconfig" source "drivers/soc/imx/Kconfig" source "drivers/soc/ixp4xx/Kconfig" source "drivers/soc/litex/Kconfig" diff --git a/drivers/soc/Makefile b/drivers/soc/Makefile index 904eec2a7871..6c8ff1792cda 100644 --- a/drivers/soc/Makefile +++ b/drivers/soc/Makefile @@ -12,6 +12,7 @@ obj-$(CONFIG_SOC_CANAAN) += canaan/ obj-$(CONFIG_ARCH_DOVE) += dove/ obj-$(CONFIG_MACH_DOVE) += dove/ obj-y += fsl/ +obj-y += fujitsu/ obj-$(CONFIG_ARCH_GEMINI) += gemini/ obj-y += imx/ obj-y += ixp4xx/ diff --git a/drivers/soc/fujitsu/Kconfig b/drivers/soc/fujitsu/Kconfig new file mode 100644 index 000000000000..6c5990b75cc5 --- /dev/null +++ b/drivers/soc/fujitsu/Kconfig @@ -0,0 +1,26 @@ +# SPDX-License-Identifier: GPL-2.0-only + +menu "Fujitsu SoC drivers" + +config ALLOW_INCOMPLETE_CACHE_SYSFS + bool + +config A64FX_HWPF_CONTROL + tristate "A64FX Hardware Prefetch Control driver" + depends on ARM64 + select ALLOW_INCOMPLETE_CACHE_SYSFS + help + This provides a sysfs interface to control the Hardware Prefetch + behavior for A64FX. + + A64FX has IMP_PF_STREAM_DETECT_CTRL_EL0, which can control the + hardware prefech behavior. If the processor supports this, the + module can be loaded with the name a64fx-pfctl. + + Depending on the characteristics of the application, this register + parameters improve or degrade performance. + + Please see Documentation/ABI/testing/sysfs-devices-system-cpu for + more information. + +endmenu diff --git a/drivers/soc/fujitsu/Makefile b/drivers/soc/fujitsu/Makefile new file mode 100644 index 000000000000..35e284a548bb --- /dev/null +++ b/drivers/soc/fujitsu/Makefile @@ -0,0 +1,2 @@ +# SPDX-License-Identifier: GPL-2.0-only +obj-$(CONFIG_A64FX_HWPF_CONTROL) += a64fx-pfctl.o
Adds Kconfig/Makefile to build hardware prefetch control driver for A64FX support, and also adds a MAINTAINERS entry. Signed-off-by: Kohei Tarumizu <tarumizu.kohei@fujitsu.com> --- MAINTAINERS | 5 +++++ drivers/soc/Kconfig | 1 + drivers/soc/Makefile | 1 + drivers/soc/fujitsu/Kconfig | 26 ++++++++++++++++++++++++++ drivers/soc/fujitsu/Makefile | 2 ++ 5 files changed, 35 insertions(+) create mode 100644 drivers/soc/fujitsu/Kconfig create mode 100644 drivers/soc/fujitsu/Makefile