openBeOS_Nvidia_V0.03_src
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5501 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -123,6 +123,7 @@
|
|||||||
#define NV8_INSTAT1 0x006013da
|
#define NV8_INSTAT1 0x006013da
|
||||||
#define NV32_NV10FBSTADD32 0x00600800
|
#define NV32_NV10FBSTADD32 0x00600800
|
||||||
#define NV32_CONFIG 0x00600804//not yet used (coldstart)...
|
#define NV32_CONFIG 0x00600804//not yet used (coldstart)...
|
||||||
|
#define NV32_RASTER 0x00600808
|
||||||
#define NV32_NV10CURADD32 0x0060080c
|
#define NV32_NV10CURADD32 0x0060080c
|
||||||
#define NV32_CURCONF 0x00600810
|
#define NV32_CURCONF 0x00600810
|
||||||
|
|
||||||
@@ -135,6 +136,7 @@
|
|||||||
#define NV8_CRTC2DAT 0x006033d5
|
#define NV8_CRTC2DAT 0x006033d5
|
||||||
#define NV8_2INSTAT1 0x006033da//verify!!!
|
#define NV8_2INSTAT1 0x006033da//verify!!!
|
||||||
#define NV32_NV10FB2STADD32 0x00602800//verify!!!
|
#define NV32_NV10FB2STADD32 0x00602800//verify!!!
|
||||||
|
#define NV32_RASTER2 0x00602808//verify!!!
|
||||||
#define NV32_NV10CUR2ADD32 0x0060280c//verify!!!
|
#define NV32_NV10CUR2ADD32 0x0060280c//verify!!!
|
||||||
#define NV32_2CURCONF 0x00602810//verify!!!
|
#define NV32_2CURCONF 0x00602810//verify!!!
|
||||||
|
|
||||||
|
|||||||
@@ -130,5 +130,7 @@ status_t GET_PIXEL_CLOCK_LIMITS(display_mode *dm, uint32 *low, uint32 *high)
|
|||||||
/* Return the semaphore id that will be used to signal a vertical sync occured. */
|
/* Return the semaphore id that will be used to signal a vertical sync occured. */
|
||||||
sem_id ACCELERANT_RETRACE_SEMAPHORE(void)
|
sem_id ACCELERANT_RETRACE_SEMAPHORE(void)
|
||||||
{
|
{
|
||||||
return si->vblank;
|
// return si->vblank;
|
||||||
|
//temp:
|
||||||
|
return B_ERROR;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,11 +33,11 @@ static uint8 depth;
|
|||||||
|
|
||||||
status_t nv_acc_wait_idle()
|
status_t nv_acc_wait_idle()
|
||||||
{
|
{
|
||||||
volatile int i;
|
// volatile int i;
|
||||||
while (ACCR(STATUS)&(1<<16))
|
// while (ACCR(STATUS)&(1<<16))
|
||||||
{
|
// {
|
||||||
for (i=0;i<10000;i++); /*spin in place so I do not hammer the bus*/
|
// for (i=0;i<10000;i++); /*spin in place so I do not hammer the bus*/
|
||||||
};
|
// };
|
||||||
return B_OK;
|
return B_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -415,9 +415,9 @@ status_t nv_crtc_cursor_init()
|
|||||||
const uint32 curadd = 0;
|
const uint32 curadd = 0;
|
||||||
|
|
||||||
/* set cursor bitmap adress ... */
|
/* set cursor bitmap adress ... */
|
||||||
if (si->ps.card_arch == NV04A)
|
if ((si->ps.card_arch == NV04A) || (si->ps.laptop))
|
||||||
{
|
{
|
||||||
/* must be used this way on pre-NV10! */
|
/* must be used this way on pre-NV10 and on all 'Go' cards! */
|
||||||
|
|
||||||
/* cursorbitmap must start on 2Kbyte boundary: */
|
/* cursorbitmap must start on 2Kbyte boundary: */
|
||||||
/* set adress bit11-16, and set 'no doublescan' (registerbit 1 = 0) */
|
/* set adress bit11-16, and set 'no doublescan' (registerbit 1 = 0) */
|
||||||
@@ -429,9 +429,10 @@ status_t nv_crtc_cursor_init()
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* upto 4Gb RAM adressing: must be used on NV10 and later! */
|
/* upto 4Gb RAM adressing:
|
||||||
|
* can be used on NV10 and later (except for 'Go' cards)! */
|
||||||
/* NOTE:
|
/* NOTE:
|
||||||
* This register does not exist on pre-NV10 cards. */
|
* This register does not exist on pre-NV10 and 'Go' cards. */
|
||||||
|
|
||||||
/* cursorbitmap must still start on 2Kbyte boundary: */
|
/* cursorbitmap must still start on 2Kbyte boundary: */
|
||||||
NV_REG32(NV32_NV10CURADD32) = (curadd & 0xfffff800);
|
NV_REG32(NV32_NV10CURADD32) = (curadd & 0xfffff800);
|
||||||
@@ -528,14 +529,15 @@ status_t nv_crtc_cursor_define(uint8* andMask,uint8* xorMask)
|
|||||||
/*position the cursor*/
|
/*position the cursor*/
|
||||||
status_t nv_crtc_cursor_position(uint16 x ,uint16 y)
|
status_t nv_crtc_cursor_position(uint16 x ,uint16 y)
|
||||||
{
|
{
|
||||||
/* make sure we are not in retrace, because the register(s) might get copied
|
/* make sure we are in retrace on pre-NV10 cards to prevent distortions:
|
||||||
* during our reprogramming them (double buffering feature) */
|
* no double buffering feature */
|
||||||
//fixme if needed...
|
if (si->ps.card_arch == NV04A)
|
||||||
/* while (ACCR(STATUS) & 0x08)
|
|
||||||
{
|
{
|
||||||
snooze(4);
|
while (!(NV_REG32(NV32_RASTER) & 0x00010000))
|
||||||
|
{
|
||||||
|
snooze(4);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
DACW(CURPOS, ((x & 0x0fff) | ((y & 0x0fff) << 16)));
|
DACW(CURPOS, ((x & 0x0fff) | ((y & 0x0fff) << 16)));
|
||||||
|
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ status_t nv_general_powerup()
|
|||||||
{
|
{
|
||||||
status_t status;
|
status_t status;
|
||||||
|
|
||||||
LOG(1,("POWERUP: nVidia (open)BeOS Accelerant 0.02 running.\n"));
|
LOG(1,("POWERUP: nVidia (open)BeOS Accelerant 0.03 running.\n"));
|
||||||
|
|
||||||
/* preset no laptop */
|
/* preset no laptop */
|
||||||
si->ps.laptop = false;
|
si->ps.laptop = false;
|
||||||
|
|||||||
@@ -1,22 +1,22 @@
|
|||||||
# Settings file for the mga driver and accelerant
|
# Settings file for the nv driver and accelerant
|
||||||
#
|
#
|
||||||
# This file should be moved to the directory
|
# This file should be moved to the directory
|
||||||
# ~/config/settings/kernel/drivers/
|
# ~/config/settings/kernel/drivers/
|
||||||
#
|
#
|
||||||
|
|
||||||
# mga.driver parameters
|
# nv.driver parameters
|
||||||
# accelerant "mga.accelerant"
|
# accelerant "nv.accelerant"
|
||||||
|
|
||||||
# mga.accelerant parameters
|
# nv.accelerant parameters
|
||||||
usebios false # if true rely on bios to coldstart the card instead of driver
|
usebios false # if true rely on bios to coldstart the card: not functional (yet)
|
||||||
#memory 2 # in MB, override builtin memory size detection
|
#memory 2 # in MB, override builtin memory size detection
|
||||||
hardcursor true # if true use on-chip cursor capabilities
|
hardcursor true # if true use on-chip cursor capabilities
|
||||||
#logmask 0x00000000 # nothing logged, except errors, is default
|
#logmask 0x00000000 # nothing logged, except errors, is default
|
||||||
#logmask 0x80000000 # log card physical features
|
#logmask 0x80000000 # log card physical features
|
||||||
#logmask 0x80000000 # log following mask
|
#logmask 0x80000000 # log following mask
|
||||||
#logmask 0x08000604 # log overlay use in full
|
#logmask 0x08000604 # log overlay use in full
|
||||||
logmask 0xffffffff # log everything
|
#logmask 0xffffffff # log everything
|
||||||
dumprom false # dump bios rom in ~/mga.rom
|
dumprom false # dump bios rom in ~/nv.rom: probably not functional yet
|
||||||
greensync false # if true generate sync on green output signal
|
greensync false # not functional, will be removed
|
||||||
|
|
||||||
#--------- that's all.
|
#--------- that's all.
|
||||||
Reference in New Issue
Block a user