intel/devinfo: add basic sanity tests on device database

v2: #undef NDEBUG (Eric)
    Use inc_include & inc_src (Eric)

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Anuj Phogat anuj.phogat@gmail.com
This commit is contained in:
Lionel Landwerlin 2019-04-11 12:12:38 +01:00
parent 773e6aa9fd
commit 84e70556fb
2 changed files with 45 additions and 0 deletions

View File

@ -0,0 +1,33 @@
#undef NDEBUG
#include <stdint.h>
#include <assert.h>
#include "gen_device_info.h"
int
main(int argc, char *argv[])
{
struct {
uint32_t pci_id;
const char *name;
} chipsets[] = {
#undef CHIPSET
#define CHIPSET(id, family, str_name) { .pci_id = id, .name = str_name, },
#include "pci_ids/i965_pci_ids.h"
};
for (uint32_t i = 0; i < ARRAY_SIZE(chipsets); i++) {
struct gen_device_info devinfo = { 0, };
assert(gen_get_device_info(chipsets[i].pci_id, &devinfo));
assert(devinfo.gen != 0);
assert(devinfo.urb.size != 0);
assert(devinfo.num_eu_per_subslice != 0);
assert(devinfo.num_thread_per_eu != 0);
assert(devinfo.timestamp_frequency != 0);
}
return 0;
}

View File

@ -33,3 +33,15 @@ libintel_dev = static_library(
include_directories : [inc_common, inc_intel, inc_include],
c_args : [c_vis_args, no_override_init_args],
)
if with_tests
test('gen_device_info_test',
executable(
'gen_device_info_test',
'gen_device_info_test.c',
include_directories : [inc_include, inc_src],
link_with : libintel_dev,
),
suite : ['intel'],
)
endif