Changeset 84afc7b in mainline for kernel/genarch/src


Ignore:
Timestamp:
2009-03-18T10:53:12Z (17 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
e749794
Parents:
8015eeec
Message:

as kernel little brother drivers are not needed anymore, the device numbers do not have to be correlated between kernel and uspace in any way
introduce new syscall sys_device_assign_devno() for generating system-wide unique device numbers for uspace

Location:
kernel/genarch/src/drivers
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • kernel/genarch/src/drivers/dsrln/dsrlnin.c

    r8015eeec r84afc7b  
    3939#include <mm/slab.h>
    4040#include <arch/asm.h>
     41#include <ddi/device.h>
    4142
    4243static indev_operations_t kbrdin_ops = {
     
    5758}
    5859
    59 indev_t *dsrlnin_init(dsrlnin_t *dev, devno_t devno, inr_t inr)
     60indev_t *dsrlnin_init(dsrlnin_t *dev, inr_t inr)
    6061{
    6162        dsrlnin_instance_t *instance
     
    6667        indev_initialize("dsrlnin", &instance->kbrdin, &kbrdin_ops);
    6768       
    68         instance->devno = devno;
    6969        instance->dsrlnin = dev;
    7070       
    7171        irq_initialize(&instance->irq);
    72         instance->irq.devno = devno;
     72        instance->irq.devno = device_assign_devno();
    7373        instance->irq.inr = inr;
    7474        instance->irq.claim = dsrlnin_claim;
  • kernel/genarch/src/drivers/i8042/i8042.c

    r8015eeec r84afc7b  
    4242#include <console/chardev.h>
    4343#include <mm/slab.h>
     44#include <ddi/device.h>
    4445
    4546static indev_operations_t kbrdin_ops = {
     
    7778
    7879/** Initialize i8042. */
    79 indev_t *i8042_init(i8042_t *dev, devno_t devno, inr_t inr)
     80indev_t *i8042_init(i8042_t *dev, inr_t inr)
    8081{
    8182        i8042_instance_t *instance
     
    8687        indev_initialize("i8042", &instance->kbrdin, &kbrdin_ops);
    8788       
    88         instance->devno = devno;
    8989        instance->i8042 = dev;
    9090       
    9191        irq_initialize(&instance->irq);
    92         instance->irq.devno = devno;
     92        instance->irq.devno = device_assign_devno();
    9393        instance->irq.inr = inr;
    9494        instance->irq.claim = i8042_claim;
  • kernel/genarch/src/drivers/ns16550/ns16550.c

    r8015eeec r84afc7b  
    4040#include <console/chardev.h>
    4141#include <mm/slab.h>
     42#include <ddi/device.h>
    4243
    4344#define LSR_DATA_READY  0x01
     
    8081 *
    8182 */
    82 indev_t *ns16550_init(ns16550_t *dev, devno_t devno, inr_t inr, cir_t cir, void *cir_arg)
     83indev_t *ns16550_init(ns16550_t *dev, inr_t inr, cir_t cir, void *cir_arg)
    8384{
    8485        ns16550_instance_t *instance
     
    8990        indev_initialize("ns16550", &instance->kbrdin, &kbrdin_ops);
    9091       
    91         instance->devno = devno;
    9292        instance->ns16550 = dev;
    9393       
    9494        irq_initialize(&instance->irq);
    95         instance->irq.devno = devno;
     95        instance->irq.devno = device_assign_devno();
    9696        instance->irq.inr = inr;
    9797        instance->irq.claim = ns16550_claim;
  • kernel/genarch/src/drivers/z8530/z8530.c

    r8015eeec r84afc7b  
    4040#include <arch/asm.h>
    4141#include <mm/slab.h>
     42#include <ddi/device.h>
    4243
    4344static indev_operations_t kbrdin_ops = {
     
    8889
    8990/** Initialize z8530. */
    90 indev_t *z8530_init(z8530_t *dev, devno_t devno, inr_t inr, cir_t cir, void *cir_arg)
     91indev_t *z8530_init(z8530_t *dev, inr_t inr, cir_t cir, void *cir_arg)
    9192{
    9293        z8530_instance_t *instance
     
    9798        indev_initialize("z8530", &instance->kbrdin, &kbrdin_ops);
    9899       
    99         instance->devno = devno;
    100100        instance->z8530 = dev;
    101101       
    102102        irq_initialize(&instance->irq);
    103         instance->irq.devno = devno;
     103        instance->irq.devno = device_assign_devno();
    104104        instance->irq.inr = inr;
    105105        instance->irq.claim = z8530_claim;
Note: See TracChangeset for help on using the changeset viewer.