Scroll to navigation

rtapi_module_param(3rtapi) RTAPI rtapi_module_param(3rtapi)


rtapi_module_param - Specifying module parameters


RTAPI_MP_INT(var, description)

RTAPI_MP_LONG(var, description)

RTAPI_MP_STRING(var, description)

RTAPI_MP_ARRAY_INT(var, num, description)

RTAPI_MP_ARRAY_LONG(var, num, description)

RTAPI_MP_ARRAY_STRING(var, num, description)






The variable where the parameter should be stored
A short description of the parameter or module
The maximum number of values for an array parameter
The license of the module, for instance "GPL"
The author of the module
The pointer to the function to be exported


These macros are portable ways to declare kernel module parameters. They must be used in the global scope, and are not followed by a terminating semicolon. They must be used after the associated variable or function has been defined.


EXPORT_FUNCTION makes a symbol available for use by a subsequently loaded component. It is unrelated to HAL functions, which are described in hal_export_funct(3hal)

Interpretation of license strings

MODULE_LICENSE follows the kernel's definition of license strings. Notably, "GPL" indicates "GNU General Public License v2 or later". (emphasis ours).

GNU General Public License v2 or later
"GPL v2"
GNU General Public License v2
"GPL and additional rights"
GNU General Public License v2 rights and more
"Dual BSD/GPL"
GNU General Public License v2 or BSD license choice
"Dual MIT/GPL"
GNU General Public License v2 or MIT license choice
"Dual MPL/GPL"
GNU General Public License v2 or Mozilla license choice
Non-free products

It is still good practice to include a license block which indicates the author, copyright date, and disclaimer of warranty as recommended by the GNU GPL.


Not available in userspace code.

2006-10-12 LinuxCNC Documentation