/* * hwconfig_sub - query if a particular hwconfig sub-option is specified * @opt: a string representing an option * @subopt: a string representing a sub-option * * This call is similar to hwconfig(), except that it takes additional * argument @subopt. In this example: * "dr_usb:mode=peripheral" * "dr_usb" is an option, "mode" is a sub-option, and "peripheral" is its * argument. */ int hwconfig_sub(const char *opt, const char *subopt) { size_t arglen; const char *arg; arg = __hwconfig(opt, &arglen); if (!arg) return 0; return !!hwconfig_parse(arg, arglen, subopt, ",;", '=', NULL); }
/* * hwconfig_subarg - get hwconfig sub-option's argument * @opt: a string representing an option * @subopt: a string representing a sub-option * @subarglen: a pointer to an allocated size_t variable * * This call is similar to hwconfig_arg(), except that it takes an additional * argument @subopt, and so works with sub-options. */ const char *hwconfig_subarg(const char *opt, const char *subopt, size_t *subarglen) { size_t arglen; const char *arg; arg = __hwconfig(opt, &arglen); if (!arg) return NULL; return hwconfig_parse(arg, arglen, subopt, ",;", '=', subarglen); }
/* * hwconfig_arg - get hwconfig option's argument * @opt: a string representing an option * @arglen: a pointer to an allocated size_t variable * * Unlike hwconfig() function, this function returns a pointer to the * start of the hwconfig arguments, if option is not found or it has * no specified arguments, the function returns NULL pointer. * * If CONFIG_HWCONFIG is undefined, the function returns "", and * arglen is set to 0. */ const char *hwconfig_arg(const char *opt, size_t *arglen) { return __hwconfig(opt, arglen); }
/* * hwconfig - query if a particular hwconfig option is specified * @opt: a string representing an option * * This call can be used to find out whether U-Boot should configure * a particular hardware option. * * Returns non-zero value if the hardware option can be used and thus * should be configured, 0 otherwise. * * This function also returns non-zero value if CONFIG_HWCONFIG is * undefined. * * Returning non-zero value without CONFIG_HWCONFIG has its crucial * purpose: the hwconfig() call should be a "transparent" interface, * e.g. if a board doesn't need hwconfig facility, then we assume * that the board file only calls things that are actually used, so * hwconfig() will always return true result. */ int hwconfig(const char *opt) { return !!__hwconfig(opt, NULL); }
/* * hwconfig_arg_f - get hwconfig option's argument * @opt: a string representing an option * @arglen: a pointer to an allocated size_t variable * @buf: if non-NULL use this buffer to parse, otherwise try env * * Unlike hwconfig_f() function, this function returns a pointer to the * start of the hwconfig arguments, if option is not found or it has * no specified arguments, the function returns NULL pointer. * * If CONFIG_HWCONFIG is undefined, the function returns "", and * arglen is set to 0. */ const char *hwconfig_arg_f(const char *opt, size_t *arglen, char *buf) { return __hwconfig(opt, arglen, buf); }
/* * hwconfig_f - query if a particular hwconfig option is specified * @opt: a string representing an option * @buf: if non-NULL use this buffer to parse, otherwise try env * * This call can be used to find out whether U-Boot should configure * a particular hardware option. * * Returns non-zero value if the hardware option can be used and thus * should be configured, 0 otherwise. * * This function also returns non-zero value if CONFIG_HWCONFIG is * undefined. * * Returning non-zero value without CONFIG_HWCONFIG has its crucial * purpose: the hwconfig() call should be a "transparent" interface, * e.g. if a board doesn't need hwconfig facility, then we assume * that the board file only calls things that are actually used, so * hwconfig() will always return true result. */ int hwconfig_f(const char *opt, char *buf) { return !!__hwconfig(opt, NULL, buf); }