0 Replies Latest reply: Nov 24, 2011 7:24 AM by 902032 RSS

    Need guidance on using ddi_regs_map_setup solaris system call

      Hi all,

      Am a beginner in using Sun Solaris.

      I am working on porting our source code from linux to solaris.

      In Linux we are using inb/outb to read/write to keyboard data port(0x60) .

      I know that there is an equivalent system call for inb/outb in solaris. But in man page(of sun os) it is mentioned that inb/ outb are obsolete. It was mentioned that we can use ddi_get8/ddi_put8 functions respectively.

      ddi_get8 call requires ddi_acc_handle_t as a parameter which we can get it from ddi_regs_map_setup system call.

      Syntax for this call is:

      int ddi_regs_map_setup(dev_info_t *dip, uint_t rnumber,
      caddr_t *addrp, offset_t offset, offset_t len,
      ddi_device_acc_attr_t accattrp, ddi_acc_handle_t handlep);

      Please let me know where does the 0x60 port number fits in the above system call and what does these parameters rnumber, offset, len corresponds to ?