Just to clarify, a modification I made was calling the ethif_init function ethernet.c file[1] and passing some parameters (base_addr,mac, dma_ops,ethif_recv_callback). Currently, dma_ops and ethif_recv_callback contain null values and I'm not too sure what I need to initialise them as.
Secondly, as I still was not getting a different message in the terminal to suggest an error, I used the same method used for the pc99 boards for initialising the ethernet device. I called the ethif_odroid_init_module function which is the function that the preprocessor symbol is pointing to. Doing so I was able at least try and see if I had done the modification of the code correctly which leads me back to the first point as an assertion error occurred for dma_ops and I presume would happen to ethif_recv_callback as well. Also, please could you clarify how I am meant to modify the callbacks so that it gets the correct registers and IRQs from the DTS. [1] https://github.com/SEL4PROJ/AOS/blob/master/libethernet/src/ethernet.c#L63 Thanks, Nkem On Tue, 26 Jan 2021 at 10:23, Nkem Ogosi <ogosin...@gmail.com> wrote: > I have seemingly done as you have suggested but the result remains the > same. I do not even get any error messages to suggest I have modified > anything incorrectly which again leads me to believe that maybe its an > issue with how I have set up the folder but I don't see how as it follows > the same conventions to the other plat from source files in libethdrivers. > My second guess is simply that despite adding the parts for bootstrapping, > it is making no attempt to do so. Again, apologies if my issues are trivial > as this is my first time working with anything like this. > > Best, > Nkem > > > On Mon, 25 Jan 2021 at 03:27, Lee, Damon (Data61, Eveleigh) < > damon....@data61.csiro.au> wrote: > >> Hi Nkem, >> >> > I have been trying to use the ethernet driver for the UNSW Asdvanced >> > Operating Systems course but I still get these messages: >> > >> > find_compatible_driver_module@io.c:434 No suitable driver was found >> for path >> > /soc/ethernet@c9410000, ignoring >> > server_init@ethdriver.c:382 Unable to find an ethernet device >> > >> > I thought that I had to copy the driver to the utils lib folder and >> provide a >> > preprocessor macro as someone else had suggested but I may be missing a >> few >> > other things. >> >> It seems that you're pretty close to getting everything complete. You're >> only >> missing one more step, and this is to add some bootstrapping code to get >> the >> driver to initialise and register itself with the interface registration >> service so that it can be found by the Ethdriver CAmkES component. >> >> To do this, you can copy the example from the i.MX6 Ethernet driver and >> change >> it up a bit so that it works for the Odroid C2. More specifically, you'd >> copy >> this function [1], modify the contents of the function to use the correct >> initialisation function for the C2, and also modify the callbacks [2] and >> [3] >> so that it gets the correct registers and IRQs from the kernel's version >> of the >> Odroid C2's DTS. Finally, you also need copy this [4] and modify the >> following >> string array and the last argument in the preprocessor symbol to point to >> the >> function you copied earlier. >> >> I hope this helps, >> Damon >> >> [1] >> >> https://github.com/seL4/util_libs/blob/master/libethdrivers/src/plat/imx6/imx6.c#L523 >> [2] >> >> https://github.com/seL4/util_libs/blob/master/libethdrivers/src/plat/imx6/imx6.c#L523 >> [3] >> >> https://github.com/seL4/util_libs/blob/master/libethdrivers/src/plat/imx6/imx6.c#L504 >> [4] >> >> https://github.com/seL4/util_libs/blob/master/libethdrivers/src/plat/imx6/imx6.c#L574 >> _______________________________________________ >> Devel mailing list -- devel@sel4.systems >> To unsubscribe send an email to devel-leave@sel4.systems >> > _______________________________________________ Devel mailing list -- devel@sel4.systems To unsubscribe send an email to devel-leave@sel4.systems