summaryrefslogtreecommitdiff
path: root/board
AgeCommit message (Collapse)Author
2014-03-16colibri_t20: disable PMIC sleep mode on low supply voltageColibri_T30_LinuxImageV2.1Beta3_20140318Colibri_T20_LinuxImageV2.1Beta3_20140318Apalis_T30_LinuxImageV2.1Beta3_20140318Marcel Ziswiler
The Colibri T20's PMIC enters a sleep mode on low supply voltage < 3.0V ±2.5% (2.92...3.08V). Rising the main supply voltage again does not bring it back to regular operation. Not even a full reset does bring the module back. A full power cycle was required to reboot the system. A long positive pulse on the PMICs resume pin also reboots the system but this pin is only accessible as a test point on the module. This patch configures the PMIC through I2C to not enter this sleep mode plus force it to normal state upon sleep request exit should this ever happen.
2014-03-12apalis/colibri_t20/30: hw boot partition supportMarcel Ziswiler
The new production lot of Apalis T30 2GB V1.0C now features the new SK Hynix H26M42003GMR rather than Hynix H26M42002GMR. Even though both chips feature the same silicon they differ in respective eMMC firmware and therefore have a different hardware boot partition layout. This patch enables hardware boot partition support (via 'mmc dev [dev] [part]' command) and handles NVIDIA's proprietary NvFlash/Fastboot\ behaviour now putting their partition table in the second boot partition rather than the regular user area. While at it also get rid of the spurious 'video=tegrafb' kernel boot argument, adjust the optional ubiargs and add 'noatime' to the usbargs.
2014-01-30colibri_t20: hack backlight gpioColibri_T30_LinuxImageV2.1Beta2_20140206Colibri_T20_LinuxImageV2.1Beta2_20140207Apalis_T30_LinuxImageV2.1Beta2_20140206Marcel Ziswiler
Hack backlight GPIO by manually untristating respective pinmux group. While at it add some comment to both the device-tree as well as the gpio command that manual untristating will be required on GPIO pins.
2014-01-30apalis/colibri_t20/t30: add vidargs and fix usbboot optionMarcel Ziswiler
Add default VESA VGA vidargs for our now modedb enabled kernel. This allows easy specifying an alternate parallel RGB resolution. Fix usbboot option to be more in-line with how we do optional MMC/SD card boot on Colibri VF50/VF61. Loads the uimage kernel from the first partition being formatted as VFAT and instructs the kernel to mount the second partition formatted as ext3 as root file system. While at it further checkpatchify our common board file.
2013-11-29apalis/colibri_t30: add more console uart configurationsMarcel Ziswiler
Add more UART configurations to the device trees allowing easy switching of the console UART port by changing the UART base address of the console node within the device tree e.g. for using UART2 on Apalis T30 as follows: console = "/serial@70006300"; To use it for Linux as well one needs to modify the debug_uartport kernel boot argument e.g. for using UART2 on Apalis T30 as follows: setenv setup 'setenv setupargs gpt gpt_sector=${gptoffset} igb_mac= ${ethaddr} no_console_suspend=1 console=tty1 console=ttyS0,${baudrate}n 8 debug_uartport=lsport,3 ${memargs} fbcon=map:1'
2013-10-22apalis_t30: fix linux otg behaviour by not enabling its powerColibri_T30_LinuxImageV2.1Beta1_20131022Colibri_T20_LinuxImageV2.1Beta1_20131022Apalis_T30_LinuxImageV2.1Beta1_20131022Marcel Ziswiler
Fix Linux USB OTG1 behaviour by not enabling USBO1_EN during boot as USB host functionality on OTG1 port is anyway broken under U-Boot. Enabling USBO1_EN fed back via USBO1_VBUS sensing and caused the OTG state machine to get a bogus peripheral state change rather than staying in suspend which failed subsequent host activation. This was especially bad on Ixora where by default the OTG1 port is jumpered for shared host port functionality.
2013-10-22apalis/colibri_t20/30: fix further issue in HCD conversionMarcel Ziswiler
Fix possible uninitialised array member issue in serial number to hexadecimal coded decimal conversion routine.
2013-08-12apalis/colibri_t30: implement emmc pt offset auto detectionMarcel Ziswiler
In preparation for the new Apalis T30 SKUs implement eMMC PT offset auto detection. The PT offset has been calculated from the .cfg eMMC partition configuration file using virtual linearised addressing across all eMMC regions as expected by nvflash. Due to the lack of a region control mechanism in nvflash/.cfg flashing utility in order to obtain the actual PT offset from the start of the user region the size of the boot regions must be subtracted. An eMMC device is specified to have 0 or 2 boot regions and they must have the same size ranging from 0 to 2 MiB. The boot region size can be queried from the device through the BOOT_SIZE_MULT field of the response to the EXT_CSD command sequence. Tested on initial samples of Apalis T30 1GB V1.0A, Apalis T30 2GB V1.0B, Apalis T30 2GB V1.0C and Colibri T30 V1.1C.
2013-08-12apalis/colibri_t30: implement memory size auto detectionMarcel Ziswiler
In preparation for the new Apalis T30 SKUs implement memory size auto detection based on reading the aperture register set by boot ROM from BCT and a simple mirroring detection. Tested on initial samples of Apalis T30 1GB V1.0A, Apalis T30 2GB V1.0B, Apalis T30 2GB V1.0C and Colibri T30 V1.1C.
2013-05-28apalis/colibri_t20/30: fix overflow in HCD conversionT30_LinuxImageV2.0Beta2_20130626Apalis_T30_LinuxImageV2.0Beta1_20130626Marcel Ziswiler
Fix possible overflow condition in serial number to hexadecimal coded decimal conversion routine.
2013-05-09apalis_t30: initial integrationMarcel Ziswiler
Add initial Apalis T30 support based off our current Colibri T30 implementation: - Updated machine ID. - USB host USBH2 and USBH3 support. Note: USBO1 support is currently broken. - Updated MMC and SD card support. - Adjusted available amount of memory.
2013-05-01colibri_t30: emmc: change offset handlingMarcel Ziswiler
Rather than relying on hard-coded offsets actually make use of partition table parsing implementation.
2013-05-01colibri_t20/30: mmc: integrate NVIDIA partition table parsingMarcel Ziswiler
NVIDIA's MMC/SD layout includes a partition table that can be used to generically determine U-Boot environment, kernel, configuration block as well as GPT offsets. As an added benefit this is completely independent of the underlying MMC/SD card used which might differ with various future module versions or particularly cards used for T20 SD boot. Also handles the case of T20 SD boot where the configuration block is still taken from NAND flash while the rest resides on the SD card. Initial partition table parsing courtesy of Mitja Špes from LXNAV.
2013-04-27colibri_t20: nand: fix compat string lengthDaniel Glöckner
There was no space for the null byte. In our case it led to the lowest byte of the pointer mtd used by nand_init_chip being cleared, which made the system crash when it tried to call mtd->priv->select_chip. Signed-off-by: Daniel Glöckner <dg@emlix.com>
2013-01-11colibri_t30: fix MMC/SD card detect GPIOT30_LinuxImageV2.0Beta1_20130314T30_LinuxImageV2.0Alpha1_20130122T20_LinuxImageV2.0_20130305T20_LinuxImageV2.0Beta2_20130129Apalis_T30_LinuxImageV2.0Alpha1_20130315Marcel Ziswiler
The Colibri T30 V1.1 modules actually use a different card detect GPIO.
2013-01-11colibri_t30: migrate to proper machine typeMarcel Ziswiler
After having registered the following proper machine type migrate to actually using it. http://www.arm.linux.org.uk/developer/machines/list.php?id=4493 While at it clean-out some obsolete Cardhu specific device-tree nodes resp. properties and clean-up the mach-types header file as well.
2012-12-19toradex: common: clean-up board fileMarcel Ziswiler
This is a purely cosmetic clean-up of the common Toradex board file.
2012-12-13colibri_t20: add optional 800x480 timingMarcel Ziswiler
Add optional aka commented out 800x480@60 timing suitable for EDT ET070080DH6.
2012-12-04colibri_t30: USB: fix Ethernet detection faultMarcel Ziswiler
Turns out our simplistic approach of just blindly enabling LAN_V_BUS and releasing LAN_RESET_N does not prove very reliable. Properly resetting the chip for 5 microseconds after VBUS is stable just like we do on the Colibri T20 seems to fix the issue.
2012-12-04colibri_t20/colibri_t30: device tree compatibility matchingMarcel Ziswiler
Include "colibri_" prefix in our board compatibility tables in preparation to properly distinguish future e.g. Apalis modules. While at it bring the device tree matching more in par with Linux kernel 3.1.10 from NVIDIA's L4T R16-R2.
2012-11-28T30:Max Krummenacher
- board.c: changes required by different PMIC variant
2012-11-28T30: - exclude T20 RAM sizeMax Krummenacher
2012-11-09colibri_t20: USB: fix Ethernet detection faultMarcel Ziswiler
Turns out we completely missed properly resetting the ASIX USB to FastEthernet chip which from time-to-time on certain modules caused severe Ethernet detection faults only a complete hardware reset or power-cycle could eliminate. Properly resetting the chip for 5 microseconds after VBUS is stable seems to fix the issue.
2012-10-31colibri_t20: nand: fix NVIDIA partition table parsingMarcel Ziswiler
If the USR partition we usually mount as root file system could not be found which is e.g. the case for Android make sure mtdparts does not start with a spurious coma separator the kernel would interpret as an empty partition entry.
2012-10-30Merge branch 'chromeos-v2011.06' into colibriMarcel Ziswiler
Conflicts: arch/arm/cpu/armv7/tegra3/warmboot_avp.c arch/arm/include/asm/arch-tegra/clk_rst.h
2012-10-24colibri_t30: fix buildMarcel Ziswiler
Fix build issues introduced with NVIDIA partition table parsing integration.
2012-10-18colibri_t20: fix SD bootT20_LinuxImageV2.0Alpha2_20121019Marcel Ziswiler
If booting from SD card BCT contains information specific to SD card partition layout which is bogus if used for NAND partition parsing. Simply fall back to default offset just like in recovery BCT case. Note: in the future we could parse SD partition table as well to more generically support SD booting from various card densities.
2012-10-18colibri_t20: nand: change offset handlingMarcel Ziswiler
Rather than relying on hard-coded offsets actually make use of partition table parsing implementation.
2012-10-18colibri_t20: nand: integrate NVIDIA partition table parsingMarcel Ziswiler
NVIDIA's NAND layout includes a partition table that can be used to generically construct the mtdparts kernel boot argument. As an added benefit this is completely independent of the underlying NAND part used which differs with various module versions. It further allows our customer easy adoption to their own custom partition layout. Initial partition table parsing courtesy of Mitja Špes from LXNAV.
2012-09-26colibri_t20: activate backlight gpioMarcel Ziswiler
Activate BL_ON backlight GPIO PT4 on SODIMM pin 71. While at it add commented out XGA 1024x768 display timing values as well.
2012-08-22Initial Toradex Colibri T20 L4T R15 support.T20_LinuxImageV2.0Alpha1_20120808Marcel Ziswiler
2012-07-18tegra: fdt: Change load entry to 0x1080000Jimmy Zhang
Change tegra2's entry address to its default address 0x108000. BUG=none TEST=flashed with local built u-boot. Kernel boots up fine. Change-Id: I6ff4ed1f2901df73b21d033fbd191550108e96b5 Signed-off-by: Jimmy Zhang <jimmzhang@nvidia.com> Reviewed-on: https://gerrit.chromium.org/gerrit/22171 Reviewed-by: Simon Glass <sjg@chromium.org>
2012-04-25Provide alternative config for netbootingVadim Bendebury
This change allows to build a customized u-boot image, which includes networking capabilities, provides diagnostic commands and supports command line editing. These features are necessary to facilitate the factory flow. This image needs to be clearly distinguishable by ChromeOS. This is achieved by modifying the value presented by the BINF.3 ACPI object. To build this modified image one needs to add BUILD_FACTORY_IMAGE=1 to the make invocation line. BUG=chrome-os-partner:7952 TEST=manual . build the new firmware image as follows: USE='pcserial factory-mode' emerge-link chromeos-u-boot \ chromeos-coreboot chromeos-bootimage . program the new image on the Link target with ChromeOS installed on the SSD and restart it . observe the target stop at u-boot command prompt (boot >) . connect the target to an Ethernet network with a DHCP server using a USB Ethernet dongle . run the following commands at the u-boot prompt boot > usb start (Re)start USB... USB: Register 203007 NbrPorts 7 USB EHCI 1.00 Register 20400b NbrPorts 11 USB EHCI 1.00 8 USB Device(s) found scanning bus for storage devices... 0 Storage Device(s) found scanning bus for ethernet devices... 1 Ethernet Device(s) found boot > dhcp Waiting for Ethernet connection... done. BOOTP broadcast 1 BOOTP broadcast 2 [a few warnings of unsupported DHCP options] DHCP client bound to address 172.22.75.25 Using asx0 device TFTP from server 172.16.255.7; our IP address is 172.22.75.25; sending through gateway 172.22.75.254 Filename 'pxelinux.0'. Load address: 0x100000 Loading: ## done Bytes transferred = 15840 (3de0 hex) boot > . start ChromeOS on the target by issuing vboot_twostop . once ChromeOS boots check the mainfw_type crossystem reported value localhost ~ # echo $(crossystem mainfw_type) netboot localhost ~ # Change-Id: I1c50517754b6b5f773e432b9adec4b290f303e6f Signed-off-by: Vadim Bendebury <vbendeb@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/21071 Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
2012-03-21Increase size of MRC cache on LinkStefan Reinauer
Link's MRC produces significantly more training data than the one used on Stumpy/Lumpy. Signed-off-by: Stefan Reinauer <reinauer@chromium.org> BUG=none TEST=boot tested on Link Change-Id: I9310c3bcc77fb4318db0635b97b115ab0eb7e5ec Reviewed-on: https://gerrit.chromium.org/gerrit/18748 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
2012-03-19x86: Make RW unused section labels uniqueDuncan Laurie
BUG=none TEST=check fmap on generated binary for unique names Change-Id: Id1ac5cf223ec6a333fc8f4c587e972afd087f90d Signed-off-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/18435 Reviewed-by: Stefan Reinauer <reinauer@google.com>
2012-03-16Reduce RW BIOS data sections to 512K from 976KDuncan Laurie
This saves 500ms in the RW BIOS path and still leaves 130K overhead from the current U-boot size (372K) which should be more than enough for any future updates on stumpy/lumpy. This should be re-visited if/when vboot is smart enough to just read+validate the actual binary within the section. BUG=chrome-os-partner:8518 TEST=boot lumpy/stumpy through RW BIOS path and gather timestamps to see 500ms improvement. Change-Id: Ia714b4b95245f02f6e781247f820ca915bb403f5 Signed-off-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/18372 Reviewed-by: Stefan Reinauer <reinauer@google.com>
2012-03-15Use keyboard controller for hard reset instead of CF9Vadim Bendebury
For some still unknown reason writes to localtion 0xcf9 do not cause the Link to reboot, they cause it to shut down instead. While this will have to be investigated and fixed, this change modifies the code to use the keyboard controller (implemented by the EC on Link) to restart the system. Once the 0xcf9 problem is resolved, this change could be reverted. BUG=chrome-os-partner:8397 TEST=manual . when u-boot tires restarting the system it now reboots. before this change it would just shut down. Change-Id: I8076f897304f705e20ec8f2e30cce17d7fdd31c4 Signed-off-by: Vadim Bendebury <vbendeb@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/18332 Reviewed-by: Hung-Te Lin <hungte@chromium.org>
2012-03-15arm: Tegra3: pass board id through the dts filesVarun Wadekar
BUG=chromium-os:23496 TEST=build on Waluigi, Seaboard, Cardhu Change-Id: I9ccd3085fb551e9887815592e9b518b6944beda7 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: https://gerrit.chromium.org/gerrit/14474 Reviewed-by: Simon Glass <sjg@chromium.org>
2012-03-13x86: Add an emeraldlake2 device treeGabe Black
BUG=chrome-os-partner:8180 TEST=Built u-boot for emeraldlake2. Change-Id: Iae62f047ddc102fbf530e1f8f9af34939971a6a3 Signed-off-by: Gabe Black <gabeblack@google.com> Reviewed-on: https://gerrit.chromium.org/gerrit/18057 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Stefan Reinauer <reinauer@google.com> Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
2012-03-08tegra: Remove keyboard support from fdtSimon Glass
This uses a format which is not supported by the upstream dtc, so remove this. BUG=chromium-os:23249 TEST=emerge-tegra2_kaen chromeos-u-boot with new dtc Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I18b9420dbee20c2d115cc5ff1b13425faffe2a3e Reviewed-on: https://gerrit.chromium.org/gerrit/17630
2012-02-28Don't ever return from cold_reboot() functionStefan Reinauer
cold_reboot() should wait until the reset kicks in, instead of returning and continuing in an undefined code path. Without this patch, vboot_twostop will return, and secure_boot() will start printing an error message, which results in a sporadic # on the screen when pressing space or ESC on the dev screen in order to go to recovery mode. BUG=chrome-os-partner:7683 TEST=boot to dev screen on lumpy, press ESC or space. Observe there is no # character printed before going to recovery mode. Signed-off-by: Stefan Reinauer <reinauer@google.com> Change-Id: Ic2ee570032686e48603f0fb3b1ec9cbfae9451bc Reviewed-on: https://gerrit.chromium.org/gerrit/17007 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Commit-Ready: Stefan Reinauer <reinauer@chromium.org>
2012-02-27Add flag fast-developer-mode to make default developer mode time on x86 2sStefan Reinauer
This will trigger setting gbb.flags to 1 in cros_bundle_firmware so the factory time is reduced. GBB.flags will be changed in the factory process. Also needs https://gerrit.chromium.org/gerrit/#change,16845 BUG=chrome-os-partner:7671 TEST=manual emerge-stumpy chromeos-bootimage gbb_utility -g --flags /build/stumpy/firmware/image.bin Should report "flags: 0x00000001" Signed-off-by: Stefan Reinauer <reinauer@google.com> Change-Id: Ie05433ad737005bd5dcca2f88232b0a5bbd00df9 Reviewed-on: https://gerrit.chromium.org/gerrit/16113 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Commit-Ready: Stefan Reinauer <reinauer@chromium.org>
2012-02-14arm: tegra2: split LP0 code to help future chipsVarun Wadekar
split the LP0 code for tegra2 into common LP0 code and chip specific warm boot code BUG=chromium-os:23496 TEST=build for Seaboard Change-Id: Ie04bf9ac17482a37afd0f4515dc3aafeb4f48ae7 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: https://gerrit.chromium.org/gerrit/15883
2012-02-08Revert "arm: tegra2: split LP0 code to help future chips"Brian Harring
This reverts commit 4c7502242627f64d91432cb4958be5f93f65fbff Don't think this is the cause of http://code.google.com/p/chromium-os/issues/detail?id=26116, but it was in the same batch so I'm reverting in the process. Change-Id: Icc013ced6c22e29d569ee4ca8ef73522154ec1a8 Reviewed-on: https://gerrit.chromium.org/gerrit/15561 Reviewed-by: Brian Harring <ferringb@chromium.org> Tested-by: Brian Harring <ferringb@chromium.org>
2012-02-08arm: tegra2: split LP0 code to help future chipsVarun Wadekar
split the LP0 code for tegra2 into common LP0 code and chip specific warm boot code BUG=chromium-os:23496 TEST=build for Seaboard Change-Id: Id9756c08f61502affa8beee636d883d01468e6ec Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: https://gerrit.chromium.org/gerrit/13799
2012-02-07tegra3: fdt: change lcd frame buffer addressPuneet Saxena
For Waluigi, existing frame buffer address does not fall under external memory map. Setting it to the location set as per the default initialization. BUG=chromium-os:23496 TEST=Build ok for Cardhu, Waluigi and Seaboard. Tested on Waluigi. Change-Id: I2284d43c11f4d6622344429508b1f99e30929f19 Signed-off-by: Puneet Saxena <puneets@nvidia.com> Reviewed-on: https://gerrit.chromium.org/gerrit/14698
2012-02-07tegra: Rename "CONFIG_VIDEO_TEGRA2" to "CONFIG_VIDEO_TEGRA"Puneet Saxena
Enables common LCD support for Tegra2 and Tegra3 BUG=chromium-os:23496 TEST=Built ok for Cardhu, Waluigi and Seaboard. Change-Id: I938824045440cc4964c2ac6bf727a90ee5f129b4 Signed-off-by: Puneet Saxena <puneets@nvidia.com> Reviewed-on: https://gerrit.chromium.org/gerrit/14692
2012-02-06tegra3: fdt: Add Waluigi keyboard mapPuneet Saxena
Add Waluigi keyboard map in Waluigi fdt BUG=chromium-os:23496 TEST=Build and tested on Waluigi. Change-Id: Iaf39dabc2bef2f12c2f0b875cc3c397386dbb446 Signed-off-by: Puneet Saxena <puneets@nvidia.com> Reviewed-on: https://gerrit.chromium.org/gerrit/13929 Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>
2012-02-06tegra3: fdt: Add Tegra30 keyboard controller definitionPuneet Saxena
Add Keyboard controller option in tegra30 fdt. BUG=chromium-os:23496 TEST=Build ok for Waluigi, Seaboard and Cardhu. Change-Id: I20fe7feed42a96edea138dc32c532e0d1d535226 Signed-off-by: Puneet Saxena <puneets@nvidia.com> Reviewed-on: https://gerrit.chromium.org/gerrit/14546 Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mayuresh Kulkarni <mkulkarni@nvidia.com> Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>
2012-02-06tegra: change Keyboard config namePuneet Saxena
Rename CONFIG_TEGRA2_KEYBOARD to common CONFIG_TEGRA_KEYBOARD BUG=chromium-os:23496 TEST=Build OK for Waluigi, Cardhu and Seaboard. Change-Id: Ice2741622fe6434ba25ece8fe7fbe2ca989c44ef Signed-off-by: Puneet Saxena <puneets@nvidia.com> Reviewed-on: https://gerrit.chromium.org/gerrit/13930 Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>