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

Reply via email to