Lines Matching refs:sysinfo
33 static zx_handle_t get_sysinfo_job_root(sysinfo_t* sysinfo) { in get_sysinfo_job_root() argument
34 mtx_lock(&sysinfo->lock); in get_sysinfo_job_root()
35 if (sysinfo->job_root == ZX_HANDLE_INVALID) { in get_sysinfo_job_root()
36 sysinfo->job_root = zx_take_startup_handle(PA_HND(PA_USER0, ID_HJOBROOT)); in get_sysinfo_job_root()
38 mtx_unlock(&sysinfo->lock); in get_sysinfo_job_root()
41 if ((sysinfo->job_root != ZX_HANDLE_INVALID) && in get_sysinfo_job_root()
42 (zx_handle_duplicate(sysinfo->job_root, ZX_RIGHT_SAME_RIGHTS, &h) == ZX_OK)) { in get_sysinfo_job_root()
50 sysinfo_t* sysinfo = ctx; in fidl_get_root_job() local
52 zx_handle_t h = get_sysinfo_job_root(sysinfo); in fidl_get_root_job()
78 sysinfo_t* sysinfo = ctx; in fidl_get_board_name() local
82 mtx_lock(&sysinfo->lock); in fidl_get_board_name()
83 if (sysinfo->board_name[0] == 0) { in fidl_get_board_name()
85 status = device_get_metadata(sysinfo->zxdev, DEVICE_METADATA_BOARD_NAME, in fidl_get_board_name()
86 sysinfo->board_name, sizeof(sysinfo->board_name), in fidl_get_board_name()
89 mtx_unlock(&sysinfo->lock); in fidl_get_board_name()
91 size_t board_name_len = strnlen(sysinfo->board_name, sizeof(sysinfo->board_name)); in fidl_get_board_name()
92 return fuchsia_sysinfo_DeviceGetBoardName_reply(txn, status, sysinfo->board_name, in fidl_get_board_name()
101 sysinfo_t* sysinfo = ctx; in fidl_get_interrupt_controller_info() local
103 status = device_get_metadata(sysinfo->zxdev, DEVICE_METADATA_INTERRUPT_CONTROLLER_TYPE, in fidl_get_interrupt_controller_info()
132 sysinfo_t* sysinfo = calloc(1, sizeof(sysinfo_t)); in sysinfo_bind() local
133 if (!sysinfo) { in sysinfo_bind()
137 mtx_init(&sysinfo->lock, mtx_plain); in sysinfo_bind()
142 .ctx = sysinfo, in sysinfo_bind()
146 return device_add(parent, &args, &sysinfo->zxdev); in sysinfo_bind()
154 ZIRCON_DRIVER_BEGIN(sysinfo, sysinfo_driver_ops, "zircon", "0.1", 1)
156 ZIRCON_DRIVER_END(sysinfo)