Copyright © Sierra Wireless, Inc. 2014. All rights reserved.
This page summarizes important information about the Legato 14.10 release. On this page, you'll find info on:
Other important info:
Upgrade
Legato
Legato documentation
These are the Legato 14.10 source packages, available from Legato Downloads:
·
WP7 series pre-built distribution - Legato-Dist-PreBuilt-mdm9x15-14.10.tar.bz2
·
Sources package - Legato-Dist-Source-mdm9x15-14.10.tar.bz2
·
Toolchain for Linux PC i686 Legato -
Legato-Toolchain-mdm9x15-14.10-i686.sh
·
Toolchain for Linux PC x86 64bits -
Legato-Toolchain-mdm9x15-14.10-x86_64.sh
·
Windows drivers needed to upgrade WP7 Series firmware -
Drivers_Package.zip
·
WP7 firmware package - SWI9X15W_06.03.27.00-wp_yocto-cwe.exe
This release added the following new features:
Modem Services
· Audio Service now supports PCM and I2S interface configuration. See Audio Services
· Modem Services are now supported on a CDMA network. See Modem Services
Build Tools
·
Xdef files:
- rename limits in .adef files.
- warn if using a real-time priority level and cpuShare limit for the same process.
- curly braces now mandatory for all non-trivial .Xdef file sections.
- warn if file related limits are in conflict with each other.
- C++ support
- cflags, cxxflags, and
ldflags sections are now supported in Component.cdef files.
- .adef support for
config ACLs: clients and services must now be explicitly bound. Please read the documentation on bindings carefully.
- "import", "export", and "files" sections have been removed:
- .adef: replaced "import" with "requires" and replaced "files" with "bundles"
- .cdef: replaced "import" with "requires" and replaced "export" with "provides".
- .cdef now also supports "requires" and "bundles" sections with "dir" and "file" subsections.
See
Definition Files
·
ifgen:
- support compound data types
- rename start/stop functions
- BITMASK support
- support for nested USETYPES
- output gcc style error messages
See
ifgen
· mk tools support C++-specific compiler flag. See mktools
On-Target Runtime
· Legato Threading API to initialize a non-Legato thread. See Using Legato APIs from Non-Legato Threads
· Time-of-Day Service.
· support for multiple open and close handlers on an IPC service.
On-Target Tools
· script on target for framework installation.
· tool to set a static MAC address on a dev target. See Set MAC
· embedded tool with unified interface for Linux image.
Linux BSP
· upgrade to Yocto 1.6.1 (from 1.4.1)
· power management and wake lock functions on Yocto Linux
· Yocto allow serial port console choice through AT!MAPUART
· ntp option for time of day service
These fixes were included:
Modem Services
· Audio cooperative mode is now available; audio services can be access from Legato APIs and through modem services.
· le_mrc_GetNeighborCellsInfo() provides neighbor cell info for GSM/UMTS/LTE networks.
· pa_mrc_GetSignalStrength() provides HDR RSSI info for CDMA and TD-SCDMA.
· Resolved issue with stopping DTMF decoder.
· Resolved SMS storage configuration, message listing, and delete issues.
· Updated le_sim API to return MCC/MNC using string.
Data Connection Services
· Resolved issue with stopping IPv4v6 session with le_mdc_StopSession().
· Resolved issue with using different profile settings to establish a data connection.
· Retained the default gateway setting after a data connection.
eCall Services
·
eCall services are enabled during build time by setting the INCLUDE_ECALL flag to 1
e.g.: make ar7 INCLUDE_ECALL=1
Developer Tools
· Corrected application installation procedure to prevent changing the rootfs user/group IDs.
· Updated Legato framework installation and start up scripts to improve the installation process.
Framework Supervisor
· Improved Supervisor’s ability to clean up sandbox resources.
On-Target Runtime
· Target platform can now be identified using le_info_GetDeviceModel().
· Config tree: Improved event triggers and callbacks.
· Config tree: Improved handling of edge conditions.
· Config tree: Improved precision on floating point values.
Linux BSP
· Resolved kernel panic issue when removing and inserting USB cable.
· I2C can now be used concurrently with UART2.
·
Yocto patches for the following Shellshock Vulnerabilities:
- CVE-2014-6278
- CVE-2014-6277
- CVE-2014-7186
- CVE-2014-7187
- CVE-2014-7169
- CVE-2014-6271
IPC binding changes
As a result of introducing access control to the service directory, it's now mandatory to bind clients and services in your .adef files. See Definition Files
A new tool has been created to query the status of clients and services using the service directory. See Service Directory tool
Wakelock patches and userspace suspend/resume functions
Patches have been merged in the kernel to support auto-sleep, user-space interface to wake locks and EPOLLWAKEUP. It's still a work in progress, but it's possible to enable auto-suspend in Linux by:
echo mem > /sys/power/autosleep
This will function as long as there are no devices causing constant interrupts.
Using Legato APIs from a Boost thread
Documentation for this feature has been added to the Thread API Using Legato APIs from Non-Legato Threads.
Here's a code sample:
static void* ThreadMain(void*
threadParam)
{
le_thread_InitLegatoThreadData("thread name");
// Do something...
le_thread_CleanupLegatoThreadData();
return NULL;
}
int main(void)
{
pthread_attr_t* attrPtr;
// Initialize thread attributes how you want them...
pthread_t handle;
int result = pthread_create(&handle,
attrPtr,
ThreadMain,
NULL); // <- thread param
// Do some stuff in the main thread...
return EXIT_SUCCESS;
}
Data connection
It is currently only possible to have one mobile data connection at a time using the Legato APIs.
Definition Files
System definition .sdef files are not fully implemented. File and directory permissions in "requires" sections are not implemented.