Lines Matching refs:device_object
108 device_pager_get_refcount(device_pager_t device_object) in device_pager_get_refcount() argument
110 return os_ref_get_count_raw(&device_object->dev_pgr_hdr_ref); in device_pager_get_refcount()
146 device_pager_t device_object; in device_pager_setup() local
150 device_object = device_object_create(); in device_pager_setup()
151 if (device_object == DEVICE_PAGER_NULL) { in device_pager_setup()
155 device_object->device_handle = device_handle; in device_pager_setup()
156 device_object->size = size; in device_pager_setup()
157 device_object->flags = flags; in device_pager_setup()
159 memory_object_create_named((memory_object_t) device_object, in device_pager_setup()
174 return (memory_object_t)device_object; in device_pager_setup()
187 device_pager_t device_object; in device_pager_populate_object() local
192 device_object = device_pager_lookup(device); in device_pager_populate_object()
193 if (device_object == DEVICE_PAGER_NULL) { in device_pager_populate_object()
198 device_object->dev_pgr_hdr.mo_control); in device_pager_populate_object()
237 device_pager_t device_object; in device_pager_lookup() local
240 device_object = (device_pager_t)mem_obj; in device_pager_lookup()
241 assert(device_pager_get_refcount(device_object) > 0); in device_pager_lookup()
242 return device_object; in device_pager_lookup()
254 device_pager_t device_object; in device_pager_init() local
265 device_object = device_pager_lookup(mem_obj); in device_pager_init()
268 device_object->dev_pgr_hdr.mo_control = control; in device_pager_init()
277 if (device_object->flags & DEVICE_PAGER_CONTIGUOUS) { in device_pager_init()
280 if (device_object->flags & DEVICE_PAGER_NOPHYSCACHE) { in device_pager_init()
284 vm_object->wimg_bits = device_object->flags & VM_WIMG_MASK; in device_pager_init()
321 device_pager_t device_object; in device_pager_data_return() local
323 device_object = device_pager_lookup(mem_obj); in device_pager_data_return()
324 if (device_object == DEVICE_PAGER_NULL) { in device_pager_data_return()
328 __IGNORE_WCASTALIGN(return device_data_action(device_object->device_handle, in device_pager_data_return()
329 (ipc_port_t) device_object, in device_pager_data_return()
345 device_pager_t device_object; in device_pager_data_request() local
347 device_object = device_pager_lookup(mem_obj); in device_pager_data_request()
349 if (device_object == DEVICE_PAGER_NULL) { in device_pager_data_request()
353 __IGNORE_WCASTALIGN(device_data_action(device_object->device_handle, in device_pager_data_request()
354 (ipc_port_t) device_object, in device_pager_data_request()
366 device_pager_t device_object; in device_pager_reference() local
368 device_object = device_pager_lookup(mem_obj); in device_pager_reference()
369 os_ref_retain_raw(&device_object->dev_pgr_hdr_ref, NULL); in device_pager_reference()
371 device_pager_t, device_object, in device_pager_reference()
372 unsigned int, device_pager_get_refcount(device_object)); in device_pager_reference()
382 device_pager_t device_object; in device_pager_deallocate() local
386 device_object = device_pager_lookup(mem_obj); in device_pager_deallocate()
389 device_pager_t, device_object, in device_pager_deallocate()
390 unsigned int, device_pager_get_refcount(device_object)); in device_pager_deallocate()
392 ref_count = os_ref_release_raw(&device_object->dev_pgr_hdr_ref, NULL); in device_pager_deallocate()
401 device_pager_t, device_object, in device_pager_deallocate()
402 unsigned int, device_pager_get_refcount(device_object)); in device_pager_deallocate()
404 assert(device_object->is_mapped == FALSE); in device_pager_deallocate()
405 if (device_object->device_handle != (device_port_t) NULL) { in device_pager_deallocate()
406 device_close(device_object->device_handle); in device_pager_deallocate()
407 device_object->device_handle = (device_port_t) NULL; in device_pager_deallocate()
409 device_control = device_object->dev_pgr_hdr.mo_control; in device_pager_deallocate()
416 device_pager_t, device_object, in device_pager_deallocate()
417 unsigned int, device_pager_get_refcount(device_object)); in device_pager_deallocate()
419 device_control = device_object->dev_pgr_hdr.mo_control; in device_pager_deallocate()
423 device_object->dev_pgr_hdr.mo_control = MEMORY_OBJECT_CONTROL_NULL; in device_pager_deallocate()
425 device_pager_lock_destroy(device_object); in device_pager_deallocate()
427 zfree(device_pager_zone, device_object); in device_pager_deallocate()
483 device_pager_t device_object; in device_pager_map() local
485 device_object = device_pager_lookup(mem_obj); in device_pager_map()
487 device_pager_lock(device_object); in device_pager_map()
488 assert(device_pager_get_refcount(device_object) > 0); in device_pager_map()
489 if (device_object->is_mapped == FALSE) { in device_pager_map()
495 device_object->is_mapped = TRUE; in device_pager_map()
498 device_pager_unlock(device_object); in device_pager_map()
507 device_pager_t device_object; in device_pager_last_unmap() local
510 device_object = device_pager_lookup(mem_obj); in device_pager_last_unmap()
512 device_pager_lock(device_object); in device_pager_last_unmap()
513 assert(device_pager_get_refcount(device_object) > 0); in device_pager_last_unmap()
514 if (device_object->is_mapped) { in device_pager_last_unmap()
515 device_object->is_mapped = FALSE; in device_pager_last_unmap()
520 device_pager_unlock(device_object); in device_pager_last_unmap()
537 device_pager_t device_object; in device_object_create() local
539 device_object = zalloc_flags(device_pager_zone, in device_object_create()
542 device_object->dev_pgr_hdr.mo_ikot = IKOT_MEMORY_OBJECT; in device_object_create()
543 device_object->dev_pgr_hdr.mo_pager_ops = &device_pager_ops; in device_object_create()
544 device_object->dev_pgr_hdr.mo_control = MEMORY_OBJECT_CONTROL_NULL; in device_object_create()
546 device_pager_lock_init(device_object); in device_object_create()
547 os_ref_init_raw(&device_object->dev_pgr_hdr_ref, NULL); in device_object_create()
548 device_object->is_mapped = FALSE; in device_object_create()
551 device_pager_t, device_object, in device_object_create()
552 unsigned int, device_pager_get_refcount(device_object)); in device_object_create()
554 return device_object; in device_object_create()