Lines Matching refs:sc

123 	struct pci_fbuf_softc *sc;  in pci_fbuf_write()  local
128 sc = pi->pi_arg; in pci_fbuf_write()
140 p = (uint8_t *)&sc->memregs + offset; in pci_fbuf_write()
160 if (!sc->gc_image->vgamode && sc->memregs.width == 0 && in pci_fbuf_write()
161 sc->memregs.height == 0) { in pci_fbuf_write()
163 sc->gc_image->vgamode = 1; in pci_fbuf_write()
164 sc->gc_width = 0; in pci_fbuf_write()
165 sc->gc_height = 0; in pci_fbuf_write()
166 } else if (sc->gc_image->vgamode && sc->memregs.width != 0 && in pci_fbuf_write()
167 sc->memregs.height != 0) { in pci_fbuf_write()
169 sc->gc_image->vgamode = 0; in pci_fbuf_write()
176 struct pci_fbuf_softc *sc; in pci_fbuf_read() local
182 sc = pi->pi_arg; in pci_fbuf_read()
191 p = (uint8_t *)&sc->memregs + offset; in pci_fbuf_read()
222 struct pci_fbuf_softc *sc; in pci_fbuf_baraddr() local
228 sc = pi->pi_arg; in pci_fbuf_baraddr()
230 if (vm_munmap_memseg(pi->pi_vmctx, sc->fbaddr, FB_SIZE) != 0) in pci_fbuf_baraddr()
232 sc->fbaddr = 0; in pci_fbuf_baraddr()
239 sc->fbaddr = address; in pci_fbuf_baraddr()
245 pci_fbuf_parse_config(struct pci_fbuf_softc *sc, nvlist_t *nvl) in pci_fbuf_parse_config() argument
250 sc->rfb_wait = get_config_bool_node_default(nvl, "wait", false); in pci_fbuf_parse_config()
269 sc->rfb_host = strndup(value + 1, cp - (value + 1)); in pci_fbuf_parse_config()
279 sc->rfb_port = atoi(cp); in pci_fbuf_parse_config()
288 sc->rfb_port = atoi(value); in pci_fbuf_parse_config()
290 sc->rfb_host = strndup(value, cp - value); in pci_fbuf_parse_config()
298 sc->rfb_port = atoi(cp); in pci_fbuf_parse_config()
304 sc->rfb_unix = get_config_value_node(nvl, "unix"); in pci_fbuf_parse_config()
310 sc->vga_enabled = 0; in pci_fbuf_parse_config()
312 sc->vga_enabled = 1; in pci_fbuf_parse_config()
313 sc->vga_full = 0; in pci_fbuf_parse_config()
315 sc->vga_enabled = 1; in pci_fbuf_parse_config()
316 sc->vga_full = 1; in pci_fbuf_parse_config()
325 sc->memregs.width = strtol(value, NULL, 10); in pci_fbuf_parse_config()
329 sc->memregs.height = strtol(value, NULL, 10); in pci_fbuf_parse_config()
331 if (sc->memregs.width > COLS_MAX || in pci_fbuf_parse_config()
332 sc->memregs.height > ROWS_MAX) { in pci_fbuf_parse_config()
336 if (sc->memregs.width < COLS_MIN || in pci_fbuf_parse_config()
337 sc->memregs.height < ROWS_MIN) { in pci_fbuf_parse_config()
345 sc->rfb_password = strdup(value); in pci_fbuf_parse_config()
356 struct pci_fbuf_softc *sc; in pci_fbuf_render() local
358 sc = arg; in pci_fbuf_render()
360 if (sc->vga_full && sc->gc_image->vgamode) { in pci_fbuf_render()
364 vga_render(gc, sc->vgasc); in pci_fbuf_render()
367 if (sc->gc_width != sc->memregs.width || in pci_fbuf_render()
368 sc->gc_height != sc->memregs.height) { in pci_fbuf_render()
369 bhyvegc_resize(gc, sc->memregs.width, sc->memregs.height); in pci_fbuf_render()
370 sc->gc_width = sc->memregs.width; in pci_fbuf_render()
371 sc->gc_height = sc->memregs.height; in pci_fbuf_render()
379 struct pci_fbuf_softc *sc; in pci_fbuf_init() local
386 sc = calloc(1, sizeof(struct pci_fbuf_softc)); in pci_fbuf_init()
388 pi->pi_arg = sc; in pci_fbuf_init()
396 sc->fb_base = vm_create_devmem(pi->pi_vmctx, VM_FRAMEBUFFER, in pci_fbuf_init()
398 if (sc->fb_base == MAP_FAILED) { in pci_fbuf_init()
412 sc->memregs.fbsize = FB_SIZE; in pci_fbuf_init()
413 sc->memregs.width = COLS_DEFAULT; in pci_fbuf_init()
414 sc->memregs.height = ROWS_DEFAULT; in pci_fbuf_init()
415 sc->memregs.depth = 32; in pci_fbuf_init()
417 sc->vga_enabled = 1; in pci_fbuf_init()
418 sc->vga_full = 0; in pci_fbuf_init()
420 sc->fsc_pi = pi; in pci_fbuf_init()
422 error = pci_fbuf_parse_config(sc, nvl); in pci_fbuf_init()
427 if (sc->vga_full != 0) { in pci_fbuf_init()
437 sc->fb_base, FB_SIZE)); in pci_fbuf_init()
439 console_init(sc->memregs.width, sc->memregs.height, sc->fb_base); in pci_fbuf_init()
440 console_fb_register(pci_fbuf_render, sc); in pci_fbuf_init()
442 if (sc->vga_enabled) in pci_fbuf_init()
443 sc->vgasc = vga_init(!sc->vga_full); in pci_fbuf_init()
444 sc->gc_image = console_get_image(); in pci_fbuf_init()
446 fbuf_sc = sc; in pci_fbuf_init()
448 memset((void *)sc->fb_base, 0, FB_SIZE); in pci_fbuf_init()
451 error = rfb_init(sc->rfb_host, sc->rfb_port, sc->rfb_wait, sc->rfb_password); in pci_fbuf_init()
457 if (sc->rfb_unix != NULL) { in pci_fbuf_init()
458 error = rfb_init((char *)sc->rfb_unix, -1, sc->rfb_wait, in pci_fbuf_init()
459 sc->rfb_password, name != NULL ? name : "bhyve"); in pci_fbuf_init()
461 error = rfb_init(sc->rfb_host, sc->rfb_port, sc->rfb_wait, in pci_fbuf_init()
462 sc->rfb_password, name != NULL ? name : "bhyve"); in pci_fbuf_init()
469 free(sc); in pci_fbuf_init()