Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Чт окт 19, 2017 9:01 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 46 сообщений ]  На страницу Пред. 1 2 3 4 След.
Автор Сообщение
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Чт дек 25, 2008 2:21 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
diamond

>В native mode ядро этих дисков и не увидит.

В смысле через BIOS ? Драйвер ищет контроллеры на PCI шине и видет всё что не отключено.


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Чт дек 25, 2008 5:56 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пн ноя 28, 2005 8:00 pm
Сообщения: 1601
Serge
> В смысле через BIOS ? Драйвер ищет контроллеры на PCI шине и видет всё что не отключено.
Какой драйвер? Я знаю только про ядро (detect/dev_hdcd.inc:SendCommandToHDD и fs/fs_lfn.inc:fs_OnHd*), которое при определении IDE-дисков и не думает про PCI.


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Чт дек 25, 2008 9:38 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
diamond

Я имею ввиду что драйвер будет искать контроллеры через PCI.
Кстати ядро тоже ищет контроллер через PCI
Это из bootcode
; \begin{Mario79}
; find HDD IDE DMA PCI device
; check for PCI BIOS


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Чт дек 25, 2008 10:31 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пн ноя 28, 2005 8:00 pm
Сообщения: 1601
Serge
Но общаться-то с устройством драйвер ведь будет через порты? Вот о них и речь. Базовый порт (не знаю точно, что именно подразумевается под этим в случае нескольких диапазонов ввода/вывода, но полагаю, что с этим можно разобраться) выдаёт BIOSовская функция и может выдавать драйвер - поэтому обсуждение и зашло о том, что в действительности драйвер должен выдавать.

А этот код из bootcode.inc ищет PCI-устройство, соответствующее контроллеру DMA, а вовсе не сами жёсткие диски.


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Чт дек 25, 2008 11:14 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
>А этот код из bootcode.inc ищет PCI-устройство, соответствующее контроллеру DMA, а вовсе не сами жёсткие диски.

Так и я о том же. Сначала надо найти контроллер. Он может работать в legacy mode через порты 0x1F0 и т.д или в native mode, тогда там совсем другие порты и линия irq. У некоторых pata контроллеров есть extended mode для работы через память а не порты. Драйвер может перевести контроллер в native в этом случае bios скорее всего потеряет контроллер.


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Чт дек 25, 2008 11:29 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
Я думаю проблемы с sata потому что Колибри работает только с одним контроллером. В новых чипсетах нет pata и на плату ставят внешний контроллер для старых hd и cd. Биос настраивает контроллеры в legacy mode а дальше как повезёт. Скорее всего внешний контроллер оказывается на дефолтных адресах.


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Чт дек 25, 2008 11:33 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пн ноя 28, 2005 8:00 pm
Сообщения: 1601
А разве есть какие-то проблемы с SATA?


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Пт дек 26, 2008 8:09 am 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
А разве у всех видны диски ?


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Пт дек 26, 2008 12:25 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пн ноя 28, 2005 8:00 pm
Сообщения: 1601
Есть проблемы с USB-флешками (у Mario79 и camper), я с ними пытаюсь разобраться, но SATA-диски видны у всех.


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Пт дек 26, 2008 2:23 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
diamond

У меня в режиме с двумя контроллерами все диски видны только через БИОС. Если работа с дисками через БИОС стала основной то всё нормально. Кстати флешка не появилась. Моя биос понимает только fat12 флешку. В Колибри она не видна.

Я неправильно выразился. Проблема не с SATA а с дополнительными контроллерами. Старый код работает только с одним контроллером. На новых и не очень платах несколькy контроллеров - 1 SATA + 1 PATA или 2 SATA + внешний PATA.


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Пн янв 19, 2009 3:17 am 
Не в сети

Зарегистрирован: Вс мар 11, 2007 4:05 pm
Сообщения: 64
Serge писал(а):
diamond

Если SATA или PATA в native mode там будут другие базовые адреса. А есть способ получить серийный номер устройства через биос ?

Ghost
Ну не обязательно в явном виде. Система запрашивает параметры устройства, получает тип устройства, назначает имя по своему разумению и монтирует с этим именем. Ещё можно давать каждому устройству имя на PCI шине. У меня получится IDE D31:F1:Primary:Master, CD D31:F1:Secondary:Master, SATA D31:F2:Primary:Master. У sata нет деления на master и slave, но для совместимости можно считать что там primary master и secondary master.

Серега это на твоей системе нет slave. Существуют как SATA с 2 дисками где оба мастеры. А также и SATA с 4 дисками где идет полная эмуляция master и slave и два канала. Поэтой причине пришлось опрашивать и мастер и слейв и отсеивать фантомов на слейве для первого случия.
Помимо этого есть еще ACHI(AHCI ) так называемы родной режим для SATA.!!! Где обращение идет через MMIO (порты отоброженные впамять) и на одном канале может быть до 255 устройств.

_________________
http://wiki.osdev.ru/


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Вт ноя 23, 2010 4:18 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 27, 2008 3:22 pm
Сообщения: 974
SATA Revision 3.0


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Вс янв 09, 2011 2:27 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 27, 2008 3:22 pm
Сообщения: 974
Кто-нибудь занимается?

Насчёт именования дисков, есть предложение оставить hd0, hd1, hd2 и hd3 для IDE, а для SATA выделять остальные hd4, h5, и т.д.

pcidev видит контроллеры SATA? IRQ установлены?

Цитата:
2.Отсутствует поддержка LBA48 - а это большой объем переделки кода. В принципе можно обойтись поддержкой 32-х битной адресации, но с современной скоростью развития жестких через 1-2 года это опять упрется в трубу. Дело в коде который в Колибри жестко завязан на максимум 32 бита, расширение до 64-х бит кода работы с ФС потребует большой переделки, по сути написать с нуля по крайней мере на 50-70% кода.


Можно конкретизировать места подлежащие переделке (хотя бы список модулей) ?

Кстати, как насчёт Long LBA ?


Вернуться к началу
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Вт янв 11, 2011 8:03 pm 
Asper
Текст написан 2 года назад, за это время код подвергался модернизации в которой я не участвовал. Нужно смотреть исходники.
Насчет Long LBA ничего не скажу - спецификации не читал. Могу лишь предположить, что задействовали незадействованные биты в старшем dword.


Вернуться к началу
   
 Заголовок сообщения: Re: Serial ATA
СообщениеДобавлено: Ср мар 02, 2011 1:20 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 27, 2008 3:22 pm
Сообщения: 974
Mario писал(а):
Asper
Если контроллер в режиме IDE, то теоретически только поддержки прерываний не хватает. Переписать на другие порты особой проблемы нет.

Значит по сути с патчем Ghost можно сделать?


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

Часовой пояс: UTC+03:00


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

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


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

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