Page 2 of 2
Re: Драйвер rtl8139
Posted: Wed Dec 07, 2011 7:45 pm
by art_zh
vova65 wrote:эти функции я смотрел и немного переделал... они рабочие...
здесь проблема в чемто ниже этих функцый..... но в чем..?
не понимаю, как их надо было переделать, чтобы вот этот код
Code: Select all
call pci_read_reg
;меняем значенние регистра
or al, (1 shl 2) or (1 shl 0)
and al, not (1 shl 1)
;Записываем в конфигурацыоное пространство
mov edx,04h
call pci_write_reg
стал рабочим ?
в edx что?
с al что за манипуляции и зачем?
Re: Драйвер rtl8139
Posted: Wed Dec 07, 2011 7:48 pm
by vova65
SoUrcerer wrote:Тебе зачем это всё, только честно?
Пишу свою OS. Чтоб понять как работает железо и набраться опыта....
Re: Драйвер rtl8139
Posted: Wed Dec 07, 2011 8:04 pm
by vova65
art_zh wrote:не понимаю, как их надо было переделать, чтобы вот этот код
Code: Select all
call pci_read_reg
;меняем значенние регистра
or al, (1 shl 2) or (1 shl 0)
and al, not (1 shl 1)
;Записываем в конфигурацыоное пространство
mov edx,04h
call pci_write_reg
стал рабочим ?
как-то умудрился
art_zh wrote:в edx что?
Регистр конфигурационного пространства PCI
art_zh wrote:с al что за манипуляции и зачем?
установка битов 0 и 2 регистра 04h в 1.. и сброс бита 1 в 0...
Re: Драйвер rtl8139
Posted: Wed Dec 07, 2011 8:34 pm
by SoUrcerer
vova65 wrote:SoUrcerer wrote:Тебе зачем это всё, только честно?
Пишу свою OS. Чтоб понять как работает железо и набраться опыта....
Тогда тебе на sysbin.com или osdev.org. Или еще куда-нибудь.
Изучение Колибри - похвальная затея, но лично я считаю, что тебе стоит помочь разработчикам Колибри как минимум так же, как они помогают тебе (исходниками, рабочим кодом, советами).
Re: Драйвер rtl8139
Posted: Wed Dec 07, 2011 11:29 pm
by vova65
Подскажите почему при запуске pciS не происходят приревания от rtl8139???
Code: Select all
pciS:
mov ebx,2
xor ecx,ecx
mov edx,3Ch
mov esi,2
call pci_read_reg
mov al,35h
;
mov edx,3Ch
call pci_write_reg
;32 k Rxbuffer, неограниченного пакета dma, никакого обертывания, никакого rx порога
; примите широковещательные пакеты, примите физические пакеты соответствия
mov ax,0000E7BEh
mov edx,[ds:pci_bus]
add edx,44h
out dx, ax
; включение Rx/Tx
mov al,00001100b
mov edx,[ds:pci_bus]
add edx, 37h
out dx, al
; включите все прерывания
mov edx,[ds:pci_bus]
add edx,3Ch
;mov ax,0FFFFh
mov ax,0000h
out dx,ax
ret
Часть таблицы irq
.......
dw exit, 08h,1000111000000000b,0;31
dw timer, 08h,1000111000000000b,0;32 IRQ(0)
dw exit4, 08h,1000111000000000b,0;33 IRQ(1)
dw exit, 08h,1000111000000000b,0;34 IRQ(2)
dw exit1, 08h,1000111000000000b,0;35 IRQ(3)
dw exit, 08h,1000111000000000b,0;36 IRQ(4)
.......
функции pci_read_reg и pci_write_reg работают и значение 35h записывается в регистр 3Ch конфигурационного пространства PCI...
Re: Драйвер rtl8139
Posted: Mon Dec 12, 2011 9:59 pm
by vova65
Подскажите для чего нужна функция eth_tx в ethernet.ini??