У меня есть карта PCI, для которой я хочу написать драйвер на языке C.
Моя проблема в том, что я не могу найти серийный номер в оборудовании, которое мне действительно нужно.
Я думаю, что каждая карта PCI должна иметь уникальный производственный идентификатор, возможно, аналогичный штрих-коду на коробке.
У меня есть доступ к шине, слоту и базе. Добавьте данные, которые мне нужны, но не можете найти способ решить мою проблему.
Код для решения не может быть использован.
#include <stdio.h>
#include <stdlib.h>
#define FLASH_BASE_ADDR 0x80000000
#define SNO_ADDR (FLASH_BASE_ADDR + 0x4C)
int main(int argc, char *argv[])
{
int sno, i;
sno = *(int *)SNO_ADDR;
printf("The serial number is %d.\n", sno);
printf("\n");
exit(0);
}
Этот код предназначен для конкретного устройства и не может использоваться в общедоступных задачах.
Теперь я вижу, что VPD может помочь мне. Пожалуйста, скажите мне, как я могу прочитать эти данные.