summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAgeLines
* Merge branch 'master' of git://git.denx.de/u-boot-spiTom Rini2015-11-19-0/+2
|\
| * ARM: am43xx: Enable QUAD read and EDMA support for ti_qspiVignesh R2015-11-17-0/+2
| | | | | | | | | | | | | | | | | | Enable TI_EDMA3 and QUAD read support for ti_qspi on am43xx, this increases read performance to 4 MB/s. Signed-off-by: Vignesh R <vigneshr@ti.com> Reviewed-by: Mugunthan V N <mugunthanvnm@ti.com> Reviewed-by: Jagan Teki <jteki@openedev.com>
* | zynq: sdhci: Define max clock by macroMichal Simek2015-11-19-0/+5
| | | | | | | | | | | | | | zc1571 with silicon can operate on 200MHz maximum frequency. Setup this frequency by default and fix setting for ep108. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
* | tools: zynqimage: Add Xilinx Zynq boot header generation to mkimageNathan Rossi2015-11-19-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As with other platforms vendors love to create their own boot header formats. Xilinx is no different and for the Zynq platform/SoC there exists the "boot.bin" which is read by the platforms bootrom. This format is described to a useful extent within the Xilinx Zynq TRM. This implementation adds support for the 'zynqimage' to mkimage. The implementation only considers the most common boot header which is un-encrypted and packed directly after the boot header itself (no XIP, etc.). However this implementation does take into consideration the other fields of the header for image dumping use cases (vector table and register initialization). Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Cc: Michal Simek <michal.simek@xilinx.com> Cc: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
* | ARM64: zynqmp: Enable TI phy by defaultMichal Simek2015-11-19-0/+1
| | | | | | | | | | | | Enable TI phy for Xilinx ZynqMP platform. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
* | net: phy: Add support for Texas Instruments DP83867Edgar E. Iglesias2015-11-19-0/+1
| | | | | | | | | | | | | | | | | | Code is taken from Linux kernel driver (v4.2). Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Tom Rini <trini@konsulko.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* | ARM: zynq: Choose boot image based on OF_SEPARATE macroMichal Simek2015-11-19-1/+1
| | | | | | | | | | | | | | | | | | OF_CONTROL is enabled by default for all Zynq boards. The difference between two boot images is done by OF_SEPARATE or OF_EMBED macros. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Tom Rini <trini@konsulko.com>
* | powerpc/83xx: add support for kmtegr1 boardValentin Longchamp2015-11-18-4/+61
| | | | | | | | | | | | | | | | | | This board uses the same CPU (8309) as VECT1. The memory however is different since it has NAND Flash, the NOR Flash partitioning is different and of course the FPGAs as well. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Signed-off-by: Christoph Dietrich <christoph.dietrich@keymile.com>
* | km8309: change the default QE_FW addressValentin Longchamp2015-11-18-2/+4
| | | | | | | | | | | | | | | | | | | | | | It should be after the u-boot reserved sectors and before the env sectors, since the solution used for kmvect1 (tell the linker to put the firmware into the u-boot produced binary, at the end of the area) should be the exception. The #define is only "conditional" so that we can still support kmvect1. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* | km83xx: use CONFIG_ENV_ADDR for the newenv env commandValentin Longchamp2015-11-18-2/+6
| | | | | | | | | | | | | | | | | | | | The hardcoded value are bad, since the address could change between different boards. Furthermore, the relevant #defines are set only if #undefined here, so that they can be changed by some boards if required. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* | powerpc/km8360: fix the ODT parameters for CS0Valentin Longchamp2015-11-18-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | The ODT parameters for km8360 set the ODT_WR_ACS bit in u-boot KM-2011.09 that is used in the release bootpackage for kmcoge5ne. During the transition from the kmeter1 to km8360 this was changed to ODT_RD_ONLY_CURRENT, which is uncorrect and causes faulty RAM accesses at low temperatures. This is now changed to ODT_WR_ONLY_CURRENT which is the equivalent of ODT_WR_ACS. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* | powerpc/km8309: define CONFIG_SYS_DDRCDRValentin Longchamp2015-11-18-0/+6
| | | | | | | | | | | | | | For consistency with all the other km83xx plaforms, this should also be defined for km8309. The same settings as for km8321 are taken. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* | powerpc/km8321: define CONFIG_SYS_DDRCDRValentin Longchamp2015-11-18-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On the km8321 boards is CONFIG_SYS_DDRCDR not defined, which leads to the DDRCDR not being configured at startup and still containing the reset value. The required settings for our km8321 hardware designs are different than the reset value and must be set with CONFIG_SYS_DDRCDR, that is used by mpc83xx's cpu_init_f function at early CPU initialization. The important settings are the DDR2 internal voltage level and the half-strength "drivers". In our case where the DRAM chips are soldered on board and the routing for these signals under control, half-strength is sufficient as a few measurements done in the lasts have shown. Since all the hardware qualification tests have been performed with half strength, the nominal strength settings are removed in favor of the default reset half strength settings. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* | km/powerpc: move open firmware defines to km-powerpc.hHolger Brunck2015-11-18-6/+4
| | | | | | | | | | | | | | | | | | We use the same settings for open firmware defines on all our powerpc targets, so move them from the CPU specific headers to the common powerpc header. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* | km/powerpc: increase space for kernel imange and FDT blobHolger Brunck2015-11-18-3/+3
| | | | | | | | | | | | | | | | | | 128kByte and 3,986MB may be in the future too little for kernel the fdt blob respectively the kernel image. So increase the reserved areas here, we have the space for this. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* | powerpc/83xx: add support for kmtepr2 boardChristoph Dietrich2015-11-18-7/+36
| | | | | | | | | | | | | | | | This board is similar to TUXX1, but it has differend FPGAs. Signed-off-by: Christoph Dietrich <christoph.dietrich@keymile.com> Signed-off-by: Andreas Huber <andreas.huber@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* | km: update the boot script to check for a DTBValentin Longchamp2015-11-18-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If a DTB is found with cramfsls, the bootscript continues as expected. If none is found, the cramfsloadfdt and boot subbootcmds are updated to not load the DTB from cramfs and not pass it to the kernel. The kernel thus must have an appended DTB otherwise the boot will fail. This is required for the km_kirkwood boards that must support .esw where the DTB sometimes is appended (for backwards compatibility) and sometimes is passed correctly (as we do now for all newer boards). Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Reviewed-by: Heiko Schocher <hs@denx.de>
* | km/common: stop u-boot only if someone press <SPACE>Holger Brunck2015-11-18-0/+4
| | | | | | | | | | | | | | | | | | | | To prevent u-boot to stop accidently e.g. due to line noise on the serial line, we now use the option CONFIG_AUTOBOOT_KEYED. We choose the <SPACE> key for this. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Reviewed-by: Heiko Schocher <hs@denx.de>
* | arm/km_kirkwood: remove KM_ENV_BUS and use CONFIG_I2C_ENV_EEPROM_BUSValentin Longchamp2015-11-18-5/+1
| | | | | | | | | | | | | | | | | | KM_ENV_BUS was used for nothing else than an direct assignment to CONFIG_I2C_ENV_EEPROM_BUS. To avoid this, directly use CONFIG_I2C_ENV_EEPROM_BUS instead. Patchwork: http://patchwork.ozlabs.org/patch/399411/ Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* | board/ti/am335x: add support for BeagleBone Greenrobertcnelson@gmail.com2015-11-18-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SeeedStudio BeagleBone Green (BBG) is clone of the BeagleBone Black (BBB) minus the HDMI port and addition of two Grove connectors (i2c2 and usart2). This board can be identified by the 1A value after A335BNLT (BBB) in the at24 eeprom: 1A: [aa 55 33 ee 41 33 33 35 42 4e 4c 54 1a 00 00 00 |.U3.A335BNLT....|] http://beagleboard.org/green http://www.seeedstudio.com/wiki/Beaglebone_green In Mainline Kernel as of: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=79a4e64c679d8a0b1037da174e4aea578c80c4e6 Patch tested on BeagleBone Black (rev C) and BeagleBone Green (production model) Signed-off-by: Robert Nelson <robertcnelson@gmail.com> CC: Tom Rini <trini@konsulko.com> CC: Jason Kridner <jkridner@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com>
* | common: add CMD_GPIO to KconfigThomas Chou2015-11-18-56/+0
| | | | | | | | | | | | | | Add CMD_GPIO to Kconfig and run tools/moveconfig.py . Signed-off-by: Thomas Chou <thomas@wytron.com.tw> Reviewed-by: Simon Glass <sjg@chromium.org>
* | spl: mmc: add support for BOOT_DEVICE_MMC2Nikita Kiryanov2015-11-18-1/+1
| | | | | | | | | | | | | | | | | | | | | | Currently the mmc device that SPL looks at is always mmc0, regardless of the BOOT_DEVICE_MMCx value. This forces some boards to implement hacks in order to boot from other mmc devices. Make SPL take into account the correct mmc device. Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il> Reviewed-by: Tom Rini <trini@konsulko.com>
* | arm: mx6: cm-fx6: define fallback boot devices for splNikita Kiryanov2015-11-18-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | Use spl alternate boot device feature to define fallback to the main boot device as it is defined by hardware. Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il> Cc: Igor Grinberg <grinberg@compulab.co.il> Cc: Stefano Babic <sbabic@denx.de> Cc: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Stefano Babic <sbabic@denx.de>
* | spl: change return values of spl_*_load_image()Nikita Kiryanov2015-11-18-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make spl_*_load_image() functions return a value instead of hanging if a problem is encountered. This enables main spl code to make the decision whether to hang or not, thus preparing it to support alternative boot devices. Some boot devices (namely nand and spi) do not hang on error. Instead, they return normally and SPL proceeds to boot the contents of the load address. This is considered a bug and is rectified by hanging on error for these devices as well. Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il> Cc: Igor Grinberg <grinberg@compulab.co.il> Cc: Tom Rini <trini@konsulko.com> Cc: Simon Glass <sjg@chromium.org> Cc: Ian Campbell <ijc@hellion.org.uk> Cc: Hans De Goede <hdegoede@redhat.com> Cc: Albert Aribaud <albert.u.boot@aribaud.net> Cc: Jagan Teki <jteki@openedev.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* | board: ti: beagle_x15: Rename to indicate support for TI am57xx evmsKipisz, Steven2015-11-18-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BeagleBoard X15 (http://beagleboard.org/x15) support in u-boot does actually support two different platform configuration offered by TI. In addition to BeagleBoard X15, it also supports the TMDXEVM5728 (or more commonly known as AM5728-evm). Information about the TI AM57xx EVM can be found here http://www.ti.com/tool/tmdxevm5728 The EVM configuration is 1-1 compatible with BeagleBoard X15 with the additional support for mPCIe, mSATA, LCD, touchscreen, Camera, push button and TI's wlink8 offering. Hence, we rename the beagle_x15 directory to am57xx to support TI EVMs that use the AM57xx processor. By doing this we have common code reuse. This sets the stage to have a common u-boot image solution for multiple TI EVMs such as that already done for am335x and am437x. This sets the stage for upcoming multiple TI EVMs that share the same code base. NOTE: Commit eae7ae185335 ("am437x: Add am57xx_evm_defconfig using CONFIG_DM") introduced DT support for beagle_x15 under am57xx_evm platform name. However, this ignored the potential confusion arising for users as a result. To prevent this, existing beagle_x15_defconfig is renamed as am57xx_evm_nodt_defconfig to denote that this is the "non device tree" configuration for the same platform. We still retain am57xx-beagle-x15.dts at this point, since we just require the common minimum dts. As a result of this change, users should expect changes in build procedures('make am57xx_evm_nodt_defconfig' instead of 'make beagle_x15_defconfig'). Hopefully, this would be a one-time change. Signed-off-by: Steve Kipisz <s-kipisz2@ti.com> Signed-off-by: Schuyler Patton <spatton@ti.com> Acked-by: Nishanth Menon <nm@ti.com> Acked-by: Lokesh Vutla <lokeshvutla@ti.com>
* | Merge git://git.denx.de/u-boot-marvellTom Rini2015-11-17-150/+79
|\ \
| * | arm: kirkwood: ib62x0: drop duplicate defines from CONFIG_SYS_MVFSLuka Perkov2015-11-17-15/+0
| | | | | | | | | | | | | | | | | | These options were already defined in mv-common.h file. Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
| * | arm: kirkwood: ib62x0: drop dev CONFIG_OF_LIBFDTLuka Perkov2015-11-17-5/+0
| | | | | | | | | | | | | | | | | | It is already defined in included mv-common.h file. Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
| * | arm: kirkwood: ib62x0: make use of defconfigLuka Perkov2015-11-17-3/+0
| | | | | | | | | | | | Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
| * | arm: kirkwood: ib62x0: drop CONFIG_CMD_ENV defineLuka Perkov2015-11-17-1/+0
| | | | | | | | | | | | | | | | | | The CONFIG_CMD_ENV is enabled by default so we can safely remove it. Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
| * | arm: kirkwood: ib62x0: build u-boot.kwbLuka Perkov2015-11-17-0/+3
| | | | | | | | | | | | | | | | | | Avoid double typing in the shell and build u-boot.kwb when running "make" only. Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
| * | arm: kirkwood: ib62x0: drop CONFIG_MACH_TYPELuka Perkov2015-11-17-5/+0
| | | | | | | | | | | | | | | | | | | | | Mainline kernel for this device has only support for device tree. We can safely drop this legacy code. Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
| * | arm: kirkwood: Move common definitions into common fileQuentin Armitage2015-11-17-107/+70
| | | | | | | | | | | | | | | | | | | | | | | | Create include/configs/mv-plug-common.h for common definitions for Sheevaplug, Guruplug and Dreamplug. This will make it easier to ensure the built u-boots stay in track with each other Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
| * | arm: kirkwood: Remove duplicate definition from dreamplug.hQuentin Armitage2015-11-17-5/+0
| | | | | | | | | | | | | | | | | | CONFIG_DISPLAY_CPUINFO is already defined in mv-common.h Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
| * | arm: kirkwood: Align configuration filesQuentin Armitage2015-11-17-2/+5
| | | | | | | | | | | | | | | | | | | | | Cosmetic: CONFIG_OF_LIBFDT was in a different position in the config file for the Dreamplug, compared to the Sheevaplug and Guruplug. Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
| * | arm: kirkwood: Use common definition for filesystemsQuentin Armitage2015-11-17-30/+20
| | | | | | | | | | | | | | | | | | | | | include/configs/mv-common.h brings in the required filesystems if CONFIG_SYS_MVFS is defined, so use it for Sheevaplug and Guruplug. Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
| * | arm: kirkwood: Move configuration of some commands to _defconfig filesQuentin Armitage2015-11-17-22/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For Marvell plugs, move the configuration of DHCP, NAND/SF, PING and USB commands, and HUSH_PARSER into the _defconfig file, rather than the include/configs/*plug.h files. This avoids compiler warnings of duplicate definitions if the option is selected in the .config, but also defined in the include/configs/*plug.h file. Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
| * | arm: kirkwood: Remove duplicate definition of CONFIG_CMD_FATQuentin Armitage2015-11-17-1/+0
| | | | | | | | | | | | | | | | | | include/configs/guruplug.h defined CONFIG_CMD_FAT twice. Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
| * | arm: kirkwood: standardise the configurationQuentin Armitage2015-11-17-2/+29
| |/ | | | | | | | | | | | | | | | | | | | | | | | | The Marvell plugs are very similar systems, and so it makes sense for their u-boots to have the same commands/configuration. Add EXT4 and MII to Dreamplug, DATE to Guruplug and Sheevaplug. Add CONFIG_SYS_ALT_MEMTEST to Sheevaplug. There are still command differences around NAND, SPI/NOR. Also default to building u-boot.kwb for Sheevaplug and Guruplug. Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
* | board: axs10x switch serial port and Ethernet to driver modelAlexey Brodkin2015-11-18-25/+6
|/ | | | | | | | | | | | | | | | With this change Synopsys DesignWare SDP board is switched to driver model for both serial port (serial_dw) and Ethernet (Designware GMAC). This simplifies include/configs/axs101.h and allows for reuse of Linux's Device Tree description. For simplicity Linux's .dts files are not blindly copied but only very few extracts of them are really used (those that are supported in U-Boot at the moment). Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Reviewed-by: Simon Glass <sjg@chromium.org> Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
* Merge branch 'master' of git://www.denx.de/git/u-boot-imxTom Rini2015-11-16-130/+139
|\
| * splash_source: add support for filesystem formatted sataNikita Kiryanov2015-11-16-0/+1
| | | | | | | | | | | | | | | | | | Add support for loading splashimage from filesystem formatted sata storage. Cc: Igor Grinberg <grinberg@compulab.co.il> Cc: Tom Rini <trini@konsulko.com> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
| * splash_source: add support for filesystem formatted usbNikita Kiryanov2015-11-16-0/+1
| | | | | | | | | | | | | | | | | | Add support for loading splash image from USB drive formatted with a filesystem. Cc: Igor Grinberg <grinberg@compulab.co.il> Cc: Tom Rini <trini@konsulko.com> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
| * splash_source: add support for filesystem formatted mmcNikita Kiryanov2015-11-16-0/+8
| | | | | | | | | | | | | | | | | | Add support for loading splash image from an SD card formatted with a filesystem. Update boards to maintain original behavior where needed. Cc: Igor Grinberg <grinberg@compulab.co.il> Cc: Tom Rini <trini@konsulko.com> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
| * imx6: fix warnings due to switch to distro environmentStefano Babic2015-11-13-2/+2
| | | | | | | | | | | | | | | | | | | | wandboard and mx6cuboxi have warnings because BOOT_DELAY is defined twice. Signed-off-by: Stefano Babic <sbabic@denx.de> CC: Vagrant Cascadian <vagrant@debian.org> CC: Otavio Salvador <otavio@ossystems.com.br> CC: Fabio Estevam <fabio.estevam@freescale.com>
| * imx: mx7dsabresd: support lcdifPeng Fan2015-11-12-0/+17
| | | | | | | | | | | | | | | | | | | | | | Support LCDIF for mx7dsabresd board: 1. Add pinmux settings 2. Add VIDEO related macro definition and videomode env settings. Signed-off-by: Peng Fan <Peng.Fan@freescale.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@freescale.com> Cc: Adrian Alonso <aalonso@freescale.com>
| * imx: mx6ul_14x14_evk: support lcdif displayPeng Fan2015-11-12-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | Support lcdif display: 1. Add pinmux and pad settings for LCDIF 2. Introduce setup_lcd to do the settings for LCDIF 3. Enable VIDEO related macros in board header files 4. Add a new env videomode which is needed by mxsfb.c. The settings for videomode in this patch is for TFT43AB. 5. Tested on mx6ul 14x14/9x9 evk. Signed-off-by: Peng Fan <Peng.Fan@freescale.com> Cc: Stefano Babic <sbabic@denx.de>
| * arm: novena: Fix kernel_addr_r env variableMarek Vasut2015-11-12-1/+1
| | | | | | | | | | | | | | | | | | The kernel_addr_r should be set to the same value as CONFIG_LOADADDR, get rid of the duplication. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Sean Cross <xobs@kosagi.com> Cc: Stefano Babic <sbabic@denx.de>
| * imx: mx7: default enable non-secure modePeng Fan2015-11-12-0/+11
| | | | | | | | | | | | | | | | | | Support PSCI and switch to non-secure mode when booting linux. Signed-off-by: Peng Fan <Peng.Fan@freescale.com> Signed-off-by: Frank Li <Frank.Li@freescale.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@freescale.com>
| * arm: imx: Switch mx6cuboxi to use config_distro_bootcmd.h.Vagrant Cascadian2015-11-12-64/+24
| | | | | | | | | | | | | | | | | | | | This allows for more flexible and standardized boot across multiple platforms. Remove redundant legacy boot environment. Cc: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Vagrant Cascadian <vagrant@debian.org>