Changeset da1bafb in mainline for kernel/genarch/src/drivers/ega/ega.c


Ignore:
Timestamp:
2010-05-24T18:57:31Z (14 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
0095368
Parents:
666f492
Message:

major code revision

  • replace spinlocks taken with interrupts disabled with irq_spinlocks
  • change spacing (not indendation) to be tab-size independent
  • use unsigned integer types where appropriate (especially bit flags)
  • visual separation
  • remove argument names in function prototypes
  • string changes
  • correct some formating directives
  • replace various cryptic single-character variables (t, a, m, c, b, etc.) with proper identifiers (thread, task, timeout, as, itm, itc, etc.)
  • unify some assembler constructs
  • unused page table levels are now optimized out in compile time
  • replace several ints (with boolean semantics) with bools
  • use specifically sized types instead of generic types where appropriate (size_t, uint32_t, btree_key_t)
  • improve comments
  • split asserts with conjuction into multiple independent asserts
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/genarch/src/drivers/ega/ega.c

    r666f492 rda1bafb  
    6363
    6464typedef struct {
    65         SPINLOCK_DECLARE(lock);
     65        IRQ_SPINLOCK_DECLARE(lock);
    6666       
    6767        uint32_t cursor;
     
    7171} ega_instance_t;
    7272
    73 static void ega_putchar(outdev_t *dev, wchar_t ch, bool silent);
    74 static void ega_redraw(outdev_t *dev);
     73static void ega_putchar(outdev_t *, wchar_t, bool);
     74static void ega_redraw(outdev_t *);
    7575
    7676static outdev_operations_t egadev_ops = {
     
    540540        ega_instance_t *instance = (ega_instance_t *) dev->data;
    541541       
    542         ipl_t ipl = interrupts_disable();
    543         spinlock_lock(&instance->lock);
     542        irq_spinlock_lock(&instance->lock, true);
    544543       
    545544        switch (ch) {
     
    564563        ega_move_cursor(instance, silent);
    565564       
    566         spinlock_unlock(&instance->lock);
    567         interrupts_restore(ipl);
     565        irq_spinlock_unlock(&instance->lock, true);
    568566}
    569567
     
    572570        ega_instance_t *instance = (ega_instance_t *) dev->data;
    573571       
    574         ipl_t ipl = interrupts_disable();
    575         spinlock_lock(&instance->lock);
     572        irq_spinlock_lock(&instance->lock, true);
    576573       
    577574        memcpy(instance->addr, instance->backbuf, EGA_VRAM_SIZE);
     
    579576        ega_show_cursor(instance, silent);
    580577       
    581         spinlock_unlock(&instance->lock);
    582         interrupts_restore(ipl);
     578        irq_spinlock_unlock(&instance->lock, true);
    583579}
    584580
     
    598594        egadev->data = instance;
    599595       
    600         spinlock_initialize(&instance->lock, "*ega_lock");
     596        irq_spinlock_initialize(&instance->lock, "*ega.instance.lock");
    601597       
    602598        instance->base = base;
Note: See TracChangeset for help on using the changeset viewer.