01 Jan, 2019
2 commits
-
board/ge/mx53ppd/mx53ppd.c: In function 'board_late_init':
board/ge/mx53ppd/mx53ppd.c:359:23: error: passing argument 2 of 'read_vpd' from incompatible pointer type [-Werror=incompatible-pointer-types]
res = read_vpd(&vpd, vpd_callback);
^~~~~~~~~~~~
In file included from board/ge/mx53ppd/mx53ppd.c:37:0:
board/ge/mx53ppd/../../ge/common/vpd_reader.h:19:5: note: expected 'int (*)(struct vpd_cache *, u8, u8, u8, size_t, const u8 *) {aka int (*)(struct vpd_cache *, unsigned char, unsigned char, unsigned char, unsigned int, const unsigned char *)}' but argument is of type 'int (*)(void *, u8, u8, u8, size_t, const u8 *) {aka int (*)(void *, unsigned char, unsigned char, unsigned char, unsigned int, const unsigned char *)}'
int read_vpd(struct vpd_cache *cache,
^~~~~~~~
cc1: all warnings being treated as errorsSigned-off-by: Peng Fan
Acked-by: Stefano Babic -
Merge functionality duplicated in bx50v3 and mx53ppd: the logic
is the same except that process_vpd is called at different phases.
Also read_vpd could end up in error, so there is no VPD data in this
case - it shouldn't be processed.Signed-off-by: Denis Zalevskiy
Signed-off-by: Fabien Lahoudere
17 Dec, 2018
2 commits
-
Use standard configuration logic to define EEPROM constants.
Names are based on VPD_EEPROM_ prefix because EEPROM_ is already
used by i2c_eeprom driver.Signed-off-by: Denis Zalevskiy
Signed-off-by: Fabien Lahoudere -
The bus is statically defined, so remove redundant parameters
from read_vpd() for PPD and Bx50v3.Signed-off-by: Denis Zalevskiy
Signed-off-by: Fabien Lahoudere
22 Oct, 2018
4 commits
-
I2C bus 0 was not initialized correctly. There is an offset between i2c
index and the structure number of pad info. So i2c bus 0 can be in an
inconsistent state.This problem become visible on B{4,6}50v3 with the CPUC HW watchdog enabled.
Sometimes when the CPUC HW watchdog interrupted the boot process, U-Boot was
not able to read VPD from I2C/EEPROM and the system failed to boot up again,
because a device connected to that bus was stuck in data transfer state (from
previous boot attempt) and there was no method to recover (struct
mxc_i2c_bus::idle_bus_fn was not set) courtesy of incorrect initialization.Signed-off-by: Dan Cimpoca
Signed-off-by: Fabien Lahoudere -
The b{4,6}50v3 kernel framebuffer console requires a modeline otherwise
the LVDS panel shows garbage.Signed-off-by: Ian Ray
Signed-off-by: Fabien Lahoudere -
Use Video PLL to provide 65MHz for all displays.
Signed-off-by: Ian Ray
Signed-off-by: Fabien Lahoudere -
While using ./scripts/get_maintainer.pl I detect that the Maintainer name
and address for bx50v3 boards are not valid.
The new maintainer for GE bx50v3 products must be Ian Ray.Signed-off-by: Fabien Lahoudere
27 Jun, 2018
1 commit
-
This fixes the warnings:
WARNING: no status info for 'ge_bx50v3'
WARNING: no maintainers for 'ge_bx50v3Signed-off-by: Stefano Babic
17 May, 2018
7 commits
-
This replaces TARGET_GE_B{4,6,8}50V3 with common TARGET_GE_BX50V3.
The boards are identified automatically at runtime.Signed-off-by: Ian Ray
Signed-off-by: Nandor Han
Signed-off-by: Sebastian Reichel -
Configure video arguments at run-time instead of at compile-time.
Signed-off-by: Ian Ray
Signed-off-by: Nandor Han
Signed-off-by: Sebastian Reichel -
B{46}50v3s have an internal LCD that needs to be configured,
in comparison with B850v3 which has only external displays.Use VPD instead of `CONFIG_TARGET_GE_B{4,6,8}50V3' compile-time
checks to correct initialize video based on the monitor type.Signed-off-by: Ian Ray
Signed-off-by: Nandor Han
Signed-off-by: Sebastian Reichel -
Move the VPD reading earlier in order to establish the monitor
type as soon as possible.The configuration of the specific environment variables needs to be
done later after the environment is configured.Signed-off-by: Nandor Han
Signed-off-by: Sebastian Reichel -
Enable Video PLL to fix non-working display support for Bx50v3
internal displays.Signed-off-by: Ian Ray
Signed-off-by: Nandor Han
Signed-off-by: Sebastian Reichel -
Simplify process_vpd() by unifying the switch statements handling
product specific configurations.Signed-off-by: Nandor Han
Signed-off-by: Sebastian Reichel -
The detect_baseboard() function actually determines whether there is an
internal LCD panel or not. Rename for clarity.Signed-off-by: Ian Ray
Signed-off-by: Nandor Han
Signed-off-by: Sebastian Reichel
07 May, 2018
1 commit
-
When U-Boot started using SPDX tags we were among the early adopters and
there weren't a lot of other examples to borrow from. So we picked the
area of the file that usually had a full license text and replaced it
with an appropriate SPDX-License-Identifier: entry. Since then, the
Linux Kernel has adopted SPDX tags and they place it as the very first
line in a file (except where shebangs are used, then it's second line)
and with slightly different comment styles than us.In part due to community overlap, in part due to better tag visibility
and in part for other minor reasons, switch over to that style.This commit changes all instances where we have a single declared
license in the tag as both the before and after are identical in tag
contents. There's also a few places where I found we did not have a tag
and have introduced one.Signed-off-by: Tom Rini
15 Apr, 2018
2 commits
-
Signed-off-by: Tom Rini
-
Enable display backlight only if a message needs to be displayed.
The kernel re-initializes the backlight, which results in some
unwanted artifacts.Signed-off-by: Ian Ray
Signed-off-by: Sebastian Reichel
09 Apr, 2018
1 commit
-
In order that we can use eth_env_* even when CONFIG_NET isn't set, move
these functions to environment code from net code.This fixes failures such as:
board/ti/am335x/built-in.o: In function `board_late_init':
board/ti/am335x/board.c:752: undefined reference to `eth_env_set_enetaddr'
u-boot/board/ti/am335x/board.c:766: undefined reference to `eth_env_set_enetaddr'which caters for use cases such as:
commit f411b5cca48f ("board: am335x: Always set eth/eth1addr environment
variable")when Ethernet is required in Linux, but not U-Boot.
Signed-off-by: Alex Kiernan
04 Feb, 2018
6 commits
-
Validate the time at startup:
- in case rtc error add to kernel command line RTC_ERROR
- clamp date to 1-Jan-2036Signed-off-by: Nandor Han
Signed-off-by: Martyn Welch
Signed-off-by: Sebastian Reichel -
Modify configuration to support FIT. Set variable `confidx' from VPD,
in order to load the correct device tree. Modify/simplify U-Boot
environment to support loading FIT image.Signed-off-by: Ian Ray
Signed-off-by: Martyn Welch
Signed-off-by: Sebastian Reichel -
Enable the hardware watchdog on bx50v3 to cause it to reset in the event
the board hangs.Configure GPIO_9 pin as WDOG1_B so that a watchdog timeout results in a
full system reset.The watchdog is used and reconfigured by systemd approximately 1.7 seconds
into boot. Adding a few seconds for U-Boot and a few more seconds as a
safety margin.Note that the PCIe controller is _not_ put back into a safe state prior
to board reset. This is a problem if board reset is implemented as CPU
reset.Signed-off-by: Ian Ray
Signed-off-by: Martyn Welch
Signed-off-by: Sebastian Reichel -
There are two I210s on the b850v3 and one on the b450v3 and b650v3.
One is connected to Marvell 88e6240 which is already programmed.Follow the flow documented in doc/README.enetaddr: set the
enet[0-9]*addr environment variable and let the driver program the
hardware.The mapping from the driver's index to the environment variable's name
is documented in README: Note for Redundant Ethernet Interfaces. It is
assumed that eth_devices for the controllers on the board are always
indexed in the same order.The environment variables are removed after programming the hardware
because the variables seem to influence MAC addresses also after U-Boot.
Specifically the MAC address of FEC (MC interface) would be incorrectly
set: 'ethaddr', which maps to the first I210 chip and is set to I210's
default address read from the driver by eth_write_hwaddr in eth_legacy.c
because the variable is undefined (not set even by bx50v3.c), would
result in the eth0 interface's MAC address to be set to I210's default
address.Signed-off-by: Hannu Lounento
Signed-off-by: Ian Ray
Signed-off-by: Martyn Welch
Signed-off-by: Sebastian Reichel -
Instead of programming the hardware directly in the board
implementation, follow the flow documented in doc/README.enetaddr: set
the enet[0-9]*addr environment variable and let the driver program the
hardware.This avoids duplicating the implementation as it already exists in the
driver (drivers/net/fec_mxc.c: fec_set_hwaddr).The mapping from the driver's index to the environment variable's name
is documented in README: Note for Redundant Ethernet Interfaces. It is
assumed that eth_devices for the controllers on the board are always
indexed in the same order, i.e. FEC always has the index 2.The FEC driver does *not* set the flag Set MAC Address on Transmit (bit
set_eth0_mac_address used to do but this is unnecessary as the Linux
networking stack fills in the MAC address.Signed-off-by: Hannu Lounento
Signed-off-by: Ian Ray
Signed-off-by: Martyn Welch
Signed-off-by: Sebastian Reichel -
The change in i2c configuration added to support access to the VPD has
inadvertantly caused access to i2c buses 1 & 2 to be lost. This has
resulted in the configuration for the PMIC to be attempted on the wrong
bus and thus isn't taking effect.Add the required configuration to return access to buses 1 & 2. In order
to ensure that any users of the bus numbering prior to addition in VPD
patches work, add buses before configuration related to mux on bus 0 and
tweak VPD bus usage to fit new numbering scheme.Signed-off-by: Martyn Welch
Signed-off-by: Sebastian Reichel
29 Dec, 2017
1 commit
-
We are going to be using check_time() on more than the mx53ppd, move this
function to a common location.Signed-off-by: Martyn Welch
20 Nov, 2017
2 commits
-
Create board support for GE PPD, based on mx53loco.
Use mx53ppd_defconfig make target to configure for this board.
Signed-off-by: Peter Senna Tschudin
Signed-off-by: Ian Ray
Signed-off-by: Nandor Han
Signed-off-by: Martyn Welch
Cc: Stefano Babic
Acked-by: Stefano Babic -
The VPD data is used on a number of GE products. Move the parsing code to
a common location so that we can share this code.Signed-off-by: Martyn Welch
Acked-by: Stefano Babic
12 Oct, 2017
1 commit
-
When building with W=1 errors like the one below is seen:
board/freescale/mx6sabresd/mx6sabresd.c:546:5: warning:
no previous prototype for ‘overwrite_console’
[-Wmissing-prototypes] int overwrite_console(void)Fix the build warnings by including .
Signed-off-by: Diego Dorta
Reviewed-by: Fabio Estevam
20 Sep, 2017
1 commit
-
Define i2c mux configuration. Add new vpd_reader which is used to read
vital product data. Read VPD from EEPROM and set eth0 MAC address.Signed-off-by: Ian Ray
Signed-off-by: Jose Alarcon
12 Jul, 2017
1 commit
-
Change is consistent with other SOCs and it is in preparation
for adding SOMs. SOC's related files are moved from cpu/ to
mach-imx/.This change is also coherent with the structure in kernel.
Signed-off-by: Stefano Babic
CC: Fabio Estevam
CC: Akshay Bhat
CC: Ken Lin
CC: Marek Vasut
CC: Heiko Schocher
CC: "Sébastien Szymanski"
CC: Christian Gmeiner
CC: Stefan Roese
CC: Patrick Bruenn
CC: Troy Kisky
CC: Nikita Kiryanov
CC: Otavio Salvador
CC: "Eric Bénard"
CC: Jagan Teki
CC: Ye Li
CC: Peng Fan
CC: Adrian Alonso
CC: Alison Wang
CC: Tim Harvey
CC: Martin Donnelly
CC: Marcin Niestroj
CC: Lukasz Majewski
CC: Adam Ford
CC: "Albert ARIBAUD (3ADEV)"
CC: Boris Brezillon
CC: Soeren Moch
CC: Richard Hu
CC: Wig Cheng
CC: Vanessa Maegima
CC: Max Krummenacher
CC: Stefan Agner
CC: Markus Niebel
CC: Breno Lima
CC: Francesco Montefoschi
CC: Jaehoon Chung
CC: Scott Wood
CC: Joe Hershberger
CC: Anatolij Gustschin
CC: Simon Glass
CC: "Andrew F. Davis"
CC: "Łukasz Majewski"
CC: Patrice Chotard
CC: Nobuhiro Iwamatsu
CC: Hans de Goede
CC: Masahiro Yamada
CC: Stephen Warren
CC: Andre Przywara
CC: "Álvaro Fernández Rojas"
CC: York Sun
CC: Xiaoliang Yang
CC: Chen-Yu Tsai
CC: George McCollister
CC: Sven Ebenfeld
CC: Filip Brozovic
CC: Petr Kulhavy
CC: Eric Nelson
CC: Bai Ping
CC: Anson Huang
CC: Sanchayan Maity
CC: Lokesh Vutla
CC: Patrick Delaunay
CC: Gary Bisson
CC: Alexander Graf
CC: u-boot@lists.denx.de
Reviewed-by: Fabio Estevam
Reviewed-by: Christian Gmeiner
26 Mar, 2017
2 commits
-
Apply the proper setting for the reserved bits in SetDes Test and System Mode Control register
to avoid the voltage peak issue while we do the IEEE PHY comformance testSigned-off-by: Ken Lin
Reviewed-by: Stefano Babic
Acked-by: Ian Ray -
Add the delay (10ms) to ensure the clock is stable and to meet the clock-to-reset(1ms) requirement recommended in the AR8033 datasheet
Signed-off-by: Ken Lin
Reviewed-by: Stefano Babic
Acked-by: Ian Ray
29 Nov, 2016
1 commit
-
Change the PMIC bulk configuration from auto mode to sync mode to avoid
voltage dropout issue seen in auto mode.Signed-off-by: Ken Lin
Signed-off-by: Akshay Bhat
24 Sep, 2016
1 commit
-
Now, arch/${ARCH}/include/asm/errno.h and include/linux/errno.h have
the same content. (both just wrap )Replace all include directives for with .
Signed-off-by: Masahiro Yamada
[trini: Fixup include/clk.]
Signed-off-by: Tom Rini
28 Jul, 2016
1 commit
-
imx_ddr_size() can be used to calculate the DDR size in runtime.
By using this function we no longer need to define PHYS_SDRAM_SIZE.
Cc: Martin Donnelly
Signed-off-by: Fabio Estevam
08 Jun, 2016
1 commit
-
Don't try to configure the backlight when CONFIG_VIDEO_IPUV3 isn't set.
Signed-off-by: Andrew Shadura
19 Apr, 2016
2 commits
-
On a reset/reboot, the display power needs to be off for atleast 500ms
before turning it back on. So add a delay to the boot process to meet
the display timing requirement.Signed-off-by: Akshay Bhat
Cc: Stefano Babic -
Setup the LCD backlight brightness control pin to use PWM
Signed-off-by: Akshay Bhat
Cc: Stefano Babic