Addning new protocol and new driver on Linux
Hi all! I have a driver for nordic nRF24L01+ module: http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P I'm looking for a requirements list of what I need to do. For now I have this topics - Write driver using kernel NAPI (I already have a driver working with cdev API) - Write new protocol and export to userspace as a new socket type (no ideia on this) As example I'm using the linux socketCan, I want to do like they did, but with nRF24L01+. I have no ideia how this two topics touch one each other... Any documentation, simple examples, tutorials, guide lines, articles or irc chat on subject is welcome, I look on LDD3, but its outdated, I'm using kernel 3.0 for development, As first version requeriment I want to send frames (32 bytes fixed) with sendto() and receive (32 bytes fixed too) with recvfrom()... Messages should be enqueued while sending, the driver need to iterate over a circular list of remote nodes, exchaning frames and delivering the received to userspace... Something like: for (;;) { node *n = get_next_node(); send_frames_to(n); // <- send enqueed frames, unblocking sendto() caller receive_frames_from(n); // <- deliver received frames to recvfrom() caller } Thanks in advance! Cheers -- *"Do or do not. There is no try"* *Yoda Master*
participants (1)
-
Daniel.