summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-07-12apalis/colibri_t20/t30: increase tftp blocksizeMarcel Ziswiler
Enable CONFIG_IP_DEFRAG and set CONFIG_TFTP_BLOCKSIZE to 16384 (resp. 1536 on Colibri T20). This increases the tftp download speed considerably. While at it enable CONFIG_TFTP_TSIZE which limits the progress bar to fifty '#' independent of the downloaded file size. While at it also fix some spacing from using spaces to tabs.
2015-07-12colibri_t30: fix framebuffer console regressionMarcel Ziswiler
This is a copy/paste error from the Apalis T30 configuration as there we show the Linux framebuffer console by default on the second framebuffer instance being the DVI-D aka HDMI one due to analogue VGA not being available. This patch changes it for the Colibri T30 back to the first framebuffer instance being the parallel RGB aka TFTLCD one which usually gets converted to analogue VGA via an on-carrier RAMDAC (e.g. at least on the Colibri Evaluation board as well as Iris this is the case).
2015-07-08colibri_imx6.c: fix setup of I2C3Max Krummenacher
Use the correct I2C instance for the I2C going to SODIMM_194/196.
2015-07-08Apalis/Colibri iMX6: pf0100.c cleanup coding styleMax Krummenacher
2015-07-08Apalis: production: use GPIO1 to trigger PMIC fusingMax Krummenacher
use Apalis GPIO1 to switch on VPGM
2015-07-08Apalis/Colibri iMX6: fix production commandsMax Krummenacher
commit 2da77958e96151295e72f8f85aee352d0b4010fe added a configuration option to include commands used during production. Fixing the use of the CONFIG macro.
2015-07-07colibri_vf: mux UART2 (Colibri UART_B) at boot timeStefan Agner
Some firmwares running on the secondary core rely on UART pins muxed at start time. Mux the Vybrid UART2 (which maps to Colibri UART_B) at startup.
2015-07-07arm: vf610: support global timerStefan Agner
Add support for ARM global timer. This allows to save the platform wide PIT timer for other purposes such as MQX on the secondary Cortex-M4 core.
2015-07-07colibri_vf: fixup DT with DDR property to support LPSTOPStefan Agner
Fixup the device-tree with the property fsl,has-cke-reset-pulls which annotates that the board has pull-ups/downs which are required to put the memory into self-refresh mode. The self-refresh mode in turn is a requirement to put the SoC into deep sleep mode LPSTOP.
2015-06-30colibri_vf: use device-tree for MTD partitionsStefan Agner
Use device-tree fixup to communicate the MTD partitions to the kernel. U-Boot's mtdparts environment variable will be used as partition source for the device-tree based partition table too.
2015-05-29imx-common: m4boot: allow to boot other OS'es using m4bootStefan Agner
Allow to boot eCos, MQX and bare-metal firmwares to boot on the secondary Cortex-M4. The boot code is equal for all those firmware types, the argument register will be set to 0 and the code will jump to the specified entry point directly.
2015-05-28image: add Cortex-M4 related operating systemsStefan Agner
Add new identifiers for Cortex-M4 related (RT)OS eCos, MQX and Bare-metal.
2015-05-28imx-common: m4boot: move entry point checkStefan Agner
Move entry point is Thumb2 check just after reading the entry point from the FIT image.
2015-05-28imx-common: include mini-loader vf610m4bootldrStefan Agner
Include vf610m4bootldr, a mini boot loader for the Cortex-M4 CPU inside Freescale Vybrid SoC. The mini loader enables caches and copies the pointer to the device tree from the platform specific argument register (PERSISTENT_ARG1) to the Cortex-M4 r2 register, where the Linux kernel expects the pointer. The mini loader hence essentially takes over the parts of the m4boot command which can not be done from the Cortex-A5 main CPU.
2015-05-28imx-common: add m4boot commandStefan Agner
Add m4boot command which allows to boot FIT images on the Cortex-M4 kernel. The command currently only supports FIT image, which allows to provide entry point and load addresses for all boot artifacts. Currently, the Cortex-M4 mini loader needs to be loaded manually to Kernel loadaddr - 0x80 (e.g. 0x8f000000, if kernel is loaded at 0x8f000080).
2015-05-28colibri_vf: disable configuration of MSCM interrupt routerStefan Agner
Do not configure all interrupts to the primary core by default since newer Linux versions configure the MSCM interrupt router correctly by themself. This also prevents warnings due to already routed interrupts when booting Linux on the secondary Cortex-M4 CPU.
2015-05-28colibri_vf: increase tftp block sizeStefan Agner
Enable CONFIG_IP_DEFRAG and set CONFIG_TFTP_BLOCKSIZE to 16384. This increases the tftp download speed from ~2.5 to ~8.2MiB/s. While at it enable CONFIG_TFTP_TSIZE which limits the progress bar to 50 '#' indepent off the downloaded file size.
2015-05-28colibri_vf: Increase console IO buffer size to 1024Sanchayan Maity
Increase console IO buffer size to 1024 from the previous value of 256. The previous value was too short for editing environment variables like ubiboot, from the console. Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2015-05-21Apalis/Colibri iMX6: increase tftp blocksizeMax Krummenacher
Enable CONFIG_IP_DEFRAG and set CONFIG_TFTP_BLOCKSIZE to 16384. This increases the tftp download speed considerably. While at it enable CONFIG_TFTP_TSIZE which limits the progress bar to fifty '#' indepent off the downloaded file size.
2015-05-21tftp.c: fix CONFIG_TFTP_TSIZE for small filesMax Krummenacher
CONFIG_TFTP_TSIZE should limit a tftp downloads progress to 50 '#' chars. Make this work also for small files. If the file size is small, i.e. smaller than 2 tftp block sizes the number of '#' can get much larger. i.e. with a 1 byte file 65000 characters are printed, with a 512 byte file around 500. When using CONFIG TFTP BLOCKSIZE together with CONFIG_IP_DEFRAG the issue is more notable. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2015-05-18colibri_t20/t30: fix setsdupdateColibri_iMX6_LinuxImageV2.4Beta1_20150518Colibri_VF_LinuxImageV2.4Beta1_20150518Colibri_T30_LinuxImageV2.4Beta1_20150518Colibri_T20_LinuxImageV2.4Beta1_20150518Apalis_iMX6_LinuxImageV2.4Beta1_20150518Apalis_T30_LinuxImageV2.4Beta1_20150518Marcel Ziswiler
Fix setsdupdate by adding missing 'usb start' command. While at it also add USB start to setethupdate as doing it twice won't hurt (e.g. it returns immediately only 'usb reset' does a full rescan).
2015-05-13apalis_imx6.c: prepare Apalis GPIO pins to be GPIOMax Krummenacher
In order to use the gpio commandline feature of U-Boot the pins one wants to control must be muxed to GPIO. Do that for Apalis pins GPIO[1:8] and for WAKE1_MICO. This feature can be used as follows: e.g. set GPIO1 to 1: Apalis iMX6 # gpio set 36 gpio: pin 36 (gpio 36) value is 1 e.g. read the state of GPIO8: Apalis iMX6 # gpio input 6 gpio: pin 6 (gpio 6) value is 1
2015-05-13colibri_imx6.c: prepare auxiliary pins to be GPIOMax Krummenacher
In order to use the gpio commandline feature of U-Boot the pins one wants to control must be muxed to GPIO. Do that for all unused pins which in the default kernel device tree also gets muxed to gpio for userspace use. This feature can be used as follows: e.g. change the LCD brightness signal from 0V to 3.3V: Colibri iMX6 # gpio set 41 gpio: pin 41 (gpio 41) value is 1 e.g. read the state of gpio 111: Colibri iMX6 # gpio input 111 gpio: pin 111 (gpio 111) value is 1
2015-05-13colibri_imx6.c: ensure EMI_ADDR22 is inputMax Krummenacher
Out of reset EMI_ADDR22 is output and connected to GPIO01. As we want to use GPIO01 as an output for backlight control mux EMI_ADDR22 to a GPIO which by default is input.
2015-05-13Apalis/Colibri iMX6: rename/add bmodeMax Krummenacher
Add an alias for the ESDHC0 which provides the standard MMC connection on Colibri iMX6. Add an alias for the ESDHC0/1 which provides the standard MMC/SD connection on Apalis iMX6.
2015-05-13apalis/colibri_t20/t30: enable of system setup supportMarcel Ziswiler
Enable OF system setup to add hardware revision and serial number information to the device-tree in case a mainline Linux kernel with any such is booted. While at it default back to the regular 8 MB DFU data buffer size.
2015-05-13apalis/colibri_t20/t30: enable raw initrd supportMarcel Ziswiler
Enable optional raw initrd support to allow boot using an initrd.
2015-05-13mtd/nand/tegra: alignment workaroundMarcel Ziswiler
Introduce cache alignment bounce buffer to workaround issues as follows: Loading file '/boot/zImage' to addr 0x01000000 with size 4499152 (0x0044a6d0)... ERROR: v7_dcache_inval_range - start address is not aligned - 0x1f7f0108 ERROR: v7_dcache_inval_range - stop address is not aligned - 0x1f7f1108 Done Kernel image @ 0x1000000 [ 0x000000 - 0x44a6d0 ] Starting kernel ... undefined instruction pc : [<005ff03c>] lr : [<0000800c>] sp : 0144b6e8 ip : 01000188 fp : 0144a6c8 r10: 00000000 r9 : 411fc090 r8 : 00000100 r7 : 00000cfb r6 : 0144a6d0 r5 : 00000000 r4 : 00008000 r3 : 0000000c r2 : 00000100 r1 : 00000cfb r0 : 00000000 Flags: nZCv IRQs off FIQs off Mode SVC_32 Resetting CPU ...
2015-05-13mtd/nand/ubi: assortment of alignment fixesMarcel Ziswiler
Various U-Boot adoptions/extensions to MTD/NAND/UBI did not take buffer alignment into account which led to failures of the following form: ERROR: v7_dcache_inval_range - start address is not aligned - 0x1f7f0108 ERROR: v7_dcache_inval_range - stop address is not aligned - 0x1f7f1108
2015-05-11toradex: common: fix non-Toradex config block buildStefan Agner
Fix build of configurations without the Toradex config block. Also move away from the ifdefery through the file, but create a global ifdef which distingush between the two variants on a global level.
2015-05-11toradex: common: use define for product number offsetStefan Agner
The USB product ID's for the Colibri/Apalis family of Toradex can be calculated by using the Toradex product ID (as provided by the config block) plus a fixed offset of 0x4000.
2015-05-11logos: update Toradex logoStefan Agner
Use the boot loader splash screen from WinCE, which maches positionwise our wallpapers. Altough the logo is a 8-Bit indexed BMP as well, colors looked odd at first on U-Boot. After converting to full RGB pallette and coverting back to indexed BMP using imagemagick, the Logo showed up properly. $ convert tools/logos/toradex-rgb.bmp -type Palette -colors 256 \ -compress none -verbose BMP3:tools/logos/toradex.bmp
2015-05-11image-fdt.c: store returned error valueMax Krummenacher
This fixes the following warning (and the runtime error reporting): ../common/image-fdt.c:491:4: warning: 'fdt_ret' may be used uninitialized in this function [-Wmaybe-uninitialized]
2015-05-11colibri_imx6.h: source the correct script addressMax Krummenacher
2015-05-11video: dcu: fixup memory correct even without framebufferStefan Agner
When there is no framebuffer allocated, e.g. no video environment variable or an error during initialization, the framebuffer location ends up to be NULL, in which case the fixup function calculates a bogus memory size. Use the framebuffer size to make sure that memory size is calculated right in any case.
2015-05-11toradex: common: set board-rev and product-idStefan Agner
Set board revision and Toradex product ID as device tree property. This transfers the Toradex configblock information to Linux user- space, where it can be read conviniently through the proc file system files: - /proc/device-tree/serial-number - /proc/device-tree/toradex,board-rev - /proc/device-tree/toradex,product-id In case the Toradex config block is missing or corrupted, the device tree properties won't be created by the boot loader and hence those file won't exist in that case.
2015-05-09toradex: common: set Toradex specific dt propertiesStefan Agner
Use ft_system_setup to set Toradex specific device-tree properties. At first, this is only the serial-number, which is using a property which is about to be standardized in the binding documentation of the Linux kernel.
2015-05-09toradex: configblock: move environment config to commonStefan Agner
Move setting of environment variables to common code. This prepares for further enhancements which will enhance the device tree with module specific information from the configblock.
2015-05-07Add config to disable commands used only in productionMax Krummenacher
CONFIG_TRDX_CMD_IMX_MFGR in menu 'ARM architecture' While at it remove unused include g_dnl.h
2015-05-07configblock.c: add configblock creation for iMX6 modulesMax Krummenacher
2015-05-07Apalis/Colibri iMX6: use Toradex boot logoMax Krummenacher
This uses the tools/logos/toradex.bmp instead of the default tux logo and places it centered on screen. While at it group the display releated variables together.
2015-05-06Apalis/Colibri iMX6: make the parallel RGB usableMax Krummenacher
In U-Boot use the following display outputs a: - Test the panel environment variable and if set use it - Use HDMI if connected - Use parallel output otherwise configured for VGA 640x480 The following strings can be set for the panel variable: HDMI vga-rgb wvga-rgb
2015-05-06imx-common: make ipu's di configurableMax Krummenacher
The ipu has two display interfaces. Make the used one a parameter in struct display_info_t instead of using unconditionally DI0.
2015-05-06Apalis/Colibri imx6: remove explicitely set default configsMax Krummenacher
2015-05-06apalis/colibri_t30: fix dfu_alt_infoMarcel Ziswiler
2015-05-05colibri_t20: adjust cfgblock & u-boot env locations in flashMarcel Ziswiler
Swap the order of the Toradex factory configuration block location in respect to the U-Boot environment. This to again be in-line with mainline. Move the Toradex factory configuration block to a 3 MB offset.
2015-05-05common: hash: fix crc32 verifyMarcel Ziswiler
did not work: Colibri T30 # crc32 0x80000000 0x100 crc32 for 80000000 ... 800000ff ==> 9eb4f5ca Colibri T30 # crc32 -v 0x80000000 0x100 c9a057b3 crc32 for 80000000 ... 800000ff ==> 9eb4f5ca != ffffffff ** ERROR ** Colibri T30 # crc32 -v 0x80000000 0x100 9eb4f5ca crc32 for 80000000 ... 800000ff ==> 9eb4f5ca != 301eeead ** ERROR ** now works again: Colibri T30 # crc32 0x80000000 0x100 crc32 for 80000000 ... 800000ff ==> 9eb4f5ca Colibri T30 # crc32 -v 0x80000000 0x100 c9a057b3 crc32 for 80000000 ... 800000ff ==> 9eb4f5ca != c9a057b3 ** ERROR ** Colibri T30 # crc32 -v 0x80000000 0x100 9eb4f5ca Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2015-05-04colibri_vf: update default configStefan Agner
Add consoleblank=0 to disable console blanking by default. To use initramfs without the need of creating a U-Boot image using mkimage, enable CONFIG_SUPPORT_RAW_INITRD too.
2015-05-04ARM: vf610: rename/add bmode for Colibri VFxxStefan Agner
Rename the serial loader boot mode to "serial". Also add an alias for the ESDHC1 controller, which provides the standard MMC connection for the Colibri SO-DIMM default pinout.
2015-05-04toradex: common: create a place for common functionalityStefan Agner
Some functionality is repetitve accross the boards. This creates a common place for U-Boot functions which need to be implemented similarly for all Toradex modules.