Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Home NTDEV

Before Posting...

Please check out the Community Guidelines in the Announcements and Administration Category.

More Info on Driver Writing and Debugging


The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.


Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/


Driver development on Windows Dev Kit 2023

lstipakovlstipakov Member Posts: 21

I got a Windows Dev Kit 2023 (Project Volterra arm64 device). I installed VS2022 and can do userspace development just fine, but not so much kernel development.

First I tried with the latest EWDK, which didn't work - compiler couldn't find WDK headers. I also noticed that CL.exe was used from "Hostx86" directory and "Hostarm64" was missing.
I thought that there EWDK doesn't yet support arm64 and tried with WDK/SDK and VS buildtools not from EWDK - there "Hostarm64" directory exists.

After installing WDK I was prompted to install VS addon for driver development and that failed. I looked at installation log and it seems that addon only supports VS for amd64:

29.11.2022 10.55.03 -   Supported Products : 
29.11.2022 10.55.03 -       Microsoft.VisualStudio.Community
29.11.2022 10.55.03 -           Version : [17.0,18.0)
29.11.2022 10.55.03 -           ProductArchitecture : amd64
29.11.2022 10.55.03 -       Microsoft.VisualStudio.Pro
29.11.2022 10.55.03 -           Version : [17.0,18.0)
29.11.2022 10.55.03 -           ProductArchitecture : amd64
29.11.2022 10.55.03 -       Microsoft.VisualStudio.Enterprise
29.11.2022 10.55.03 -           Version : [17.0,18.0)
29.11.2022 10.55.03 -           ProductArchitecture : amd64

I thought that I could try to live without addon and just ran msbuild from VS command prompt from SDK. This also failed because it again couldn't find WDK headers.

I opened project with VS, checked include paths and noticed that DDK_INC_PATH macro is missing. Just for test I added env variable with that name and pointed it to the location of WDK headers
(c:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\km). This didn't help and I gave up.

Anybody succeeded in building drivers on arm64 machine? I know I can cross-compile for arm64 on amd64 and I have been doing it for a while, but I really like that Volterra device and would like to use it as my main development hardware.

Comments

  • Peter_Viscarola_(OSR)Peter_Viscarola_(OSR) Administrator Posts: 9,055

    Given that VS (natively) on Arm64 only became "official" earlier this month (V17.4), and no WDK has been released since then, I would guess that the WDK is not supported for natively building drivers on ARM.

    Peter Viscarola
    OSR
    @OSRDrivers

  • lstipakovlstipakov Member Posts: 21

    @Peter_Viscarola_(OSR) said:
    Given that VS (natively) on Arm64 only became "official" earlier this month (V17.4), and no WDK has been released since then, I would guess that the WDK is not supported for natively building drivers on ARM.

    Heh, I wish Microsoft would have stated it clearly. It is somewhat ironic that the device name is "Windows Dev Kit 2023", but you cannot really do (driver) development on it.

  • Dejan_MaksimovicDejan_Maksimovic Member - All Emails Posts: 497
    via Email
    Dev Kit != Drv Kit (Driver kit)
  • cupidcupid Member Posts: 1
    edited December 2022

    Istipakov,

    I got the exact same problem as you. WDK.vsix keeps reporting an error, and I ended in the same conclusion that arm64 platform is not supported.
    However, it keeps being possible to compile an arm64 driver.
    I downloaded the EWDK, ran LaunchBuildEnv.cmd, then started VS 2022 from the prompt as described here : https://learn.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk
    From that, I could recompile the WDK samples available here : https://github.com/Microsoft/Windows-driver-samples
    (edit : target arm64, to be more precise)

    Unfortunately I could not create a new Driver type project from VS 2022, so I edited the project of a sample and built my own project file manually.

    I hope this helps.

    Post edited by cupid on
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. Sign in or register to get started.

Upcoming OSR Seminars
OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!
Kernel Debugging 30 January 2023 Live, Online
Developing Minifilters 20 March 2023 Live, Online
Internals & Software Drivers 17 April 2023 Live, Online
Writing WDF Drivers 1 May 2023 Live, Online