From 4691c88fee556efee9cdd132b9bd8a8c940901d1 Mon Sep 17 00:00:00 2001 From: Adrian Chadd Date: Mon, 30 Jan 2017 22:29:21 +0000 Subject: [PATCH] [mips] add some (temporary, I hope!) mips24k/mips74k hwpmc modules. Ideally we'd have a top level hwpmc module with the shared bits, then cpu specific glue as needed. However, on the MIPS side, there's no probe code - {mips24k, mips74k, octeon} implement a set of methods that hwpmc_mips.c expects. So this populates separate modules with duplicate code. Ew, but it does work. This gets me off the hook - these work fine as copied into the relevant mfsroot for mips24k/mips74k systems. TODO: * do it the "right" way in the future. Note that modules/hwpmc/ does build fine on MIPS, it jusn't DO anything. So it'd be nice to maybe call that "hwpmc_core" and then "hwpmc" can be the CPU/arch glue. --- sys/modules/Makefile | 7 +++++++ sys/modules/hwpmc_mips24k/Makefile | 14 ++++++++++++++ sys/modules/hwpmc_mips74k/Makefile | 14 ++++++++++++++ 3 files changed, 35 insertions(+) create mode 100644 sys/modules/hwpmc_mips24k/Makefile create mode 100644 sys/modules/hwpmc_mips74k/Makefile diff --git a/sys/modules/Makefile b/sys/modules/Makefile index f6859228cf64..0a9fb06a323d 100644 --- a/sys/modules/Makefile +++ b/sys/modules/Makefile @@ -138,6 +138,8 @@ SUBDIR= \ ${_hptnr} \ ${_hptrr} \ hwpmc \ + ${_hwpmc_mips24k} \ + ${_hwpmc_mips74k} \ ${_hyperv} \ i2c \ ${_ibcore} \ @@ -520,6 +522,11 @@ _cxgbe= cxgbe SUBDIR+= zfs .endif +.if ${MACHINE_CPUARCH} == "mips" + _hwpmc_mips24k= hwpmc_mips24k + _hwpmc_mips74k= hwpmc_mips74k +.endif + .if ${MACHINE_CPUARCH} != "aarch64" && ${MACHINE_CPUARCH} != "arm" && \ ${MACHINE_CPUARCH} != "mips" && ${MACHINE_CPUARCH} != "powerpc" && \ ${MACHINE_CPUARCH} != "riscv" diff --git a/sys/modules/hwpmc_mips24k/Makefile b/sys/modules/hwpmc_mips24k/Makefile new file mode 100644 index 000000000000..772fa563b4cb --- /dev/null +++ b/sys/modules/hwpmc_mips24k/Makefile @@ -0,0 +1,14 @@ +# +# $FreeBSD$ +# + +.PATH: ${.CURDIR}/../../dev/hwpmc + +KMOD= hwpmc_mips24k + +SRCS= hwpmc_mod.c hwpmc_logging.c hwpmc_soft.c vnode_if.h +SRCS+= hwpmc_mips.c + +SRCS+= hwpmc_mips24k.c + +.include diff --git a/sys/modules/hwpmc_mips74k/Makefile b/sys/modules/hwpmc_mips74k/Makefile new file mode 100644 index 000000000000..204455c9cf35 --- /dev/null +++ b/sys/modules/hwpmc_mips74k/Makefile @@ -0,0 +1,14 @@ +# +# $FreeBSD$ +# + +.PATH: ${.CURDIR}/../../dev/hwpmc + +KMOD= hwpmc_mips74k + +SRCS= hwpmc_mod.c hwpmc_logging.c hwpmc_soft.c vnode_if.h +SRCS+= hwpmc_mips.c + +SRCS+= hwpmc_mips74k.c + +.include