Driver working issue - windows

my Battery driver is working on 64 bit , but is not working on 32 bit. Platform is windows.
I am not able to come to any conclusion. What could be the possibilities?

If the driver is available for windows x64, normaly it must be available for x86 also. So you should search for the driver. Most of the drivers can be installed by windows update without installing manually a driver, so start search the update. Also i think you dont need a driver for the battery or is there a special reason for? The laptop battery drivers / softwares often only install a power plan which also can be configured manually if you dont want to use the microsoft standard plans. greats

Related

Vulkan cannot find physical devices on linux

I have been wanting to work with Vulkan, the new graphics API and have gotten it up and running with no problems on Windows 7. However I can't get Vulkan to work on linux. When I try running any of the LunarG samples, or even my own code, vkEnumeratePhysicalDevices always says that there are no physical devices. Here is my setup:
OS: Ubuntu 16.04 (LTS) [x64]
GPU: Nvidia Geforce GT 730 2GB GDDR5
Driver: NVIDIA Binary driver - version 364.19 from nvidia-364 (open source)
Vulkan SDK: LunarG v1.0.17.0 [ latest version]
I was wondering if maybe there's a file for my GPU that I need to set an environment variable for, but I really don't know. As I said before, this worked on Windows 7 perfectly, but I can't seem to get this to work this the above configuration. I am able to create an instance with the LunarG standard validation layer and the correct extensions, but vkEnumeratePhysicalDevices doesn't find any physical devices. It doesn't give an error, just says it can't find any physical devices. This has really got me stumped and I would really appreciate the help. Thanks!
Depending on your distribution you may have to install the nvidia-utils package. See this issue on my Vulkan repo for details.
If this isn't the case for you check the directories Karl mentioned and check if there is no other ICD (maybe one from Intel) that may cause troubles. If you're on an optimus system with dual GPU you may need to explicitly activate the NVIDIA GPU.
The 730 should work fine on Linux, at least judging from the Linux hardware reports I got on my database like this one.
You shouldn't have to set an environment variable if the driver installed properly.
One way to check for a proper installation is to look for the JSON file that identifies the driver. For example, an nvidia driver will place a file called nvidia_icd.json in /etc/vulkan/icd.d/. /usr/share/vulkan/icd.d/ is another standard, but less common location.
It may also be the case that your GPU does not support Vulkan. Be sure to check your GPU vendor's web pages to confirm support. You may want to download the driver straight from the vendor's site in order to get one that they say has Vulkan support.
And are you sure that using the "Additional Drivers" page is supposed to give you a Vulkan driver?
You can refer to the loader documentation in the docs section at https://vulkan.lunarg.com for more info.

What do you need on a Windows PC if you use a library that uses OpenGL?

I am looking at adding 3D functionality into my application. For this I will probably use the QtOpenGl library, but it's not entirely clear if this requires anything special on my customers' PC's.
Will my customers need an OpenGL video card?
Will my customers need an OpenGL driver?
Is a minimum Windows release required?
Or does it require something else to be installed on the customers' PC's (besides Qt itself)
Or will it run out of the box?
Thanks
Will my customers need an OpenGL video card?
Not neccessarily, there's always the software rasterizer fallback.
Will my customers need an OpenGL driver?
Preferrably. But there's always the software rasterizer fallback.
Is a minimum Windows release required?
Yes, Windows NT 4 or Windows 95B
Or does it require something else to be installed on the customers' PC's (besides Qt itself)
Ideally the customer has installed the drivers for his graphics card, as they are distributed by the graphics card maker. Until Windows Vista this was the case anyway. Since Windows Vista, Windows ships with stripped graphics drivers: Microsoft has that policy to remove the OpenGL-ICD from the bundled drivers. So customers have to install the original drivers from the vendor directly. Without vendor OpenGL-ICDs you'll only have the OpenGL-1.4 emulation shipping with Windows Vista/7. For anything beyond, the customer must install the original drivers.
Or will it run out of the box?
Most likely, but the performance may not be the best, if the vendor drivers have not been installed. My recommendation: Do it like the games: Upon programm start detect which graphics card is present and if the right drivers are installed, and if not, inform the user about it and offer to go to the vendors website to download and install the right driver for his box (that's how I do it).
All modern computers support OpenGL, according to their web site. From personal experience, it will run out of the box with no additional setup required, but you will have to distribute an additional DLL file (QtOpenGL.dll) with your program.

disable online driver search on windows 7 programatically

I am working on a program that requires to install a driver for Plug and Play. My issue is that the first time the device plugs into, by default, windows 7 32-bit automatically search online for drivers that better match to device. As i observe, it takes too long (15m) to correctly install the driver.
How can i turn off the automatic search on windows 7?
Thank you for any useful information.
Apparently you do this through GPO, as described here:
http://www.verboon.info/index.php/2010/12/windows-7-device-installation-without-administrative-rights/
Look for "Prevent Clients from searching for drivers on Windows Update" on this page.
Read up on applying GPO programatically and you should probably be able to get the job done. However, mind that you'd be changing the policy for the whole system, not just installation of this device.
If you install a driver package for your driver before you insert it, Windows will not search online.
If you really want to disable online serach on your machine - take a look here.

Upgrading driver from XP to W7

I've got a driver for a custom PCI card, which builds and runs fine on XP. I'm trying to use this custom hardware on W7, and am trying to build and run my driver.
I've got the latest DDK from Microsoft, and build my driver for XP using Windows XP "x86 Free Build Environment". Everything installs & works fine. (Build using a DDK "build" command)
If I use the Windows 7 "x86 Free Build Environment" build environment, everything builds fine. I run it through the PREfast and staticdv code checkers, no errors from either. ( I get a couple of warnings about "The dispatch function 'FooFnc' does not have any __drv_dispatchType annotations" - are these likely to be the issue? )
When I install, the install starts OK (standard error about drivers not being signed), but gets to a certain point and then hangs, then fails with a timeout error. The device then shows up in device manager as installed. At this point the PC won't shutdown or boot, but hangs indefinitely. I'm forced to boot into Safe Mode and uninstall the driver from there.
So my question(s) are:
If there has been a change in the driver model between XP and W7, what's the best way to find it? I can't see anything on MSDN.
How would I go about debugging the driver? The box doesn't start, so it's not like I can run up WinDBG.
Any specific W7 driver gotchas that are hidden away?
I've tried to keep this as generic as possible, but if more detail would be helpful I'll provide more
AFAIK, the biggest changes have been made in video and network drivers. Other drivers retain backward compatibility and can be run on W7 even with no recompiling.
Run your driver under driver verifier and turn on generating crash dumps with a keyboard (very helpful in case of system hangs, you can manually generate crashdump, analyze it and find what was wrong).
Hope this helps!

Forcing Windows to re-scan for drivers

As part of our software's installation, we install drivers for a required 3rd party hardware component. Currently it's up to the user to manually scan for their hardware's drivers once our installation is completed.
Is there an easy way to get Windows to automatically look for the drivers we installed? If so, how does it work? Do we need to tell the OS for which hardware device we have drivers, or just that we have drivers in a certain location? Or can we just install the drivers to System32 folder and trigger a driver rescan?
So the hardware is already plugged in when you install the driver?
Download the Windows Driver Kit (WDK) and see the devcon sample (binary and source included). The "devcon update" command should do what you want (i.e. install the drivers and then load them over the specified device instance).
-scott

Resources