Hi seL4 Dev Team,

I'm currently working on (mostly learning at this point) how we could add
TX1 platform support for a PCIE network card (Intel 82580), using TK1 and
others as a reference.
I'm fairly new to working with PCI, but after looking around I think I have
a general idea on what I need to do.
I would appreciate it very much if someone with more experience could tell
me if I'm on the wrong path here:

* Using the TX1 TRM, I would populate the missing physical device region
definitions in 'tx1/plat/machine/devices.h', and update the 'dev_p_regs[]'
struct in 'tx1/plat/machine/hardware.h'
* Figure out if I need to build up SMMU support (also a newbie here), I'm
having doubts on whether I can bang on physical addresses or not without it
* Construct a suitable implementation of 'ps_io_port_ops_t' for handling
the I/O routines for libpci
* Put together a hello world main program to exercise some of libpci's
functionality
* Once things are looking good there, move up to libethdrivers and port the
needed bits for our Ethernet adapter using existing references (and
eventually hooking up to lwip hopefully)

At this point, I've been avoiding camkes for the sake of learning how
everything works and if anyone can recommend a good starting C project for
doing I/O on an ARM platform, that would be very helpful.

Thanks in advance.

-- 
Jon Lamb
Software Engineer | *PolySync*
1020 SE 11th Ave, Portland, OR 97214
*c* 888.810.4284 x701 <888.810.4284%C2%A0x713> | *e* [email protected] | *w*
polysync.io <http://www.polysync.io/>
_______________________________________________
Devel mailing list
[email protected]
https://sel4.systems/lists/listinfo/devel

Reply via email to