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
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
Used by the timer module. Should be moved there, because not all applications will use of NutSleep().

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

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

Global GetThreadByName
Rarely used helper function. Should be placed in a seperate module.

Global NutMicroDelay
Overflow handling.

Global NutTimerInsert
Make this local function static.

Global NutTimerCreate
Make this local function static or directly integrate it into NutTimerStartTicks().

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

Global NutHeapRealloc
see if we can do some codesharing with malloc

Global NutHeapRealloc
add some checks like reallocating free mem, etc

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

Group xgSocket
An ICMP socket API would be nice.

Global NutTcpCreateSocket
Avoid fixed initial sequence number.

Global NutTcpError
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
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.

Group xgSntp
Enhance documentation.

Global UsartInit
Read initial settings from EEPROM.

Global UsartClose
We may support shared open and use dev_irq as an open counter.

Global UsartOpen
We may support shared open and use dev_irq as an open counter.

Global UsartIOCtl
Hardware handshake is not available with AT91 targets.

Global TermWrite
TAB should be interpreted.

Global MmCardIOCtl
Card change detection should verify the serial card number.

Global SbiMmCard0Avail
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
Not implemented.

Global NutWatchDogStart
AVR implementation.

Global NplMmCard0Avail
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
Not implemented.

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

Global NutInit
Make wait states for external memory access configuratble.

Global NutInit
Make early UART initialization for kernel debugging configurable.

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

Global AhdlcAvrClose
We may support shared open and use dev_irq as an open counter.

Global AhdlcAt91Close
We may support shared open and use dev_irq as an open counter.

Global At91SpiMmCard0Avail
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
Not implemented.

Group xgNutArchArmDevIrqAt91
Handle AT91 interrupts nicely.

Global UxmlParseStream
Empty element tags with a slash in front of the closing angle bracket are not yet supported.

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