1# zx_system_get_features
2
3## NAME
4
5<!-- Updated by update-docs-from-abigen, do not edit. -->
6
7system_get_features - get supported hardware capabilities
8
9## SYNOPSIS
10
11<!-- Updated by update-docs-from-abigen, do not edit. -->
12
13```
14#include <zircon/syscalls.h>
15
16zx_status_t zx_system_get_features(uint32_t kind, uint32_t* features);
17```
18
19## DESCRIPTION
20
21`zx_system_get_features()` populates *features* with a bit mask of
22hardware-specific features.  *kind* indicates the specific type of features
23to retrieve, e.g. **ZX_FEATURE_KIND_CPU**.  The supported kinds and the meaning
24of individual feature bits is hardware-dependent.
25
26## RIGHTS
27
28<!-- Updated by update-docs-from-abigen, do not edit. -->
29
30TODO(ZX-2399)
31
32## RETURN VALUE
33
34`zx_system_get_features()`  returns **ZX_OK** on success.
35
36## ERRORS
37
38**ZX_ERR_NOT_SUPPORTED**  The requested feature kind is not available on this
39platform.
40
41## NOTES
42Refer to [Architecture Support](../architecture_support.md) for supported
43processor architectures.
44
45Refer to [zircon/features.h](../../system/public/zircon/features.h) for kinds
46of features and individual feature bits.
47
48## SEE ALSO
49
50 - [`zx_system_get_num_cpus()`]
51 - [`zx_system_get_physmem()`]
52
53<!-- References updated by update-docs-from-abigen, do not edit. -->
54
55[`zx_system_get_num_cpus()`]: system_get_num_cpus.md
56[`zx_system_get_physmem()`]: system_get_physmem.md
57