Jayaraman, Bhaskar wrote:
Hi, I’m making this call on my driver’s BAR1 which has a physical
address 0xf2000008 written on it. So I’m assuming that when I call a
hat_getpfnum(kas.a_hat, returned_address), I should get the physical
page frame number.
Instead I get 0xffffffff as its return value (which is definitely some
error). Also the virtual address that ddi_regs_map_setup is returning
0xc000 as the virtual address for the physical address in the BAR1.
Please note that hat_getpfnum returns proper values for other virtual
addresses. Can someone help me understand what is going on in my case?
I'm not sure exactly why this is failing, but you do know that
hat_getkpfnum() is an obsolete interface, right? Its been obsolete for
quite a long time now. (I think maybe as far back as Solaris 8.)
If you're using this for mmap(), you should try implementing a
devmap(9e) routine instead.
-- Garrett
Regards,
Bhaskar.
------------------------------------------------------------------------
_______________________________________________
opensolaris-code mailing list
opensolaris-code@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/opensolaris-code
_______________________________________________
opensolaris-code mailing list
opensolaris-code@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/opensolaris-code