OSDev

для всех
Текущее время: 21 ноя 2017, 20:15

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 13 ]  На страницу 1, 2  След.
Автор Сообщение
СообщениеДобавлено: 05 апр 2015, 01:51 

Зарегистрирован: 10 апр 2012, 23:19
Сообщения: 274
наконец то нашёл упоминание об этом устройстве, но не могу понять как его определить ( то что оно существует)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 апр 2015, 09:13 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1056
А такого устройства не существует.
Есть только шина и интерфейс
https://ru.wikipedia.org/wiki/DMI


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 апр 2015, 15:03 

Зарегистрирован: 10 апр 2012, 23:19
Сообщения: 274
ну вот как бы существует.
Код:
000a0000 VGA - VGA Video Buffer
000c0000 VGA BIOS
000e0000 ACPI RSDP
000e1000 DMI tables
000e2000 Net Boot ROM
000f0000 PC BIOS
e0000000 VGA LFB
f0000000 PCNet
f0804000 AHCI
fee00000 APIC Memory
ffff0000 PC BIOS


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 апр 2015, 15:20 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1056
Это не устройство. Это просто таблица, которую генерирует BIOS при загрузке(или заранее).
http://www-pc.uni-regensburg.de/hardwar ... dmi_20.pdf
А вообще это устаревшее название теперь известно под названием SMBIOS
http://www.dmtf.org/standards/smbios
Пользы от этой таблицы я не вижу. Так как она частенько неполна и как пишут недостоверная.
Хотя порой в ней можно найти серийный номер материнской платы и виндоуса.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 апр 2015, 17:31 

Зарегистрирован: 10 апр 2012, 23:19
Сообщения: 274
Ну хорошо тогда IPMI, SPD как определить что оно есть,
и опять же как с ним работать, хота SPD напоминает SMBus


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 апр 2015, 17:55 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1056
SPD - это микросхема EEPROM -памяти на печатной плате ОЗУ (DDR, SDRAM).
В ней хранятся характеристики и описания ОЗУ.

Работа с SPD заключается в чтение характеристик и показу пользователю.
Лучше конечно прочитать через разбор таблиц DMI. Но можно и через шину SMBus.

Работа с шиной SMBus зависит от реализации. Она отличается в разных метеринских платах.
В атаче мой код когда-то делал для статьи. Статья не сохранилась поэтому напишу подробности потом.

Можешь посмотреть мои исходники. По работе с DMI и другими.
http://forum.sources.ru/index.php?showtopic=149656

Как программировать SMBus можно глянуть в ICH. Вот к примеру
http://www.intel.com/content/dam/doc/da ... asheet.pdf


Структуру SPD потом найду скину.


Вложения:
SMBus.zip [7.06 КБ]
Скачиваний: 107
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 апр 2015, 18:24 

Зарегистрирован: 10 апр 2012, 23:19
Сообщения: 274
спасибо.

кстати по поводу LPC контролера, там не указано где у него порты ввода вывода,
а на шине писиая только он то и определяется.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 апр 2015, 21:15 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1056
В верху я давал ссылку на южный мост Интела ICH 5, сейчас уже есть 9 версия если не десятая.

LPC контроллер расположен в южном мосте. Сам контроллер можно найти в PCI CFG южного моста. LPC контроллер по сути и является мостом который согласовывает сигналы шины "PCI" и шину LPC(ISA).

Но вы можете не беспокоится вам настраивать и программировать его не надо.
LPC шина это разновидность ISA шины. Доступ к устройствам на этой шине идёт через порты ввода/вывода(in AL, DX; out DX, EAX) .

Грубо говоря на этой шине находится наследство 80-тых годов, которое досталось современным ПК от оригинального PS/2 - а именно:
Контроллер последовательного порта(COM), DMA, PIC, LPT контроллер, 8042 (PS/2) и тому подобное.

1) "PCI" - в кавычках так как как сейчас там внутренняя шина южного моста программно совместимая с PCI. Хотя и несколько отличающеяся.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 апр 2015, 21:39 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1056
По поводу определения SPD. Сейчас вы не найдёте память без неё. Хотя бод столом у меня такая пылится. Отсутствие устройства определяется по отсутствия ответу по таймеру. Обычно в цикл 1-65535 раз проверяется наличие результата и если нет ответа то и устройства нет.

Расшифровка кодов SPD надо делать согласно:
Serial Presence Detect Standard, General Standard
SPD Rev1.0 for DDR SDRAM
SPD Rev1.2 for DDR2 SDRAM
SPD Rev1.3 for DDR2 SDRAM
SPECIALITY DDR2-1066 SDRAM

Ещё одна ссылка про SMBus,
Linux драйвера http://www.lm-sensors.org/wiki/I2CTools
SMBus - это интеловская копия с филиповской i2c.
Описания шин не привожу сами найдёте если надо.

Первые компы можно было легко повесить при работе с SMBus, так что даже кнопка выключения не работала. А всё из-за ошибки Intel.
А ещё мне однажды знание SMBus помогло свой ком восстановить после сбоя. Пришлось перепрошивать SPD из-за севшей батарейки ком начал глючить и при загрузке 2 байта стерлись в обоих платах.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 апр 2015, 21:51 

Зарегистрирован: 10 апр 2012, 23:19
Сообщения: 274
pavia писал(а):
LPC шина это разновидность ISA шины.

ну а порты i/o где там записаны, и работать с ними как с обычным писиаем.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 13 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB