IPC@CHIP® RTOS-PPC – API Documentation

Header image

Main page


Release Notes – SC2x3 @CHIP-RTOS-PPC V1.01 Beta

The tickets are grouped by component and then sorted by type and ticket number.


RTOS - CAN
Ticket: #46
Component: RTOS - CAN
Type: defect
Summary: De-initialising a CAN port violates programs using other CAN port
Description: A program using another CAN port will crash if the first opened CAN port is de-initialised. The cause for this is that some global resources of the CAN stack are reserved when the first port is initialised. These resources are wrongly freed when this first port is de-initialised again.
Solution: Fixed




RTOS - Command shell
Ticket: #13
Component: RTOS - Command shell
Type: defect
Summary: Batchmode command is missing
Description: The batchmode command is missing in the @CHIP-RTOS-PPC.
Solution: Add the command.



Ticket: #17
Component: RTOS - Command shell
Type: defect
Summary: Malfunction of IPETH command
Description: A GATEWAY IP address specified at chip.ini (section [IP]) is not accepted due to an internal failure at the IPETH command.
Solution: Fixed



Ticket: #20
Component: RTOS - Command shell
Type: defect
Summary: CON command does not clear STDIN
Description: The CON command does not clear the STDIN when the channel is changed.
Solution: Fixed.



Ticket: #64
Component: RTOS - Command shell
Type: defect
Summary: Failure message of ipeth command
Description: In case of an ethernet initialzation fault the ipeth command prints wrongly the message "Invaild arguments".
Solution: Fixed



Ticket: #65
Component: RTOS - Command shell
Type: enhancement
Summary: Support for REM in batch files
Description: It should be possible to comment out single lines in a batch file by prepending 'REM'.
Solution: Implemented




RTOS - Ethernet
Ticket: #31
Component: RTOS - Ethernet
Type: defect
Summary: Possible malfunction
Description: The ethernet receiver could stop working after large periods with interrupts disabled.
Solution: Fixed



Ticket: #48
Component: RTOS - Ethernet
Type: defect
Summary: CHIP.INI Entry ETH_PHYADDR uses wrong limit check
Description: The valid limits should be 0-255. Instead the code checks for 0-3.
Solution: Fixed




RTOS - FTP server
Ticket: #11
Component: RTOS - FTP server
Type: defect
Summary: CWD command sometimes fails
Description: The FTP server CWD command doesn't always work as expected when using absolute paths. E.g. if the PWD command shows "/F:/FTP/", the command "/F:/FTP/" fails.

This bug was introduces with the virtual FTP root directory change.
Solution: Fixed the FTP server file system interface.



Ticket: #14
Component: RTOS - FTP server
Type: defect
Summary: MKD/XRMD/REN/RETR commands sometimes fail
Description: Some FTP server commands, like MKD, XRMD etc., doesn't always work as expected when using absolute paths from the virtual root directory. E.g. the command MKD "A:/foo" fails when it is executed from within the virtual root directory.

This bug was introduces with the virtual FTP root directory change.
Solution: Fixed the FTP server file system interface.




RTOS - File system
Ticket: #22
Component: RTOS - File system
Type: defect
Summary: Long File name directory entries are spent on A: and C: drive for 8.3 names.
Description: When lower case letters are used, extra file directory entries are used to store the exact case of the 8.3 DOS file name. For small drives A: and C: this was not desired.
Solution: Code correction made.



Ticket: #28
Component: RTOS - File system
Type: defect
Summary: DIR command's file filter for *xx not working correctly
Description: When letters to be matched follow the star '*', the file system is not handling the filtering correctly.
Solution: Correct file name filtering code in RTOS.



Ticket: #62
Component: RTOS - File system
Type: defect
Summary: File open for write fails during FTP directory listings
Description: When another thread attempts to open a file for writing, this can fail if concurrently the FTP server is listing the contents of a directory. And more generally, if anywhere in the system is listing a directory with file find first/find next services of the file system.


Solution: Release file node after each find first / find next operation.



Ticket: #41
Component: RTOS - File system
Type: enhancement
Summary: File System User limit too low (15 tasks)
Description: Limitation on number of tasks allowed into File System should either be increased, or entirely eliminated. Also the limit on number of files opened should be increased.
Solution: Implemented




RTOS - Hardware
Ticket: #30
Component: RTOS - Hardware
Type: defect
Summary: EXTIDE: Waiting time after software reset is too short for some devices
Description: Some compactflash cards are not detected correctly.

Some ATAPI devices clear BSY after reset before they are ready to accept commands. They will abort any command sent, or worse, hang.

Solution: Increased waiting time after the software reset command.



