summaryrefslogtreecommitdiff
path: root/board/boundary/nitrogen6x/nitrogen6x.c
Commit message (Collapse)AuthorAgeLines
* nitrogen6x: Fix the error handling in board_eth_init()Fabio Estevam2015-09-13-8/+11
| | | | | | | | | | | We should not return 0 on failure, so return a negative error code instead. Also centralize the error path so that is easier to follow. Cc: Troy Kisky <troy.kisky@boundarydevices.com> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Acked-by: Troy Kisky <troy.kisky@boundarydevices.com>
* nitrogen6x: set environment variable reset_causeEric Nelson2015-02-17-0/+1
| | | | | Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com> Acked-by: Stefano Babic <sbabic@denx.de>
* nitrogen6x: Fix error handling in board_mmc_init()Fabio Estevam2014-11-24-4/+6
| | | | | | | | | When an invalid USDHC port is passed we should return -EINVAL instead of 0. Also, return the error immediately on fsl_esdhc_initialize() failure. Cc: Eric Nelson <eric.nelson@boundarydevices.com> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
* ARM: i.MX: provide declaration for board_spi_cs_gpioEric Nelson2014-10-21-0/+1
| | | | | | | | Provide a public declaration of the board_spi_cs_gpio() callback for i.MX SPI chip selects to prevent the warning "Should it be static?" when compiling with "make C=1". Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
* Merge remote-tracking branch 'u-boot-imx/master'Albert ARIBAUD2014-10-08-31/+261
|\ | | | | | | | | | | | | The single file conflict below is actually trivial. Conflicts: board/boundary/nitrogen6x/nitrogen6x.c
| * nitrogen6x: display use I2C detect for HDMIEric Nelson2014-10-06-3/+3
| | | | | | | | | | | | | | | | | | | | The HPD pin and RX_SENSE registers have proven to be less reliable than using I2C on the EDID pins for detection of an HDMI monitor. In particular, when the HDMI output is reset through a "reboot" cycle, the detect_hdmi() routine often bounces, resulting in a failure to detect a connected monitor. Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: display: add wvga-lvds panelEric Nelson2014-10-06-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | Add support for WVGA (800x480) panels using VESA GTF timings over LVDS. No auto-detection is supported, so you must configure this panel manually through the 'panel' environment variable: U-Boot > setenv panel svga U-Boot > saveenv && reset Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: display: add Ampire 1024x600 panelEric Nelson2014-10-06-0/+20
| | | | | | | | | | | | | | | | | | Add support for an Ampire 1024x600 LVDS panel with integrated Ilitek capacitive touch screen. Auto-detection is enabled, so no explicit configuration is needed. Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: display: add svga display (800x600)Eric Nelson2014-10-06-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | Add support for 800x600 18-bit RGB displays using VESA GTF timings. No auto-detection is supported, so you must configure this panel manually through the 'panel' environment variable: U-Boot > setenv panel svga U-Boot > saveenv && reset Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: display: add support for fusion 7 displayEric Nelson2014-10-06-0/+20
| | | | | | | | | | | | | | | | | | | | Add support for the Touch Revolution Fusion7 display: 800x480 RGB with a custom F0710A resistive touch controller. Auto-detection of this panel is supported so no configuration is required. Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: display: add LDB-WXGA-S for SPWG 1280x800 displaysEric Nelson2014-10-06-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for LVDS WXGA displays that use the SPWG encoding standard instead of JEIDA. No auto-detection is enabled and you must explicitly set the 'panel' environment variable: U-Boot > setenv panel LDB-WXGA-S U-Boot > saveenv && reset Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: display: add support for LG-9.7 LVDS displayEric Nelson2014-10-06-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for LG 9.7" LVDS panel (1024x768) with integrated eGalax touch screen. Note that this panel differs only slightly from the Hannstar XGA panel (margins). No auto-detection is available because it shares the same touch controller as the Hannstar-XGA display, so you'll need to configure it through the 'panel' environment variable: U-Boot > setenv panel LG-9.7 U-Boot > saveenv && reset Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: display: add qvga panelEric Nelson2014-10-06-0/+20
| | | | | | | | | | | | | | | | | | | | | | Add support for a 1/4 VGA panel with a 24-bit RGB interface. No auto-detection is enabled, so you must configure the 'panel' environment variable to use this display: U-Boot > setenv panel qvga U-Boot > saveenv && reset Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: display: add support lvds jeida screenRobert Winkler2014-10-06-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for Boundary Devices 7" and 10.1" 1280x800 displays with integrated FocalTech ft5x06 10-point touch controller. Because they share the touch controller with the 1024x600 displays, auto-detection is disabled and you must explicitly set the 'panel' environment variable: U-Boot > setenv panel LDB-WXGA U-Boot > saveenv && reset Signed-off-by: Robert Winkler <robert.winkler@boundarydevices.com> Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: prevent warnings about board_ehci* callbacksEric Nelson2014-10-06-0/+1
| | | | | | | | | | | | | | Include declarations of board_ehci callbacks to prevent compiler warnings and enforce function prototypes. Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: phy: add 100 us delay after phy resetTroy Kisky2014-10-06-0/+1
| | | | | | | | | | | | | | | | Testing shows that the Micrel PHY may not be completely out of reset if accessed immediately. Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com> Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: staticize board fileEric Nelson2014-10-06-14/+16
| | | | | | | | | | | | | | | | Declare locally-used data structures and functions as static and pull in header files to prevent compiler warnings of "Should it be static?" when building with "make C=1". Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: configure SGTL5000, CSI camera clock outputsTroy Kisky2014-10-06-1/+7
| | | | | | | | | | | | | | | | | | | | Configure CLKO outputs for SGTL5000, CSI camera. The sys_mclk output for the SGTL500 in particular prevents Windows CE from properly driving audio. Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com> Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: power-down miscellanous peripheralsEric Nelson2014-10-06-4/+43
| | | | | | | | | | | | | | | | Ensure that cameras and USB OTG power are in a stable (reset) state at reset by configuring their pads and toggling GPIOs. Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com> Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: configure SD2 pads for SDIO on USDHC2Eric Nelson2014-10-06-0/+11
| | | | | | | | | | | | | | | | | | | | Pads SD2_CLK/CMD/DAT0-3 are connected to an SDIO WiFi device on Nitrogen and unconnected on BD-SL-i.MX6 (sabre lite). Configure them as SDIO pins to prevent them from being in a state that confuses the WiFi part. Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
| * nitrogen6x: simplify board_mmc_getcdTroy Kisky2014-10-06-10/+4
| | | | | | | | | | | | | | The same logic applies to both SD card slots, only with different GPIOs and the code should make that easier to see. Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
| * nitrogen6x: implement board_cfb_skip() to disable text outputEric Nelson2014-10-06-0/+5
| | | | | | | | | | | | | | | | Several customers have asked to leave the display quiet during boot, so allow the user to express this request by the presence of environment variable "novideo". Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
* | spi: mxc: fix sf probe when using mxc_spiNikita Kiryanov2014-09-24-0/+5
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MXC SPI driver has a feature whereas a GPIO line can be used to force CS high across multiple transactions. This is set up by embedding the GPIO information in the CS value: cs = (cs | gpio << 8) This merge of cs and gpio data into one value breaks the sf probe command: if the use of gpio is required, invoking "sf probe <cs>" will not work, because the CS argument doesn't have the GPIO information in it. Instead, the user must use "sf probe <cs | gpio << 8>". For example, if bank 2 gpio 30 is used to force cs high on cs 0, bus 0, then instead of typing "sf probe 0" the user now must type "sf probe 15872". This is inconsistent with the description of the sf probe command, and forces the user to be aware of implementaiton details. Fix this by introducing a new board function: board_spi_cs_gpio(), which will accept a naked CS value, and provide the driver with the relevant GPIO, if one is necessary. Cc: Eric Nelson <eric.nelson@boundarydevices.com> Cc: Eric Benard <eric@eukrea.com> Cc: Fabio Estevam <fabio.estevam@freescale.com> Cc: Tim Harvey <tharvey@gateworks.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Tom Rini <trini@ti.com> Cc: Marek Vasut <marex@denx.de> Reviewed-by: Marek Vasut <marex@denx.de> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il> Reviewed-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
* mx6: Remove duplication of iomuxc structureFabio Estevam2014-07-23-2/+1
| | | | | | | | | | | | | | | There is no need to keep iomuxc_base_regs structure as it serves the exact same purpose of the iomuxc structure, which is to provide access to the GPR registers. The additional fields of iomuxc_base_regs are not used. Other advantage of 'iomuxc' is that it has a shorter name and the variable declarations can fit into a single line. So remove iomuxc_base_regs structure and use iomuxc instead. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Acked-by: Stefano Babic <sbabic@denx.de>
* nitrogen6x: Fix the PAD settings for the ECSPI chipselectFabio Estevam2014-04-28-1/+1
| | | | | | | | | ECSPI chipselect (MX6_PAD_EIM_D19__GPIO3_IO19) is used with GPIO functionality, so it does not make sense to set its pad as SPI pin. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Tested-by: Eric Nelson <eric.nelson@boundarydevices.com> Acked-by: Eric Nelson <eric.nelson@boundarydevices.com>
* nitrogen6x: use common detect_hdmiEric Benard2014-04-15-6/+0
| | | | Signed-off-by: Eric Bénard <eric@eukrea.com>
* nitrogen6x: use common board_video_skipEric Benard2014-04-15-58/+3
| | | | | Signed-off-by: Eric Bénard <eric@eukrea.com> Acked-by: Eric Nelson <eric.nelson@boundarydevices.com>
* usb: mv_udc: Rename to ci_udcMarek Vasut2014-02-06-1/+1
| | | | | | | | | | The mv_udc is not marvell-specific anymore. The mv_udc is used to drive generic ChipIdea CI13xxx series OTG cores, so rename the driver to ci_udc instead. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Eric Nelson <eric.nelson@boundarydevices.com> Cc: Stefano Babic <sbabic@denx.de>
* nitrogen6x: Move setup_sata to common partGiuseppe Pagano2013-12-17-26/+1
| | | | | | | | | | Move setup_sata function definition from platform file nitrogen6x.c to arch/arm/imx-common/sata.c to avoid code duplication. Signed-off-by: Giuseppe Pagano <giuseppe.pagano@seco.com> CC: Stefano Babic <sbabic@denx.de> CC: Fabio Estevam <fabio.estevam@freescale.com> CC: Eric Nelson <eric.nelson@boundarydevices.com>
* i.MX6DQ/DLS: replace pad names with their Linux kernel equivalentsEric Nelson2013-11-13-85/+85
| | | | Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
* nitrogen6x: add otg usb host/device mode supportTroy Kisky2013-10-20-0/+26
| | | | Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
* mx6: iomux: add GPR1 defines for use with nitrogen6xTroy Kisky2013-10-20-0/+7
| | | | | | Select GPIO1 as the USB OTG ID pin for Nitrogen6x Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
* Coding Style cleanup: remove trailing white spaceWolfgang Denk2013-10-14-1/+1
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* imx: nitrogen6x/mx6qsabrelite: Fix bug in board_video_skipRobert Winkler2013-09-10-1/+3
| | | | Signed-off-by: Robert Winkler <robert.winkler@boundarydevices.com>
* i.MX6: nitrogen6x: Don't bother setting PLL3(480) PFD1 divisorEric Nelson2013-08-31-5/+0
| | | | | | | This clock isn't feeding anything under U-Boot, so there's no point in changing it from power-on default. Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
* i.MX6: nitrogen6x: force HDMI onto IPU0/DI0Eric Nelson2013-08-21-1/+2
| | | | | | | | | | | | Our Linux kernel switches the HDMI connector onto IPU0/DI1, but the U-Boot display driver only supports IPU0/DI0 for the time being. Because of this, a soft re-boot will leave the HDMI output connected to the wrong display port and prevent video from being displayed. Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
* Merge git://git.denx.de/u-boot-armStefano Babic2013-07-31-17/+1
|\ | | | | | | | | | | | | | | | | Conflicts: board/freescale/mx6qsabrelite/Makefile board/freescale/mx6qsabrelite/mx6qsabrelite.c include/configs/mx6qsabrelite.h Signed-off-by: Stefano Babic <sbabic@denx.de>
| * Add GPL-2.0+ SPDX-License-Identifier to source filesWolfgang Denk2013-07-24-17/+1
| | | | | | | | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de> [trini: Fixup common/cmd_io.c] Signed-off-by: Tom Rini <trini@ti.com>
* | imx: nitrogen6x: mx6qsabrelite: Add support for DVI monitorsRobert Winkler2013-07-27-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A little background is probably appropriate for this patch. Since "the beginning" of usage of the SABRE Lite and Nitrogen6x boards, DVI detection has been somewhat broken. Some (most) DVI monitors don't produce the "HPD" bit in the PHY_STAT0 register, but do show proper toggling of the RX_SENSE0..3 bits. Creating a new the bit-mask to include all five bits and modifying the 'hdmidet' command and internal detection routines allows these monitors to function properly in U-Boot. A related patch to our kernels allows things to work under Linux: https://github.com/boundarydevices/linux-imx6/commit/7d8752905c118af9063738a533227de0b2f6ecd4 Signed-off-by: Robert Winkler <robert.winkler@boundarydevices.com> Acked-by: Stefano Babic <sbabic@denx.de>
* | mx6: Factor out common HDMI setup codePardeep Kumar Singla2013-07-27-37/+7
|/ | | | | | | Instead of duplicating HDMI setup code for every mx6 board, factor out the common code Signed-off-by: Pardeep Kumar Singla <b45784@freescale.com> Acked-By: Eric Nelson <eric.nelson@boundarydevices.com>
* mx6: mx6qsabrelite/nitrogen6x: Remove incorrect setting of gpio CS signalAndrew Gabbasov2013-06-03-1/+0
| | | | | | | | | | | | | | | | | The number of gpio signal is packed inside CONFIG_SF_DEFAULT_CS macro (shifted and or'ed with chip select), so it's incorrect to pass that macro directly as an argument to gpio_direction_output() call. Also, SPI driver sets the direction and initial value of a gpio, used as a chip select signal, before any actual activity happens on the bus. So, it is safe to just remove the gpio_direction_output call, that works incorrectly, thus making no effect, anyway. Signed-off-by: Andrew Gabbasov <andrew_gabbasov@mentor.com> Tested-by: Robert Winkler <robert.winkler@boundarydevices.com> Acked-by: Dirk Behme <dirk.behme@de.bosch.com>
* imx: iomux-v3: Include PKE and PUE to pad control pull definitionsBenoît Thébaudeau2013-04-28-24/+18
| | | | | | | | | | | | | | | | | PUE requires PKE to mean something, as do pull values with PUE, so do not compell users to explicitly use PKE and PUE everywhere. This is also what is done on Linux and what has already been done for i.MX51. By the way, remove some unused pad control definitions. There is no change of behavior. Note that SPI_PAD_CTRL was defined by several boards with a pull value, but without PKE or PUE, which means that no pull was actually enabled in the pad. This might be a bug in those boards, but this patch does not change the behavior, so it just removes the meaningless pull value from those definitions. Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
* mx6: Fix get_board_rev() for the mx6 solo caseFabio Estevam2013-04-03-5/+0
| | | | | | | | | | | | | | | | | | When booting a Freescale kernel 3.0.35 on a Wandboard solo, the get_board_rev() returns 0x62xxx, which is not a value understood by the VPU (Video Processing Unit) library in the kernel and causes the video playback to fail. The expected values for get_board_rev are: 0x63xxx: For mx6quad/dual 0x61xxx: For mx6dual-lite/solo So adjust get_board_rev() accordingly and make it as weak function, so that we do not need to define it in every mx6 board file. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Acked-by: Dirk Behme <dirk.behme@de.bosch.com> Acked-by: Eric Nelson <eric.nelson@boundarydevices.com>
* mmc: i.MX6: fsl_esdhc: Define maximum bus width supported by a boardAbbas Raza2013-04-03-0/+3
| | | | | | | | | | | | | | | | | | Maximum bus width supported by some i.MX6 boards is not 8bit like others. In case where both host controller and card support 8bit transfers, they agree to communicate on 8bit interface while some boards support only 4bit interface. Due to this reason the mmc 8bit default mode fails on these boards. To rectify this, define maximum bus width supported by these boards (4bit). If max_bus_width is not defined, it is 0 by default and 8bit width support will be enabled in host capabilities otherwise host capabilities are modified accordingly. It is tested with a MMCplus card. Signed-off-by: Abbas Raza <Abbas_Raza@mentor.com> cc: stefano Babic <sbabic@denx.de> cc: Andy Fleming <afleming@gmail.com> Acked-by: Dirk Behme <dirk.behme@de.bosch.com> Acked-by: Andrew Gabbasov <andrew_gabbasov@mentor.com>
* nitrogen: Use unsigned long to specify the total RAM sizefabio.estevam@freescale.com2013-03-15-1/+1
| | | | | | | | | | | When building for the nitrogen boards with 2GiB the following warning happens: nitrogen6x.c:89:38: warning: integer overflow in expression [-Woverflow] 2GiB can not fit in 32-bits, so use ulong instead. Reported-by: Albert Aribaud <albert.u.boot@aribaud.net> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
* Add Boundary Devices Nitrogen6X boardsEric Nelson2013-03-13-0/+895
Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>