Lines Matching refs:schema

160 pci_iov_schema_add_bool(nvlist_t *schema, const char *name, uint32_t flags,
167 nvlist_set_error(schema, ENOMEM);
176 nvlist_move_nvlist(schema, name, entry);
180 pci_iov_schema_add_string(nvlist_t *schema, const char *name, uint32_t flags,
187 nvlist_set_error(schema, ENOMEM);
196 nvlist_move_nvlist(schema, name, entry);
200 pci_iov_schema_int(nvlist_t *schema, const char *name, const char *type,
207 nvlist_set_error(schema, ENOMEM);
216 nvlist_move_nvlist(schema, name, entry);
220 pci_iov_schema_add_uint8(nvlist_t *schema, const char *name, uint32_t flags,
224 pci_iov_schema_int(schema, name, "uint8_t", flags, defaultVal);
228 pci_iov_schema_add_uint16(nvlist_t *schema, const char *name, uint32_t flags,
232 pci_iov_schema_int(schema, name, "uint16_t", flags, defaultVal);
236 pci_iov_schema_add_uint32(nvlist_t *schema, const char *name, uint32_t flags,
240 pci_iov_schema_int(schema, name, "uint32_t", flags, defaultVal);
244 pci_iov_schema_add_uint64(nvlist_t *schema, const char *name, uint32_t flags,
248 pci_iov_schema_int(schema, name, "uint64_t", flags, defaultVal);
252 pci_iov_schema_add_unicast_mac(nvlist_t *schema, const char *name,
259 nvlist_set_error(schema, ENOMEM);
268 nvlist_move_nvlist(schema, name, entry);
272 pci_iov_schema_add_vlan(nvlist_t *schema, const char *name,
279 nvlist_set_error(schema, ENOMEM);
288 nvlist_move_nvlist(schema, name, entry);
465 pci_iov_validate_param_schema(const nvlist_t *schema)
472 if (!nvlist_exists_string(schema, TYPE_SCHEMA_NAME))
474 type = nvlist_get_string(schema, TYPE_SCHEMA_NAME);
481 if (nvlist_exists(schema, DEFAULT_SCHEMA_NAME)) {
482 error = validator->default_validate(validator, schema);
487 if (nvlist_exists(schema, REQUIRED_SCHEMA_NAME))
492 if (nvlist_exists(schema, REQUIRED_SCHEMA_NAME)) {
493 if (!nvlist_exists_bool(schema, REQUIRED_SCHEMA_NAME))
527 * Validate that the driver schema does not define any configuration parameters
528 * whose names collide with configuration parameters defined in the iov schema.
552 * device schema node.
572 pci_iov_validate_device_schema(const nvlist_t *schema, const char *name)
577 if (!nvlist_exists_nvlist(schema, name))
579 dev_schema = nvlist_get_nvlist(schema, name);
597 /* Validate that we only have PF and VF devices beneath the top-level schema. */
616 pci_iov_validate_schema(const nvlist_t *schema)
620 error = pci_iov_validate_device_schema(schema, PF_CONFIG_NAME);
624 error = pci_iov_validate_device_schema(schema, VF_SCHEMA_NAME);
628 return (pci_iov_validate_schema_devices(schema));
632 * Validate that all required parameters from the schema are specified in the
637 pci_iov_schema_validate_required(const nvlist_t *schema, nvlist_t *config)
645 while ((name = nvlist_next(schema, &type, &cookie)) != NULL) {
646 param_schema = nvlist_get_nvlist(schema, name);
678 * Validate that all parameters in config are defined in the schema. Also
679 * validate that the type of the parameter matches the type in the schema.
682 pci_iov_schema_validate_types(const nvlist_t *schema, const nvlist_t *config)
691 if (!nvlist_exists_nvlist(schema, name))
694 schema_param = nvlist_get_nvlist(schema, name);
707 pci_iov_schema_validate_device(const nvlist_t *schema, nvlist_t *config,
718 device_schema = nvlist_get_nvlist(schema, schema_device);
767 pci_iov_schema_validate_vfs(const nvlist_t *schema, nvlist_t *config,
776 error = pci_iov_schema_validate_device(schema, config,
888 pci_iov_schema_validate_config(const nvlist_t *schema, nvlist_t *config)
893 error = pci_iov_schema_validate_device(schema, config, PF_CONFIG_NAME,
900 error = pci_iov_schema_validate_vfs(schema, config, num_vfs);
921 /* Allocate a new empty schema node. */