Ticket: #58
Component: RTOS - Hardware
Type: defect
Summary: IRQ0-3 in edge-triggered mode can generate an false interrupt after enabled
Description: The user interrupt service procedure can be triggered falsely, after the interrupt (IRQ0-3) has been enabled, although the interrupt condition is not met.

This happens because the interrupt state is not cleared before the IRQ is enabled.
Solution: Fixed.




RTOS - Packet interface
Ticket: #12
Component: RTOS - Packet interface
Type: defect
Summary: pktIncomingPacket( ): Bad value of parameter len
Description: The specified length of an incoming packet specified by parameter "len" of function pktIncomingPacket() is not correct. The real packet length length is "len-4".
Solution: Fixed



Ticket: #15
Component: RTOS - Packet interface
Type: defect
Summary: Malfunction at installed wildcard handlers
Description: Installed Wildcard handlers are not correct handled by the RTOS Packet API functions. There also occurs a "Instruction TLB miss" execption, when the applications exits.
Solution: Fixed. Uninstallation of handler function on program exit was not correctly executed




RTOS - SPI
Ticket: #44
Component: RTOS - SPI
Type: defect
Summary: CODEC/SPI write function does not remove received bytes from queue
Description: When using the spiWrite() function with the CODEC interfaces, the received bytes are not correctly purged from the queue. A successive spiRead() will deliver the previously received characters.
Solution: Fixed code, so that the compiler optimization does not remove the dummy read.




RTOS - Serial ports
Ticket: #27
Component: RTOS - Serial ports
Type: defect
Summary: fossil_status_request() return wrong information
Description: The Bit6, FOSSIL_OUTPUT_BUFFER_EMPTY, is not reported correctly.
Solution: Fixed.




RTOS - System
Ticket: #16
Component: RTOS - System
Type: defect
Summary: RTX_Wait_Queue() API malfunctions in some cases
Description: RTX_Wait_Queue() returns zero due to internal exception inside RTOS when called with certain CPU register contents. This tended to occur when application program was built with compiler optimization enabled.
Solution: Correct error in Task Control Block definition.



Ticket: #21
Component: RTOS - System
Type: defect
Summary: CHIP.INI entries outside the specified limits are rejected
Description: CHIP.INI entries that are outside the specified limits should not be rejected. Instead of this behaviour the allowed minimum or maximum value should be used.
Solution: Fixed.



Ticket: #24
Component: RTOS - System
Type: defect
Summary: TELNET resulting from printf() tends to put 1 char per packet
Description: Packet accumulation control is not being used for TELNET console output.
Solution: RTOS gathers characters delivered to printf() and write(stdout/stderr) grouped into TELNET IP packets.



Ticket: #34
Component: RTOS - System
Type: defect
Summary: Sporadic "machine check exception" at DHCP process
Description: In rare case a fatal "machine check exception" occurs when executing the DHCP address configuration process.
Solution: Fixed



Ticket: #36
Component: RTOS - System
Type: defect
Summary: BEX launch fails with "BEX header values inconsistent" error message
Description: This error can occur when relocation table size is large compared to program data space size.
Solution: Remove an invalid validity check from program launcher.



Ticket: #37
Component: RTOS - System
Type: defect
Summary: Callback memory access faults not shown in ERRORS report
Description: When user callbacks such as for USB hit a memory read or write access fault, the error is not reported in by the console ERRORS command.

Also when the console R32/R16/R8/W32/... commands fault, the access error location is not properly reported to the screen.
Solution: Record ERROR reports for all faults other than those caused by the debugger PROBE.



Ticket: #38
Component: RTOS - System
Type: defect
Summary: Heap grow API corrupts page tables
Description: When malloc() is used in applications and more memory is required from the system to provide this memory, this can result in the system's page tables being set invalid.

In particular, this corruption occurs when the application uses the heap grow operation a second time.
Solution: Correct manner in which page tables are adjusted in response to heap grow action.



Ticket: #39
Component: RTOS - System
Type: defect
Summary: RTX_Task_Create() API has misleading error code value
Description: The single errror code value from this API does not accurately reflect the problem preventing the task creation.
Solution: Provide more resolution using new API RTX_NewTaskErr().



Ticket: #43
Component: RTOS - System
Type: defect
Summary: Callback segment register handling sensitive to task switch
Description: User callback procedure can land in the CPU's "Illegal Access" exception 0x300 when they have done nothing wrong when interrupted at a sensitive point on entry into the callback.
Solution: Reorder instructions inside RTOS callback dispatcher to remove this sensitivity to interrupts.



Ticket: #49
Component: RTOS - System
Type: defect
Summary: MEM command not working correcty during heap activity
Description: When MEM command is used during periods of heavy heap activity, it can erroneously claim that heap is corrupt. The desired indication of " ... walk aborted due to heap activity" is not seen.
Solution: Add extra check for heap linked list continuity.



