diff options
author | jmcneill <jmcneill@pkgsrc.org> | 2015-01-04 18:42:49 +0000 |
---|---|---|
committer | jmcneill <jmcneill@pkgsrc.org> | 2015-01-04 18:42:49 +0000 |
commit | e74989a70758bf2299cca04a1244be5f03b43a46 (patch) | |
tree | 71a17731c0d610e2f8e1a0b1cb73d25ed7a4905c /sysutils/estd | |
parent | 8ab01bdbb2511b4553a6cad9cf0e0bdc93620925 (diff) | |
download | pkgsrc-e74989a70758bf2299cca04a1244be5f03b43a46.tar.gz |
Add support for Rockchip 'machdep.cpu.frequency' interface. Use hw.ncpu to
detect number of CPUs on non-ACPI NetBSD systems.
Diffstat (limited to 'sysutils/estd')
-rw-r--r-- | sysutils/estd/Makefile | 4 | ||||
-rw-r--r-- | sysutils/estd/distinfo | 4 | ||||
-rw-r--r-- | sysutils/estd/patches/patch-ab | 63 |
3 files changed, 55 insertions, 16 deletions
diff --git a/sysutils/estd/Makefile b/sysutils/estd/Makefile index c11b187a396..3fc5d73bfb9 100644 --- a/sysutils/estd/Makefile +++ b/sysutils/estd/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.22 2014/10/01 01:17:33 jmcneill Exp $ +# $NetBSD: Makefile,v 1.23 2015/01/04 18:42:49 jmcneill Exp $ DISTNAME= estd-r7 PKGNAME= estd-0.7 -PKGREVISION= 1 +PKGREVISION= 2 CATEGORIES= sysutils MASTER_SITES= http://www.ecademix.com/JohannesHofmann/ diff --git a/sysutils/estd/distinfo b/sysutils/estd/distinfo index 04892c06bb2..e24d7d284dd 100644 --- a/sysutils/estd/distinfo +++ b/sysutils/estd/distinfo @@ -1,7 +1,7 @@ -$NetBSD: distinfo,v 1.15 2014/10/01 01:17:33 jmcneill Exp $ +$NetBSD: distinfo,v 1.16 2015/01/04 18:42:49 jmcneill Exp $ SHA1 (estd-r7.tar.gz) = 41186b82fe2a71a4436e01805522b60d100f84d4 RMD160 (estd-r7.tar.gz) = c91dad3c74ef099d54e546ac0cdf7a4a29c4a4f3 Size (estd-r7.tar.gz) = 8712 bytes SHA1 (patch-aa) = 539b1bdcfab5815edec76277ee1be9fa9c762323 -SHA1 (patch-ab) = 1fc49206f6a9add634bb7ab1d363d9318530e1e9 +SHA1 (patch-ab) = 5dce228d8b2bb52db8dee45f48e0d4702d4358ed diff --git a/sysutils/estd/patches/patch-ab b/sysutils/estd/patches/patch-ab index 9f5914e8cac..73fc296eee1 100644 --- a/sysutils/estd/patches/patch-ab +++ b/sysutils/estd/patches/patch-ab @@ -1,51 +1,55 @@ -$NetBSD: patch-ab,v 1.9 2014/10/01 01:17:33 jmcneill Exp $ +$NetBSD: patch-ab,v 1.10 2015/01/04 18:42:50 jmcneill Exp $ --- estd.c.orig 2009-10-20 16:18:28.000000000 +0000 -+++ estd.c 2014-09-30 11:10:54.000000000 +0000 -@@ -55,7 +55,10 @@ ++++ estd.c +@@ -55,7 +55,11 @@ #define TECH_EST 1 #define TECH_POWERNOW 2 #define TECH_ACPI 3 -#define TECH_MAX 3 +#define TECH_INTREPID 4 +#define TECH_LOONGSON 5 -+#define TECH_GENERIC 6 -+#define TECH_MAX 6 ++#define TECH_ROCKCHIP 6 ++#define TECH_GENERIC 7 ++#define TECH_MAX 7 /* this is ugly, but... <shrug> */ #define MAX_FREQS 32 -@@ -116,26 +119,35 @@ int ndomains; +@@ -116,26 +120,38 @@ int ndomains; static size_t cp_time_size = sizeof(cp_time[0]) * CPUSTATES; #endif -static char *techdesc[4] = {"Unknown", -+static char *techdesc[7] = {"Unknown", ++static char *techdesc[8] = {"Unknown", "Enhanced SpeedStep", "PowerNow", - "ACPI P-States" + "ACPI P-States", + "Intrepid", + "Loongson", ++ "Rockchip", + "Generic" }; -static char *freqctl[4] = { "", -+static char *freqctl[7] = { "", ++static char *freqctl[8] = { "", "machdep.est.frequency.available", "machdep.powernow.frequency.available", - "hw.acpi.cpu.px_dom0.available" + "hw.acpi.cpu.px_dom0.available", + "machdep.intrepid.frequency.available", + "machdep.loongson.frequency.available", ++ "machdep.cpu.frequency.available", + "machdep.frequency.available" }; -static char *setctl[4] = { "", -+static char *setctl[7] = { "", ++static char *setctl[8] = { "", "machdep.est.frequency.target", "machdep.powernow.frequency.target", - "hw.acpi.cpu.px_dom0.select" + "hw.acpi.cpu.px_dom0.select", + "machdep.intrepid.frequency.target", + "machdep.loongson.frequency.target", ++ "machdep.cpu.frequency.target", + "machdep.frequency.current" }; @@ -53,11 +57,11 @@ $NetBSD: patch-ab,v 1.9 2014/10/01 01:17:33 jmcneill Exp $ usage() { - printf("usage: estd [-d] [-o] [-n] [-A] [-C] [-E] [-P] [-a] [-s] [-b] [-p poll interval in us] [-g grace period] [-l low watermark percentage] [-h high watermark percentage] [-m minimum MHz] [-M maximum MHz]\n"); -+ printf("usage: estd [-d] [-o] [-n] [-A] [-C] [-E] [-P] [-I] [-L] [-G] [-a] [-s] [-b] [-p poll interval in us] [-g grace period] [-l low watermark percentage] [-h high watermark percentage] [-m minimum MHz] [-M maximum MHz]\n"); ++ printf("usage: estd [-d] [-o] [-n] [-A] [-C] [-E] [-P] [-I] [-L] [-R] [-G] [-a] [-s] [-b] [-p poll interval in us] [-g grace period] [-l low watermark percentage] [-h high watermark percentage] [-m minimum MHz] [-M maximum MHz]\n"); printf(" estd -v\n"); printf(" estd -f\n"); exit(1); -@@ -367,7 +379,7 @@ main(int argc, char *argv[]) +@@ -367,7 +383,7 @@ main(int argc, char *argv[]) FILE *fexists; /* get command-line options */ @@ -66,7 +70,7 @@ $NetBSD: patch-ab,v 1.9 2014/10/01 01:17:33 jmcneill Exp $ switch (ch) { case 'v': version(); -@@ -400,6 +412,16 @@ main(int argc, char *argv[]) +@@ -400,6 +416,19 @@ main(int argc, char *argv[]) break; case 'P': tech = TECH_POWERNOW; @@ -77,9 +81,44 @@ $NetBSD: patch-ab,v 1.9 2014/10/01 01:17:33 jmcneill Exp $ + case 'L': + tech = TECH_LOONGSON; + break; ++ case 'R': ++ tech = TECH_ROCKCHIP; ++ break; + case 'G': + tech = TECH_GENERIC; + break; case 'a': strategy = AGGRESSIVE; break; +@@ -434,8 +463,9 @@ main(int argc, char *argv[]) + + ndomains = 1; + domain = ecalloc(ndomains, sizeof(struct domain)); +- +- #if defined(__DragonFly__) ++ ++#if defined(__NetBSD__) || defined(__DragonFly__) ++# if defined(__DragonFly__) + if (kinfo_get_cpus(&ncpus)) { + fprintf(stderr, "estd: Cannot get number of cpus\n"); + exit(1); +@@ -443,11 +473,18 @@ main(int argc, char *argv[]) + cp_time = ecalloc(ncpus, sizeof(struct kinfo_cputime)); + cp_old = ecalloc(ncpus, sizeof(struct kinfo_cputime)); + cp_time_len = ncpus * sizeof(struct kinfo_cputime); ++# elif defined(__NetBSD__) ++ size_t ncpus_len = sizeof(ncpus); ++ if (sysctlbyname("hw.ncpu", &ncpus, &ncpus_len, NULL, 0) != 0) { ++ fprintf(stderr, "estd: Cannot get number of cpus\n"); ++ exit(1); ++ } ++# endif + domain[0].ncpus = ncpus; + domain[0].cpus = ecalloc(ncpus, sizeof(int)); + for (i = 0; i < domain[0].ncpus; i++) + domain[0].cpus[i] = i; +- #endif ++#endif + + /* try to guess cpu-scaling technology */ + if (tech == TECH_UNKNOWN) { |