From: Hannes Reinecke Date: Wed, 25 Jun 2014 13:27:37 +0000 (+0200) Subject: Add module param type 'ullong' X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=00318eeb1785738da5211112195dc8da25775c2f;p=platform%2Fkernel%2Flinux-3.10.git Add module param type 'ullong' Some driver might want to pass in an 64-bit value, so introduce a module param type 'ullong'. Signed-off-by: Hannes Reinecke Reviewed-by: Christoph Hellwig Reviewed-by: Ewan Milne Acked-by: Rusty Russell Signed-off-by: Christoph Hellwig --- diff --git a/include/linux/moduleparam.h b/include/linux/moduleparam.h index 137b419..4ea8904 100644 --- a/include/linux/moduleparam.h +++ b/include/linux/moduleparam.h @@ -372,6 +372,11 @@ extern int param_set_ulong(const char *val, const struct kernel_param *kp); extern int param_get_ulong(char *buffer, const struct kernel_param *kp); #define param_check_ulong(name, p) __param_check(name, p, unsigned long) +extern struct kernel_param_ops param_ops_ullong; +extern int param_set_ullong(const char *val, const struct kernel_param *kp); +extern int param_get_ullong(char *buffer, const struct kernel_param *kp); +#define param_check_ullong(name, p) __param_check(name, p, unsigned long long) + extern struct kernel_param_ops param_ops_charp; extern int param_set_charp(const char *val, const struct kernel_param *kp); extern int param_get_charp(char *buffer, const struct kernel_param *kp); diff --git a/kernel/params.c b/kernel/params.c index d82957e..c1094cf 100644 --- a/kernel/params.c +++ b/kernel/params.c @@ -252,6 +252,7 @@ STANDARD_PARAM_DEF(int, int, "%i", kstrtoint); STANDARD_PARAM_DEF(uint, unsigned int, "%u", kstrtouint); STANDARD_PARAM_DEF(long, long, "%li", kstrtol); STANDARD_PARAM_DEF(ulong, unsigned long, "%lu", kstrtoul); +STANDARD_PARAM_DEF(ullong, unsigned long long, "%llu", kstrtoull); int param_set_charp(const char *val, const struct kernel_param *kp) {