Board.KolibriOS.org
https://board.kolibrios.org/

Драйвер rtl8139
https://board.kolibrios.org/viewtopic.php?f=10&t=3619
Page 2 of 2

Author:  art_zh [ Wed Dec 07, 2011 7:45 pm ]
Post subject:  Re: Драйвер rtl8139

vova65 wrote:
эти функции я смотрел и немного переделал... они рабочие...
здесь проблема в чемто ниже этих функцый..... но в чем..? :(

не понимаю, как их надо было переделать, чтобы вот этот код
Code:
    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 что за манипуляции и зачем?

Author:  vova65 [ Wed Dec 07, 2011 7:48 pm ]
Post subject:  Re: Драйвер rtl8139

SoUrcerer wrote:
Тебе зачем это всё, только честно?

Пишу свою OS. Чтоб понять как работает железо и набраться опыта....

Author:  vova65 [ Wed Dec 07, 2011 8:04 pm ]
Post subject:  Re: Драйвер rtl8139

art_zh wrote:
не понимаю, как их надо было переделать, чтобы вот этот код
Code:
    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...

Author:  SoUrcerer [ Wed Dec 07, 2011 8:34 pm ]
Post subject:  Re: Драйвер rtl8139

vova65 wrote:
SoUrcerer wrote:
Тебе зачем это всё, только честно?

Пишу свою OS. Чтоб понять как работает железо и набраться опыта....

Тогда тебе на sysbin.com или osdev.org. Или еще куда-нибудь.
Изучение Колибри - похвальная затея, но лично я считаю, что тебе стоит помочь разработчикам Колибри как минимум так же, как они помогают тебе (исходниками, рабочим кодом, советами). :)

Author:  vova65 [ Wed Dec 07, 2011 11:29 pm ]
Post subject:  Re: Драйвер rtl8139

Подскажите почему при запуске pciS не происходят приревания от rtl8139???

Code:
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...

Author:  vova65 [ Mon Dec 12, 2011 9:59 pm ]
Post subject:  Re: Драйвер rtl8139

Подскажите для чего нужна функция eth_tx в ethernet.ini??

Page 2 of 2 All times are UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/