Ticket: #52
Component: RTOS - System
Type: defect
Summary: Errors in Application Program Memory Management
Description: When application programs terminate, there is an error in how system handles the remove of that program's image from the segment 1 page tables.

Executing programs and terminating program multiple times which had allocated large heap objects would show problems due to this system problem.
Solution: Correct design errors in system code.

Generate "Critical heap memory shortage" shut-down fault when have insufficient heap space for page table editing at program termination (by design, highly unlikely).



Ticket: #53
Component: RTOS - System
Type: defect
Summary: KILL program command and RTX_Kil_Program() will not work for TSR
Description: The Kill program mechanism will not work when applied to a program which has terminated and stayed resident.
Solution: Improve KILL program implementation to also cover TSR.



Ticket: #55
Component: RTOS - System
Type: defect
Summary: TASKS command needs protection against task delete
Description: If a task is deleted in midst of TASKS command execution, this could lead to problems.
Solution: Check that task still exists before inspecting task's data.



Ticket: #57
Component: RTOS - System
Type: defect
Summary: Supervisor mode application program control flag not working
Description: The RTOS program launcher is not reacting to the "setProgramAttributes(PROGATTRIB_SUPERVISOR)" macro used in application programs.
Solution: Correct BEX program loader



Ticket: #59
Component: RTOS - System
Type: defect
Summary: PROGATTRIB_FREE4ALL flag is not working
Description: This program attribute flag should allow other applications to write into the respective programs memory this is not working.
Solution: GenBEX changed to include program attributes in BEX header.



Ticket: #63
Component: RTOS - System
Type: enhancement
Summary: Allow application programs to reserve address space
Description: By adding a __space_reserve linker constant to application programs, the system can provide better control over use of the application program address space. This can avoid MEMORY GAP type problems when application programs need to grow due to dynamic memory allocation from the system.
Solution: Redesign Application Program Space allocator.

Add setSpaceReserve() macro to helper.h to control constant.



Ticket: #67
Component: RTOS - System
Type: enhancement
Summary: Increase size of user area in non-volatile RAM space
Description: Currently the system reserves 32 kByte of the total 512 kByte non-volatile RAM. This can be reduced.
Solution: Reduce system NV-RAM space to 4 kByte.




RTOS - TCP/IP
Ticket: #29
Component: RTOS - TCP/IP
Type: defect
Summary: Wrong IP address parsing at CHIP.INI
Description: If the string length of an IP address entry at chip.ini is greater 14, the address string becomes truncated. Affected are CHIP.INI settings at section [IP]: ADDRESS, NETMASK and GATEWAY. This can lead to an invalid IP configuration of the IPC@CHIP at boot time (e.g. if NETMASK=255.255.255.128 is set).
Solution: Fixed



Ticket: #42
Component: RTOS - TCP/IP
Type: enhancement
Summary: TFTP server task start
Description: For saving RTOS resources the TFTP server task should not come up after RTOS start, if the server was disabled. The server can be started and activated at runtime by typing the shell command "TFTP 1" or calling the ServerControl() API.
Solution: Implemented




RTOS - Telnet server
Ticket: #23
Component: RTOS - Telnet server
Type: defect
Summary: TELNET session output can be blocked when new session established
Description: The packet byte accumulate flag can be left at the blocking state from a previous session. This could result in TELNET data not flushing to output.
Solution: Move the "accumulate output" flag inside the TELNET session object.



Ticket: #72
Component: RTOS - Telnet server
Type: defect
Summary: Possible blockade of Telnet server
Description: It is possible to block the Telnet server by establishing a TCP connection without executing the further login process.
Solution: Fixed.




RTOS - USB
Ticket: #45
Component: RTOS - USB
Type: defect
Summary: De-initialising a USB driver violates other USB drivers
Description: Other USB drivers will crash if the first started USB driver is de-initialised. The cause for this is that some global resources of the USB stack are reserved when the first driver is initialised. These resources are wrongly freed when this first driver is de-initialised again.
Solution: Fixed



Ticket: #47
Component: RTOS - USB
Type: defect
Summary: Wrong data on isochronous endpoint
Description: It might happen that part of the data to be transferred on an isochronous endpoint is transferred to/from the wrong memory location.
Solution: Fixed




RTOS - Web server
Ticket: #54
Component: RTOS - Web server
Type: defect
Summary: SSI_Get_Connection_Params() returns invalid password
Description: The function SSI_Get_Connection_Params() returns an invalid password string if called for other than the first found tag of a web page.
Solution: Fixed








Top of page | Main page

Copyright © 2009 Beck IPC GmbH