Re: Ethernet device

Wajidali Whowe <[email protected]>
Newsgroups gmane.comp.micro-kernel.l4.devel
Message-ID <[email protected]>
Sorry forgot to add the index of x86-legacy.devs:


# vim:set ft=ioconfig:
# extend the real system bus with some platform devices
hw-root
{
  PS2 => new Device()
  {
    .hid = "PNP0303";
    new-res Io(0x60);
    new-res Io(0x64);
    new-res Irq(1,  0x000000);
    new-res Irq(12, 0x000000);
  }

  RTC => new Device()
  {
    .hid = "PNP0B00";
    new-res Io(0x70 .. 0x71);
  }

  # port 80 device for giving access to the port 0x80 used for IO-delay...
  P80 => new Device()
  {
    .hid = "P80";
    new-res Io(0x80);
  }

  BIOS => new Device()
  {
    .hid = "BIOS";
    new-res Mmio(0x0 .. 0xfff, 0xc000);
    new-res Mmio(0x9f000 .. 0x9ffff, 0xc000);
    new-res Mmio(0xc0000 .. 0xfffff, 0xc000);
  }

  VGA => new Device()
  {
    .hid = "PNP0900";
    new-res Io(0x3b0 .. 0x3bf); # MDA
    new-res Io(0x3c0 .. 0x3df); # EGA/VGA
    new-res Mmio(0xa0000 .. 0xbffff, 0xc000);
  }

  PORT_PIT => new Device()
  {
    .hid = "PNP0100";
    new-res Io(0x40 .. 0x43);
    new-res Io(0x61);
  }
}

Best Regards,


________________________________
 From: Wajidali Whowe <[email protected]>
To: Matthias Lange <[email protected]> 
Cc: "[email protected]" <[email protected]> 
Sent: Monday, August 6, 2012 2:56 PM
Subject: Re: Ethernet device
 

Hi Matthias, thanks for the fast reply. Indeed I have already added the bus for PCI devices into the x86.vbus file as follows:

rtc => new System_bus()
{
  # Add the RTC (PNP0B00) as a virtual device
  rtc => wrap(hw-root.match("PNP0B00"));
}

con_bus => new System_bus()
{
  ps2 => wrap(hw-root.match("PNP0303"));
}

# Virtual bus for the fb-drv server
fb => new System_bus()
{
  # The BIOS memory regions to execute the VESA BIOS
  bios => wrap(hw-root.BIOS);

  # PIT (accessd by various VESA BIOSes)
  pit  => wrap(hw-root.match("PNP0100"));

  # used for IO delay on various VESA BIOSes
  p80  => wrap(hw-root.match("P80"));

  # Legacy VGA MMIO and I/O Ports
  vga  => wrap(hw-root.match("PNP0900"));

  # Use virtual PCI bus that keeps the physical bus structure
  # because the VESA BIOS may store the physical PCI address
  # when initialized by the host BIOS
  PCI0 => new PCI_bus_ident()
  {
    # Dummy device 0 on PCI bus 0 makes cirrus VESA BIOS happy
    host_bridge_dummy => new PCI_dummy_device();

    # Put all display devices on our virtual PCI bus PCI class code 0x03
    gfx[] => wrap(hw-root.match("PCI/CC_03"));
  }
}

android_bus => new System_bus()
{
  # Add a new virtual PCI root bridge
  PCI0 => new PCI_bus()
  {
    # Add all real PCI devices that match the CIDs to the virtual PCI bus
    # NOTE: PCI/CC_xx means PCI class code == xx.
    #       CC_01 => storage devices
    #       CC_02 => network devices
    #       CC_04 => multimedia devices
    #       CC_0c => serial bus devices (USB)
    pci[] => wrap(hw-root.match("PCI/CC_02"));
  }
}


I guess the "pci[] =>  wrap(hw-root.match("PCI/CC_02"));" line should have been handling this, I checked also the l4 kernel and saw that the PCI device support was already chosen, still I can not achieve eth device on the virtualized android kernel 

Best Regards


________________________________
 From: Matthias Lange <[email protected]>
To: Wajidali Whowe <[email protected]> 
Cc: "[email protected]" <[email protected]> 
Sent: Monday, August 6, 2012 11:48 AM
Subject: Re: Ethernet device
 
On Mon, Aug 06, 2012 at 02:35:02AM -0700, Wajidali Whowe wrote:
> Dear all, 
> 
> I have been working on running different linux based OSs on top of L4.
> Is there any documentation or tutorial where I might find information on how to make platform devices available for the linux OS running on top of L4. For instance, I could not get ethernet devices detected by the OS.

In case of a PCI device you simply add that to the respective vbus and compile the
corresponding driver into L4Linux. Make sure to activate the virtual PCI bus
driver in L4Linux.

Matthias.

> 
> Best Regards

> _______________________________________________
> l4-hackers mailing
 list
> [email protected]
> http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers


-- 
Dipl.-Inf. Matthias Lange <[email protected]>
Security in Telecommunications
TU Berlin / Telekom Innovation Laboratories
Ernst-Reuter-Platz 7, 10587 Berlin
Phone: +49 - 30 - 8353 58 553
Mobile: +49 - 160 - 587 28 07
Web: http://www.t-labs.tu-berlin.de/sect



_______________________________________________
l4-hackers mailing list
[email protected]
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers

_______________________________________________
l4-hackers mailing list
[email protected]
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.