Changes in kernel/genarch/src/drivers/ega/ega.c [28a5ebd:b169619] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/genarch/src/drivers/ega/ega.c
r28a5ebd rb169619 42 42 #include <typedefs.h> 43 43 #include <arch/asm.h> 44 #include <mem .h>44 #include <memw.h> 45 45 #include <str.h> 46 46 #include <console/chardev.h> … … 568 568 } 569 569 570 static void ega_redraw(outdev_t *dev) 571 { 572 ega_instance_t *instance = (ega_instance_t *) dev->data; 573 574 irq_spinlock_lock(&instance->lock, true); 575 570 static void ega_redraw_internal(ega_instance_t *instance) 571 { 576 572 memcpy(instance->addr, instance->backbuf, EGA_VRAM_SIZE); 577 573 ega_move_cursor(instance); 578 574 ega_show_cursor(instance); 579 575 } 576 577 static void ega_redraw(outdev_t *dev) 578 { 579 ega_instance_t *instance = (ega_instance_t *) dev->data; 580 581 irq_spinlock_lock(&instance->lock, true); 582 ega_redraw_internal(instance); 580 583 irq_spinlock_unlock(&instance->lock, true); 584 } 585 586 /** EGA was mapped or unmapped. 587 * 588 * @param arg EGA instance 589 */ 590 static void ega_mapped_changed(void *arg) 591 { 592 ega_instance_t *instance = (ega_instance_t *) arg; 593 594 if (!instance->parea.mapped) { 595 irq_spinlock_lock(&instance->lock, true); 596 ega_redraw_internal(instance); 597 irq_spinlock_unlock(&instance->lock, true); 598 } 581 599 } 582 600 … … 621 639 instance->parea.unpriv = false; 622 640 instance->parea.mapped = false; 641 instance->parea.mapped_changed = ega_mapped_changed; 642 instance->parea.arg = (void *) instance; 623 643 ddi_parea_register(&instance->parea); 624 644
Note:
See TracChangeset
for help on using the changeset viewer.