Main Page | Modules | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Related Pages | Examples

Todo List

Class _NUTTHREADINFO
Sort items while considering alignment.

File bankmem.h
Add configuration items instead of occupying all banks.

Global u_char
We should switch to stdint.h as suggested by Dirk Kaufmann. See feature request #1282721.

Global ms62_5
To be removed.

Group xgThread
Using the special priority 255 to kill a thread is not required and should be removed.

Global NutThreadResume (void)
Removing a single thread from a wait queue only improves context switching, but may result in an event time-out for remaining threads, although events had been posted already.

Global NutThreadWake (HANDLE timer, HANDLE th)
Used by the timer module. Should be moved there, because not all applications will use of NutSleep().

Global NutThreadSetPriority (u_char level)
Using a specific priority level for killing a thread is actually not the best idea. NutThreadKill() can be used instead.

Global NutThreadExit (void)
NutThreadKill() can be used instead of setting the priority level to 255.

Global GetThreadByName (char *name)
Rarely used helper function. Should be placed in a seperate module.

Global NutTimerInsert (NUTTIMERINFO *tn)
Make this local function static.

Global NutTimerCreate (u_long ticks, void(*callback)(HANDLE, void *), void *arg, u_char flags)
Make this local function static or directly integrate it into NutTimerStartTicks().

Global NutSleep (u_long ms)
Code size can be reduced by trying to create the timer before removing the thread from the run queue.

Group xgBankMem
At least some parts should be moved to the device section.

Group xgSocket
An ICMP socket API would be nice.

Global NutTcpCreateSocket (void)
Avoid fixed initial sequence number.

Global NutTcpError (TCPSOCKET *sock)
Not all error codes are properly set right now. Some socket functions return an error without setting an error code.

Group xgUdpSocket
There is no similar call like NutTcpError() available for UDP.

Group xgBasePro
IGMP support.

Group xgTCP
Use an indirect call for NutTcpInput(). Right now, the whole TCP code is linked to any application, even if only UDP is used.

Group xgIP
Configurable checksum calculation for incoming datagrams.

Group xgARP
Add functions to manually add or remove ARP entries.

Group xgARP
Add function to query ARP tables.

Group xgARP
Response may reuse received ARP packet.

Group xgEthernet
Multicast support.

Group xgUserPro
Adding more protocols would be helpful, e.g. SMTP. Right now, applications must implement them with the Socket API.

Global NutDhcpClient (void *arg)
We are using a bunch of global variables, which must be associated to a specific interfase if we want to support more than one Ethernet port.

Global NutRegisterCgi (char *name, int(*func)(FILE *, REQUEST *))
Duplicate names not checked.

Group xgSntp
Enhance documentation.

Global UsartInit (NUTDEVICE *dev)
Read initial settings from EEPROM.

Global UsartClose (NUTFILE *fp)
We may support shared open and use dev_irq as an open counter.

Global UsartOpen (NUTDEVICE *dev, CONST char *name, int mode, int acc)
We may support shared open and use dev_irq as an open counter.

Global UsartIOCtl (NUTDEVICE *dev, int req, void *conf)
Hardware handshake is not available with AT91 targets.

Global TermWrite (NUTFILE *fp, CONST void *buffer, int len)
TAB should be interpreted.

Global MmCardIOCtl (NUTDEVICE *dev, int req, void *conf)
Card change detection should verify the serial card number.

Global SbiMmCard0Avail (void)
Card change should verify the card identifier. Right now any detection of removing and re-inserting a card counts as a card change.

Global SbiMmCard0WrProt (void)
Not implemented.

Global NutWatchDogStart (u_long ms, u_long xmode)
AVR implementation.

Global NplMmCard0Avail (void)
Card change should verify the card identifier. Right now any detection of removing and re-inserting a card counts as a card change.

Global NplMmCard0WrProt (void)
Not implemented.

Global NUTMEM_END
Shall we support NUTRAMEND for backward compatibility? If, then let's do it in cfg/memory.h.

Global NutInit (void)
Make heap threshold configurable, currently hardcoded at 384.

Global NutInit (void)
Make wait states for external memory access configuratble.

Global NutInit (void)
Make early UART initialization for kernel debugging configurable.

Global AhdlcAvrClose (NUTFILE *fp)
We may support shared open and use dev_irq as an open counter.

Group xgNutArchArmDevIrqAt91
Handle AT91 interrupts nicely.

Global At91SpiMmCard0Avail (void)
Card change should verify the card identifier. Right now any detection of removing and re-inserting a card counts as a card change.

Global At91SpiMmCard0WrProt (void)
Not implemented.

Global EmacOutput (NUTDEVICE *dev, NETBUF *nb)
This routine does not work.

© 2000-2006 by egnite Software GmbH - visit http://www.ethernut.de/