Community
cancel
Showing results for 
Search instead for 
Did you mean: 
gongyi_l_
Beginner
123 Views

Use IPP static library in Windows Kernel Mode

How to use IPP  static library in Windows Kernel Mode ?

and where  can  I download  a sample of driver develop?

0 Kudos
4 Replies
Ying_H_Intel
Employee
123 Views

Hi Gongyi L,

What kind of function from IPP you want to use in kernel model? 

You may refer to the sample and user guide in

https://software.intel.com/en-us/articles/intel-integrated-performance-primitives-intel-ipp-intel-ip...

to build your program.

Best Regards,

Ying H.

Intel IPP Consulting

 

gongyi_l_
Beginner
123 Views

such as      ippStaticInit(),ippiResizeYUV422_8u_C2R;    

 What  kind of   ipp-linkage-models can use in window kernel model?

 

below is my code :     ( error LINK2019: unresolved external symbol  _ippStaticInit()……)

#include <ntddk.h>
#include "ipp.h"

#pragma comment( lib, "ippcoremt" )

typedef struct _DEVICE_EXTENSION {
    PDEVICE_OBJECT pDevice;
} DEVICE_EXTENSION, *PDEVICE_EXTENSION;

#define SymLinkName L"\\DosDevices\\Global\\DebugDemo"

#pragma code_seg("INIT")
NTSTATUS CreateDevice (
        IN PDRIVER_OBJECT    pDriverObject) 
{
    NTSTATUS status;
    PDEVICE_OBJECT pDevObj;
    PDEVICE_EXTENSION pDevExt;
    
    UNICODE_STRING devName;
    UNICODE_STRING symLinkName;
    RtlInitUnicodeString(&devName,L"\\Device\\DebugDemo");
    
    status = IoCreateDevice( pDriverObject,
                        sizeof(DEVICE_EXTENSION),
                        &devName,
                        FILE_DEVICE_UNKNOWN,
                        0, TRUE,
                        &pDevObj );

      ippStaticInit();
    if (!NT_SUCCESS(status))
        return status;

    ……

 

Ying_H_Intel
Employee
123 Views

Hi Gongyi,

I send your private message and include one driver developer sample.  You may refer to it.

Best Regards,

Ying

ILevi1
Valued Contributor I
123 Views

If I am not mistaken, ippStaticInit() function is deprecated and removed in newer IPP versions. You should call ippInit() instead.

Reply