Hi,
On 10-1-27 下午8:03, Björn Döbel wrote:
I have managed to port DDE linux26 to the Hurd. At least it works with NIC drivers now.
Congratulations. :)
Thank you.
A few problems:
- dde linux26 doesn't support multiple PCI buses. Unfortunately, my virtual
machine has two PCI buses: bus 0 and bus 2. Now I have to hardcode the bus numbers in the code. Do you have plan to support multiple PCI buses?
Our approach is to provide the application with a single logical PCI bus within DDEKit and have a management component that parses the real PCI bus and multiplexes accesses. Have a look at l4/pkg/l4io. As in most of the cases you only use one device within a DDEKit-based application, we did not see any real benefit of supporting multiple PCI buses in DDE.
OK, I see your point and I believe that one device doesn't use two buses, but I didn't see how a logical PCI bus is mapped to a physical one. ddekit_pci_init calls err = l4io_pci_find_device(~0, ~0, start, &l4dev); to search for buses, which calls a RPC to the kernel, but every DDEKIT application starts with 0. I don't see where is your management component and how it chooses the right bus for the device.
- DDE Linux26 doesn't support sound card drivers.
Does DDE Linux26 support the block device and character device?
The answer for all points is that this is usually a matter of adding the corresponding Linux code and maybe some glue code. We did this for character, sound and block devices to a certain point. However, there is no releasable code, yet.
So are you still working on supporting character, sound and block devices?
Thank you, Zheng Da