Драйвер rtl8139

No comments
  • SoUrcerer wrote:Тебе зачем это всё, только честно?
    Пишу свою OS. Чтоб понять как работает железо и набраться опыта....
  • 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...
  • vova65 wrote:
    SoUrcerer wrote:Тебе зачем это всё, только честно?
    Пишу свою OS. Чтоб понять как работает железо и набраться опыта....
    Тогда тебе на sysbin.com или osdev.org. Или еще куда-нибудь.
    Изучение Колибри - похвальная затея, но лично я считаю, что тебе стоит помочь разработчикам Колибри как минимум так же, как они помогают тебе (исходниками, рабочим кодом, советами). :)
  • Подскажите почему при запуске 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...
  • Подскажите для чего нужна функция eth_tx в ethernet.ini??
  • Who is online

    Users browsing this forum: No registered users and 6 guests