Merged changesets r32919, r32931, r32933, r32941, r32942, r32946, r32947, r32948 and r32950.
git-svn-id: file:///srv/svn/repos/haiku/haiku/branches/releases/r1alpha1@32955 a95241bf-73f2-0310-859d-f6bbb57e9c96
Diff
build/jam/HaikuImage | 15 +++++----------
build/jam/OptionalPackageDependencies | 2 +-
build/jam/OptionalPackages | 12 ++++++------
docs/userguide/en/applications.html | 2 +-
docs/userguide/en/applications/drivesetup.html | 26 ++++++++++++++++++++++++++
src/add-ons/tracker/opentargetfolder/Jamfile | 2 +-
docs/userguide/en/images/apps-images/drivesetup-create.png | 0
docs/userguide/en/images/apps-images/drivesetup-initialize.png | 0
docs/userguide/en/images/apps-images/drivesetup.png | 0
docs/userguide/en/images/apps-images/poorman.png | 0
src/add-ons/accelerants/nvidia/engine/nv_dac.c | 16 ++++++++++++++++
src/add-ons/accelerants/nvidia/engine/nv_dac2.c | 16 ++++++++++++++++
src/add-ons/accelerants/nvidia/engine/nv_general.c | 24 ++++++++++++++++--------
src/add-ons/kernel/drivers/graphics/nvidia/README.html | 22 ++++++++++++----------
src/add-ons/kernel/drivers/graphics/nvidia/UPDATE.html | 5 +++--
15 files changed, 94 insertions(+), 48 deletions(-)
@@ -29,9 +29,9 @@
SYSTEM_BIN = "[" addattr alert arp base64 basename bash bc beep bootman bzip2
cal cat catattr checkfs chgrp chmod chop chown chroot cksum clear
clockconfig cmp collectcatkeys comm compress copyattr CortexAddOnHost cp
clockconfig cmp comm compress copyattr CortexAddOnHost cp
csplit ctags cut date dc dd desklink df diff diff3 dircolors dirname
draggers driveinfo dstcheck du dumpcatalog
draggers driveinfo dstcheck du
echo eject env error expand expr
factor false fdinfo ffm filepanel find finddir fmt fold fortune frcode
ftp ftpd funzip
@@ -40,7 +40,7 @@
id ident ideinfo idestatus ifconfig <bin>install installsound iroster
isvolume
join
keymap kill less lessecho lesskey link linkcatkeys listarea listattr
keymap kill less lessecho lesskey link listarea listattr
listimage listdev
listport listres listsem listusb ln locate logger login logname ls lsindex
makebootable md5sum merge message mimeset mkdos mkdir mkfifo mkfs mkindex
@@ -136,7 +136,7 @@
Print\ To\ File Serial\ Port USB\ Port
;
SYSTEM_ADD_ONS_SCREENSAVERS = DebugNow Flurry Haiku IFS Spider Message ;
SYSTEM_ADD_ONS_DRIVERS_AUDIO = auich auvia echo3g emuxki hda ;
SYSTEM_ADD_ONS_DRIVERS_AUDIO = auich auvia echo3g emuxki hda ; #humdinger: removed 'hda'
SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD = ; #cmedia sis7018 usb_audio ;
SYSTEM_ADD_ONS_DRIVERS_GRAPHICS = $(X86_ONLY)radeon $(X86_ONLY)nvidia
$(X86_ONLY)neomagic $(X86_ONLY)matrox $(X86_ONLY)intel_extreme
@@ -359,11 +359,6 @@
= [ FDirName $(HAIKU_TOP) src apps mail ] ;
AddFilesToHaikuImage system etc word_dictionary : $(spellFiles) ;
# Locale kit language files
local languageDir = [ FDirName $(HAIKU_TOP) src data etc locale languages ] ;
local languages = [ Glob $(languageDir) : *.language ] ;
AddFilesToHaikuImage system data locale languages : $(languages) ;
local etcFiles = bash_completion inputrc profile teapot.data ;
etcFiles = $(etcFiles:G=etc) ;
SEARCH on $(etcFiles) = [ FDirName $(HAIKU_TOP) data etc ] ;
@@ -474,7 +469,7 @@
AddFilesToHaikuImage system add-ons media plugins
: $(SYSTEM_ADD_ONS_MEDIA_PLUGINS) ;
AddFilesToHaikuImage system add-ons Tracker
: FileType-F Mark\ as\ New-N Mark\ as\ Read-R Open\ Target\ Folder-T OpenTerminal-T ZipOMatic-Z ;
: FileType-F Mark\ as\ New-N Mark\ as\ Read-R Open\ Target\ Folder-O OpenTerminal-T ZipOMatic-Z ;
AddSymlinkToHaikuImage system add-ons Tracker
: /boot/system/preferences/Backgrounds : Background-B ;
AddSymlinkToHaikuImage system add-ons Tracker
@@ -1,10 +1,10 @@
# package dependencies
#
# For transitive dependencies dependants should be listed before their
# dependencies.
OptionalPackageDependencies Subversion : APR-util Neon LibIconv LibXML2 OpenSSL SQLite ;
OptionalPackageDependencies APR-util : APR ;
OptionalPackageDependencies APR-util : APR Expat ;
OptionalPackageDependencies BeHappy : BeBook NetSurf ;
OptionalPackageDependencies Development : DevelopmentBase Perl ;
OptionalPackageDependencies DevelopmentBase : CDRecord DevelopmentMin Yasm ;
@@ -176,8 +176,8 @@
} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
Echo "No optional package BePDF available for gcc4" ;
} else {
InstallOptionalHaikuImagePackage BePDF-1.1.1b1.x86
: $(baseURL)/BePDF-1.1.1b1.x86.zip
InstallOptionalHaikuImagePackage BePDF-1.1.1b2-r1a1-x86-gcc2-2009-09-03
: $(baseURL)/BePDF-1.1.1b2-r1a1-x86-gcc2-2009-09-03.zip
: apps
;
AddSymlinkToHaikuImage home config be Applications
@@ -708,8 +708,8 @@
: $(baseURL)/Pe-2.4.2-x86-gcc4-2009-08-04.zip
;
} else {
InstallOptionalHaikuImagePackage Pe-2.4.2-x86-gcc2-2009-07-05
: $(baseURL)/Pe-2.4.2-x86-gcc2-2009-07-05.zip
InstallOptionalHaikuImagePackage Pe-2.4.2-r593-r1a1-x86-gcc2-2009-09-04
: $(baseURL)/Pe-2.4.2-r593-r1a1-x86-gcc2-2009-09-04.zip
;
}
@@ -779,8 +779,8 @@
if $(TARGET_ARCH) != x86 {
Echo "No optional package Subversion available for $(TARGET_ARCH)" ;
} else {
InstallOptionalHaikuImagePackage subversion-1.6.5-r1a1-x86-gcc2-2009-08-30
: $(baseURL)/subversion-1.6.5-r1a1-x86-gcc2-2009-08-30.zip
InstallOptionalHaikuImagePackage subversion-1.6.5-r1a1-x86-gcc2-2009-09-02
: $(baseURL)/subversion-1.6.5-r1a1-x86-gcc2-2009-09-02.zip
:
;
}
@@ -86,7 +86,7 @@
<tr><td style="width:24px;"><img src="../images/apps-images/diskusage-icon_16.png" alt="icon" width="16" height="16" /></td><td><a href="applications/diskusage.html">DiskUsage</a></td><td> </td>
<td valign="top">A tool to visualize a disk's memory usage.</td></tr>
<tr><td style="width:24px;"><img src="../images/apps-images/drivesetup-icon_16.png" alt="icon" width="16" height="16" /></td><td><a href="applications/drivesetup.html">DriveSetup</a></td><td> </td>
<td valign="top"><span style="color:silver">A harddisk partitioning tool. [<i>still missing</i>]</span></td></tr>
<td valign="top">A harddisk partitioning tool.</td></tr>
<tr><td style="width:24px;"><img src="../images/apps-images/expander-icon_16.png" alt="icon" width="16" height="16" /></td><td><a href="applications/expander.html">Expander</a></td><td> </td>
<td valign="top">A tool to unpack common archives.</td></tr>
<tr><td style="width:24px;"><img src="../images/apps-images/icon-o-matic-icon_16.png" alt="icon" width="16" height="16" /></td><td><a href="applications/icon-o-matic.html">Icon-O-Matic</a></td><td> </td>
@@ -46,11 +46,29 @@
<p><br/></p>
<p>DriveSetup is a tool to create, delete and initialize partitions. At this time it can't resize or move existing partitions, so that you'll either need an unpartitioned volume (perhaps an external USB drive or another harddisk) or do the initial setup with a tool like the <a href="http://gparted.sourceforge.net/livecd.php">GParted LiveCD</a> to provide the space for another partition.</p>
<img src="../images/apps-images/drivesetup.png" alt="drivesetup.png" />
<p>At the top is a graphical representation of all partitions inside the device chosen in the list below it. Besides a maximum of 4 primary partitions, each of those can contain a number of extended/logical partitions. You may have to expand such a list with the widget that appears in that case in front of that device to see the details of every logical partition.</p>
<p>You can mount and unmount volumes from the <span class="menu">Partition</span> menu.</p>
<p>At the top is a graphical representation of all partitions inside the device chosen in the list below it. Besides a maximum of 4 primary partitions, each of those can contain a number of extended/logical partitions. You may have to expand such a list with the +/- widget that appears in that case in front of that device to see the details of every logical partition.</p>
<p>You can select a partition from the list and mount and unmount them with the commands in the <span class="menu">Partition</span> menu or by pressing <span class="key">ALT</span> <span class="key">M</span> or <span class="key">ALT</span> <span class="key">U</span>.</p>
<p>You can also completely delete a partition with <span class="menu">Partition|Delete</span>.<br />
Which brings us to this:</p>
<div class="box-stop">Dealing with creating/deleting/initializing partitions is very dangerous business. Always check twice to be sure you're working with the right one and always keep an up-to-date backup of your data in case something goes wrong!</div>
<h1>
<a href="#logo"><img src="../../images/up.png" align="right" alt="index" border="0" class="noprint" /></a>
<a id="creating" name="creating">Creating a new partition</a></h1>
<div class="box-info">If you plan to use the entire drive as one partition, e.g. a USB stick or a Compact Flash card, you can skip the creation of a partition and proceed right to <a href="#initializing">Initializing</a>.</div>
<p>When you found unformatted space on a drive, like the above <tt><empty></tt>, you can create a new partition in this space with <span class="menu">Partition|Create...</span>(<span class="key">ALT</span> <span class="key">C</span>).</p>
<img src="../images/apps-images/drivesetup-create.png" alt="drivesetup-create.png" />
<p>You're prompted with this dialog that lets you adjust the partition size and type. Choose <span class="menu">Be File System</span> if you want to use the partition for an Haiku installation or if you want to use all the interesting Haiku features with it, like attributes and queries. Note, that other operating systems might not be able to access such a partition.</p>
<p>If you have created a primary partition instead of just another extended/logical partition within one, the above dialog also displays an <span class="menu">Active Partition</span> checkbox. You'll have to check that, if you'll use that partition to boot a Haiku installation.</p>
<p>Before you can use, or even mount the newly created partition, it has to be initialized with a filesystem.</p>
<h1>
<a href="#logo"><img src="../../images/up.png" align="right" alt="index" border="0" class="noprint" /></a>
<a id="initializing" name="initializing">Initializing a partition</a></h1>
<p>Only unmounted partitions can be initialized by using the <span class="menu">Partition|Initialize</span> menu.</p>
<img src="../images/apps-images/drivesetup-initialize.png" alt="drivesetup-initialize.png" />
<p>Here you set the name for the partition and it's blocksize. 2048 bytes per block are recommended, but you can choose larger or smaller sizes if you have these very specific needs.</p>
</div>
<!--
<div class="bottomnav">
<p>
«  <a href="diskusage.html">DiskUsage</a>
@@ -60,6 +78,6 @@
<a href="expander.html">Expander</a>  »
</p>
</div>
-->
</body>
</html>
@@ -1,6 +1,6 @@
SubDir HAIKU_TOP src add-ons tracker opentargetfolder ;
Application Open\ Target\ Folder-T :
Application Open\ Target\ Folder-O :
opentargetfolder.cpp
: be tracker $(TARGET_LIBSUPC++)
Binary files /dev/null and b/docs/userguide/en/images/apps-images/drivesetup-create.png differ
Binary files /dev/null and b/docs/userguide/en/images/apps-images/drivesetup-initialize.png differ
Binary files /dev/null and b/docs/userguide/en/images/apps-images/drivesetup.png differ
Binary files a/docs/userguide/en/images/apps-images/poorman.png and b/docs/userguide/en/images/apps-images/poorman.png differ
@@ -1,6 +1,6 @@
/* Author:
Rudolf Cornelissen 12/2003-7/2009
Rudolf Cornelissen 12/2003-9/2009
*/
#define MODULE_BIT 0x00010000
@@ -200,6 +200,20 @@
snooze(1000);
/* note:
* setup PLL assignment _after_ programming PLL */
if (si->ps.secondary_head) {
if (si->ps.card_arch < NV40A)
DACW(PLLSEL, 0x30000f00);
else
DACW(PLLSEL, 0x30000f04);
} else {
DACW(PLLSEL, 0x10000700);
}
LOG(2,("DAC: PIX PLL frequency should be locked now...\n"));
return B_OK;
@@ -1,6 +1,6 @@
/* Author:
Rudolf Cornelissen 12/2003-7/2009
Rudolf Cornelissen 12/2003-9/2009
*/
#define MODULE_BIT 0x00001000
@@ -203,6 +203,20 @@
snooze(1000);
/* note:
* setup PLL assignment _after_ programming PLL */
if (si->ps.secondary_head) {
if (si->ps.card_arch < NV40A)
DACW(PLLSEL, 0x30000f00);
else
DACW(PLLSEL, 0x30000f04);
} else {
DACW(PLLSEL, 0x10000700);
}
LOG(2,("DAC2: PIX PLL frequency should be locked now...\n"));
return B_OK;
@@ -1,7 +1,7 @@
/* Authors:
Mark Watson 12/1999,
Apsed,
Rudolf Cornelissen 10/2002-8/2009
Rudolf Cornelissen 10/2002-9/2009
tst..
*/
@@ -92,7 +92,7 @@
{
status_t status;
LOG(1,("POWERUP: Haiku nVidia Accelerant 0.98 running.\n"));
LOG(1,("POWERUP: Haiku nVidia Accelerant 1.00 running.\n"));
if (si->ps.int_assigned)
@@ -1789,13 +1789,6 @@
DACW(GENCTRL, 0x00100100);
if (si->ps.secondary_head) DAC2W(GENCTRL, 0x00100100);
if (si->ps.secondary_head)
DACW(PLLSEL, 0x30000f00);
else
DACW(PLLSEL, 0x10000700);
/* turn on DAC and make sure detection testsignal routing is disabled
* (b16 = disable DAC,
* b12 = enable testsignal output */
@@ -1804,9 +1797,20 @@
DACW(TSTCTRL, (DACR(TSTCTRL) & 0xfffeefff));
/* b20 enables DAC video output on some newer cards
* (confirmed video to be almost black if zero on Geforce 7300, id 0x01d1 (G72)) */
if ((si->ps.card_type == NV44) || (si->ps.card_type >= G70))
DACW(TSTCTRL, (DACR(TSTCTRL) | 0x00100000));
/* turn on DAC2 if it exists
* (NOTE: testsignal function block resides in DAC1 only (!)) */
if (si->ps.secondary_head) DAC2W(TSTCTRL, (DAC2R(TSTCTRL) & 0xfffeefff));
if (si->ps.secondary_head) {
DAC2W(TSTCTRL, (DAC2R(TSTCTRL) & 0xfffeefff));
/* b20 might enable DAC video output on some newer cards
* (not confirmed yet) */
if ((si->ps.card_type == NV44) || (si->ps.card_type >= G70))
DAC2W(TSTCTRL, (DAC2R(TSTCTRL) | 0x00100000));
}
/* NV40 and NV45 need a 'tweak' to make sure the CRTC FIFO's/shiftregisters get
* their data in time (otherwise momentarily ghost images of windows or such
@@ -41,7 +41,7 @@
<li>B_YCbCr422 hardware overlay support on both TNT and GeForce series cards, <strong>except</strong> for GeForce 6xxx and 7xxx series (GeForce 6800 works though). Overlay output 'follows head' in dualhead stretch/switch modes;
<li>Dualhead support on GeForce dualhead cards (use 'Dualhead Setup' from BeBits for now);
<li>DVI and laptop panel support;
<li>Widescreen mode support (<strong>all</strong> screens must be widescreen type <strong>and</strong> they must all be digitally connected);
<li>Widescreen mode support (<strong>all</strong> screens must be widescreen type;
<li>Basic AGP mode support on AGP cards, using the new (seperate) Haiku AGP busmanager;
<li>Basic ('legacy') PCIe support;
<li>Coldstart support for analog connected screens on most cards except TNT1, GeForce 6xxx and 7xxx series;
@@ -54,20 +54,20 @@
<li>If the driver seems to create 'random' trouble make sure you have a fully functional VGA BIOS, or system BIOS for embedded cards (check for updates on the manufacturor's site). Make sure you mail me if you still have trouble but also if this version fixed that!
<li>If on a laptop the internal panel doesn't work when you connect an external monitor, make sure you set 'output device selection' to 'internal' (instead of 'auto') in the system BIOS if it has such an option. If you have this symptom on a normal card, or on a laptop without that BIOS option then you are probably out of luck for dualhead support;
<li><strong>NV40 architecture cards:</strong> (GeForce 6xxx, but 6800 AGP seems to be OK)<br>
Secondary analog monitor load detection doesn't work and we can't control very well to which connector the card's output gets routed (lack of specs). This means you might have to experiment a bit with the way you connect your monitor to the card. A single analog or DVI screen should work OK, and two analog screens should be OK as well.
We can't control very well to which connector the card's output gets routed (lack of specs). This means you might have to experiment a bit with the way you connect your monitor to the card.
</ul>
<br>
<hr>
<h2>Installation:</h2>
If you encounter bugs, please checkout the driver's <a href="http://web.inter.nl.net/users/be-hold/BeOS/NVdriver/index.html">website</a> to see if it's already on the todo list. You can also checkout the <a href="UPDATE.html">UPDATE</a> file included with this driver to see if it should have been fixed. If you think it's prudent, or if you are unsure, then please fill out the <a href="http://web.inter.nl.net/users/be-hold/BeOS/NVdriver/bugreport.html">bugreport form</a> on the site or send me an <a href="mailto:info.be-hold@inter.nl.net">Email</a>. Make sure you are as precise as possible because that will make things easier to trackdown and fix...<br>
If you encounter bugs, please see if a matching bug report already exists at <a href="http://dev.haiku-os.org">the Haiku website</a>. If not, or if you are unsure, file a new one. Make sure you are as precise as possible because that will make things easier to trackdown and fix...<br>
<br>
<br>
OK, now that's all said let's get to it ;-)<br>
<br>
In contrary to what I have said before you don't need to de-install official Be drivers for this driver to work correctly. This driver will install in the user part of the BeOS, so not in the system part where the official drivers are.<br>
BeOS first checks (during boot) if there are 'user-addons' that should be loaded for a device. If not, it loads it's own drivers (if any). You can select which driver should be loaded by hitting the spacebar as soon as the BeOS 'icons' screen appears. If you select <strong>disable user addons</strong> the system will load it's own drivers. If you don't do anything, the system will load the Haiku Nvidia TNT/GeForce graphics driver.<br>
You don't need to de-install official drivers for this driver to work correctly. This driver will install in the user part of Haiku, so not in the system part where the official drivers are.<br>
Haiku first checks (during boot) if there are 'user-addons' that should be loaded for a device. If not, it loads it's own drivers (if any). You can select which driver should be loaded by hitting the spacebar just before the Haiku 'icons' splash screen appears. If you select <strong>disable user addons</strong> the system will load it's own drivers. If you don't do anything, the system will load the Haiku Nvidia TNT/GeForce graphics driver.<br>
<br>
<strong>Note:</strong> This might turn out to be handy if you run into trouble upon testing the driver, or if you are 'tweaking' the nv.settings file...<br>
<strong>Note:</strong> This might turn out to be handy if you run into trouble upon testing the driver, or if you are 'tweaking' the nvidia.settings file...<br>
<br><br>
<strong>actual INSTALLATION:</strong><br>
<br>
@@ -83,10 +83,10 @@
<br>
Currently there's no uninstall script included. Just do it manually:<br>
<br>
Delete the <strong>nv.accelerant</strong> file in <strong>home/config/add-ons/accelerants/</strong><br>
Delete the <strong>nv.driver</strong> file in <strong>home/config/add-ons/kernel/drivers/bin/</strong><br>
Delete the <strong>nv.settings</strong> file in <strong>home/config/settings/kernel/drivers/</strong><br>
Delete the <strong>nv.driver shortcut</strong> in <strong>home/config/add-ons/kernel/drivers/dev/graphics/</strong> which pointed to the file <strong>nv.driver</strong>.<br>
Delete the <strong>nvidia.accelerant</strong> file in <strong>home/config/add-ons/accelerants/</strong><br>
Delete the <strong>nvidia.driver</strong> file in <strong>home/config/add-ons/kernel/drivers/bin/</strong><br>
Delete the <strong>nvidia.settings</strong> file in <strong>home/config/settings/kernel/drivers/</strong><br>
Delete the <strong>nvidia.driver shortcut</strong> in <strong>home/config/add-ons/kernel/drivers/dev/graphics/</strong> which pointed to the file <strong>nvidia.driver</strong>.<br>
<br>
You have to reboot in order to apply the original configuration.<br>
<br>
@@ -254,6 +254,6 @@
<hr>
<br>
Rudolf Cornelissen.<br>
<p>(Page last updated on August 23, 2009)</p>
<p>(Page last updated on September 5, 2009)</p>
</body>
</html>
@@ -1,10 +1,10 @@
<html>
<head>
<title>Changes</title>
</head>
<body>
<p><h2>Changes done for each driverversion:</h2></p>
<p><h1>head (SVN 0.98, Rudolf)</h1></p>
<p><h1>head (SVN 1.00, Rudolf)</h1></p>
<ul>
<li>Fixed driver assuming enabling AGP mode succeeded on some occasions if it did not block it itself. Blocking AGP mode completely via the AGP busmanager (option 'block_agp') resulted in a crashing acceleration engine because it was setup for AGP transfers instead of using PCI transfers. Error was solved with help from user kraton.
<li>Fixed shared_info struct problem occuring when 3D 'accelerant' is used (tested Alpha 4.1): the TVencoder type definition list apparantly gets some memory assigned these days when done inside the definition of shared_info. Moved encoder list outside the shared_info definition.
@@ -25,7 +25,8 @@
<li>Corrected/Added detection of third I2C bus on cards that support it. The old detection method for a third and (non-existing) fourth bus was faulty. The driver uses I2C channels for monitor DDC/EDID and TVencoder communications.
<li>DDC/EDID fetching now also works on GCC4 binaries due to a fixed fault in the accelerants/common code (which is used for that function);
<li>Added support for Haiku specific driverhook GET_PREFERRED_DISPLAY_MODE. Laptops should now also startup in native mode automatically at first system boot;
<li>Rewrote framebuffer memory detection. Accelerant now only uses the amount of RAM mapped by the kerneldriver as maximum. This fixes black screen at app_server startup on a number of GF6xxx and GF7xxx cards.
<li>Rewrote framebuffer memory detection. Accelerant now only uses the amount of RAM mapped by the kerneldriver as maximum. This fixes black screen at app_server startup on a number of GF6xxx and GF7xxx cards;
<li>Finally(!) fixed PLL selection trouble on NV40 architecture (Geforce 6xxx and 7xxx) cards. Now dualhead should (almost) always work OK, and now low-res bootscreens should nolonger result in 'frequency out of range' messages on DVI connected screens.
</ul>
<p><h1>nv_driver 0.80 (Rudolf)</h1></p>
<ul>