summaryrefslogtreecommitdiff
path: root/board/ge/bx50v3
AgeCommit message (Collapse)Author
2024-07-22board: ge: Remove duplicate newlinesMarek Vasut
Drop all duplicate newlines. No functional change. Signed-off-by: Marek Vasut <[email protected]>
2024-02-19MAINTAINERS: Update after GEHC spin-offIan Ray
Update our email addresses, from @ge.com to @gehealthcare.com, after GE HealthCare was spun-off from GE. Remove Antti, who no longer works on the project. Signed-off-by: Ian Ray <[email protected]>
2023-08-31event: Use an event to replace last_stage_init()Simon Glass
Add a new event which handles this function. Convert existing use of the function to use the new event instead. Make sure that EVENT is enabled by affected boards, by selecting it from the LAST_STAGE_INIT option. For x86, enable it by default since all boards need it. For controlcenterdc, inline the get_tpm() function and make sure the event is not built in SPL. Signed-off-by: Simon Glass <[email protected]>
2022-04-01Remove CONFIG_BOARDNAME and CONFIG_BOARD_NAMETom Rini
Both of these variables are used in a few hard-coded ways to set some string values or print something to the user. In almost all cases, it's just as useful to hard-code the value used. The exception here is printing something closer to correct board name for p1_p2_rdb machines. This can be done using something from the device tree, but for now hard-code a non-CONFIG based value instead. Signed-off-by: Tom Rini <[email protected]>
2022-02-08imx: Don't define __ASSEMBLY__ in source filesSimon Glass
This is supposed to be a build-system flag. Move it there so we can define it before linux/kconfig.h is included. Signed-off-by: Simon Glass <[email protected]>
2021-09-27Merge tag 'v2021.10-rc5' into nextTom Rini
Prepare v2021.10-rc5
2021-09-24Taking over responsibility for GE boards from SebastianMartyn Welch
I am taking over responsibility for the GE board from Sebastian Reichel. Updating the MAINTAINERS files to reflect this. Signed-off-by: Martyn Welch <[email protected]> Acked-by: Sebastian Reichel <[email protected]>
2021-09-17version: Move version_string[] from version.h to version_string.hPali Rohár
More C files do not use compile time timestamp macros and do not have to be recompiled every time when SOURCE_DATE_EPOCH changes. This patch moves version_string[] from version.h to version_string.h and updates other C files which only needs version_string[] string to include version_string.h instead of version.h. After applying this patch these files are not recompiled every time when SOURCE_DATE_EPOCH changes. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2021-05-02board: ge: bx50v3: fix crystal bitSebastian Reichel
The DA9063 enables the CRYSTAL bit by default, but there is no crystal populated on the BA16 system on module. Without explicitly clearing the CRYSTAL bit the system runs unstable and sometimes reboots unexpectedly. Signed-off-by: Sebastian Reichel <[email protected]>
2021-02-02common: Drop asm/global_data.h from common headerSimon Glass
Move this out of the common header and include it only where needed. In a number of cases this requires adding "struct udevice;" to avoid adding another large header or in other cases replacing / adding missing header files that had been pulled in, very indirectly. Finally, we have a few cases where we did not need to include <asm/global_data.h> at all, so remove that include. Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2020-12-26board: ge: bx50v3: cleanup phy configSebastian Reichel
The current PHY rework does the following things: 1. Configure 125MHz clock 2. Setup the TX clock delay (RX is enabled by default), 3. Setup reserved bits to avoid voltage peak The clock delays are nowadays already configured by the PHY driver (in ar803x_delay_config). The code for that can simply be dropped. The clock speed can also be configured by the PHY driver by adding the device tree property "qca,clk-out-frequency". What is left is setting up the undocumented reserved bits to avoid the voltage peak problem. I slightly improved its documentation while updating the board's PHY rework code. Signed-off-by: Sebastian Reichel <[email protected]>
2020-12-26board: ge: bx50v3: remove confidx magic numbersSebastian Reichel
Instead of hardcoding index magic numbers in the board code, also rely on board_fit_config_name_match choosing the right config for the fitImage containing the kernel. Signed-off-by: Sebastian Reichel <[email protected]>
2020-12-06board: ge: bx50v3: check b850v3 power management watchdogIan Ray
Set `bootcause' from b850v3 power management watchdog status. Boot cause "REVERT" is no longer used, remove it. Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2020-12-06board: ge: bx50v3: reduce magic numbersSebastian Reichel
Use VPD product ID instead of confidx, so that we can easily reuse the product ID defines and avoid some magic numbers. Signed-off-by: Sebastian Reichel <[email protected]>
2020-12-06board: ge: bx50v3: drop unused pinmux definesSebastian Reichel
Remove pinmux defines, that are no longer used after converting the code to devicetree. Signed-off-by: Sebastian Reichel <[email protected]>
2020-11-04board: ge: bx50v3: Update MAINTAINERSSebastian Reichel
This updates the Bx50v3 MAINTAINERS file, so that it also catches changes to the related device tree files. Additionally the list of files has been sorted alphabetically and I added myself as maintainer. Signed-off-by: Sebastian Reichel <[email protected]>
2020-11-01board: ge: common: vpd: separate I2C specific codeSebastian Reichel
This separates the I2C specific code from the generic GE vital product data code, so that the generic parts can be used on hardware with VPD stored in SPI flash memory. Signed-off-by: Sebastian Reichel <[email protected]>
2020-11-01board: ge: common: add config option for RTC and VPD featureSebastian Reichel
While this code is being used by all GE platforms its useful to have it behind a config option for hardware bringup of new platforms. Signed-off-by: Sebastian Reichel <[email protected]>
2020-11-01board: ge: common: rename ge_common.c to ge_rtc.cSebastian Reichel
The file only contains RTC related code, so let's name it accordingly. Signed-off-by: Sebastian Reichel <[email protected]>
2020-07-17treewide: convert bd_t to struct bd_info by coccinelleMasahiro Yamada
The Linux coding style guide (Documentation/process/coding-style.rst) clearly says: It's a **mistake** to use typedef for structures and pointers. Besides, using typedef for structures is annoying when you try to make headers self-contained. Let's say you have the following function declaration in a header: void foo(bd_t *bd); This is not self-contained since bd_t is not defined. To tell the compiler what 'bd_t' is, you need to include <asm/u-boot.h> #include <asm/u-boot.h> void foo(bd_t *bd); Then, the include direcective pulls in more bloat needlessly. If you use 'struct bd_info' instead, it is enough to put a forward declaration as follows: struct bd_info; void foo(struct bd_info *bd); Right, typedef'ing bd_t is a mistake. I used coccinelle to generate this commit. The semantic patch that makes this change is as follows: <smpl> @@ typedef bd_t; @@ -bd_t +struct bd_info </smpl> Signed-off-by: Masahiro Yamada <[email protected]>
2020-05-18common: Drop linux/delay.h from common headerSimon Glass
Move this uncommon header out of the common header. Signed-off-by: Simon Glass <[email protected]>
2020-05-18common: Drop image.h from common headerSimon Glass
Move this uncommon header out of the common header. Signed-off-by: Simon Glass <[email protected]>
2020-04-16doc: update reference to README.imximagePatrick Delaunay
Update reference in many files detected by scripts/documentation-file-ref-check README.imximage => imx/mkimage/imximage.txt Signed-off-by: Patrick Delaunay <[email protected]>
2020-02-09board: ge: bx50v3: use DM for uartRobert Beckett
Remove legacy uart pad and iomux code Enable DM serial and mxc uart Signed-off-by: Robert Beckett <[email protected]>
2020-02-09board: ge: bx50v3: Enable DM PWM for backlightRobert Beckett
Add backlight and panel devicetree definitions Use UCLASS_PANEL to enable backlight via display enable handler Remove old explicit gpio code for handling backlight Use cls command to initiate display in HW agnostic manner Enable DM regulator and pwm Signed-off-by: Robert Beckett <[email protected]>
2020-02-09board: ge: bx50v3, imx53ppd: use DM I2CRobert Beckett
Remove old (pre-DM) i2c setup code. Enable DM i2c. Convert common code to use DM rtc. Convert common code to read VPD from eeprom partition. Convert the generic i2c PMIC init code to use the new da9063 driver. mx53ppd only: Correct RTC compatible in device tree. Enable MXC DM i2c driver. Define CONFIG_SYS_MALLOC_F_LEN so that DM is available in pre-reloc. Make GPIO banks available during preloc, since initialisation is done in board_early_init_f(). Add gpio_request() calls to satisfy the DM_GPIO compatibility API. Remove unused power configuration. Signed-off-by: Robert Beckett <[email protected]> Signed-off-by: Ian Ray <[email protected]>
2020-01-07board: ge: pass rtc_status via device treeIan Ray
Pass rtc_status via the device tree, instead of on kernel command line. Additionally, the 2038 mitigation is reported, if applied successfully. Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Robert Beckett <[email protected]>
2020-01-07board: ge: bx50v3: Enable DM for PCI and ethernetDenis Zalevskiy
DM for PCI pulls DM for ethernet that also needs other changes described below to build u-boot and keep existing functionality - ability to update MAC addresses of FEC ethernet adapter and I210 adapter connected to the Marvell switch. - fec_mxc driver with DM needs PHYLIB; - configuration items are moved from ge_bx50v3.h to ge_bx50v3_defconfig; - FEC is marked as eth0 because it is always present, so indices changed: I210 are still probed in the same order; - board_eth_init() was used by legacy ethernet, setup for enet iomux and pcie is moved to the board_late_init(); - pci_init() is called from the board_late_init() to initiate PCI bus probing, so I210 devices are propagated to the device tree; Signed-off-by: Denis Zalevskiy <[email protected]> [Describe PHY reset in device tree] Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Robert Beckett <[email protected]>
2020-01-07board: ge: bx50v3: Fix message output to video consoleIan Ray
Use vidconsole for output to the LCD, now that DM_VIDEO is used. Write white text on a black background, like before migrating to DM_VIDEO. Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Robert Beckett <[email protected]>
2020-01-07board: ge: bx50v3: Fix run-time warningIan Ray
Fix GPIO reservation warning on code paths that do not need LVDS power. Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Robert Beckett <[email protected]>
2020-01-07board: ge: bx50v3: sync devicetrees from LinuxRobert Beckett
Copy device trees from linux, keeping them as separate files for each board to ease future sync. Update board code to use generic bx50v3 dt initially, then select the specific dt based on board detection. Signed-off-by: Robert Beckett <[email protected]>
2019-12-02common: Move some board functions out of common.hSimon Glass
A number of board function belong in init.h with the others. Move them. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2019-08-11env: Move env_set() to env.hSimon Glass
Move env_set() over to the new header file. Acked-by: Joe Hershberger <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2019-06-23Convert to use fsl_esdhc_imx for i.MX platformsYangbo Lu
Converted to use fsl_esdhc_imx for i.MX platforms. Signed-off-by: Yangbo Lu <[email protected]> Tested-by: Steffen Dirkwinkel <[email protected]> Reviewed-by: Peng Fan <[email protected]> Reviewed-by: Lukasz Majewski <[email protected]> Reviewed-by: Martyn Welch <[email protected]> Acked-by: Jason Liu <[email protected]>
2019-04-13board: ge: store version information in fdtIan Ray
Add board-specific FDT function to store U-Boot version in device tree. Signed-off-by: Ian Ray <[email protected]>
2019-04-13board: ge: bx50v3: Enable CONFIG_DM_SPI, CONFIG_DM_SPI_FLASHIan Ray
Use SPI flash device model, and remove SPI pin configuration code since the pinctrl driver is used. Signed-off-by: Ian Ray <[email protected]>
2019-04-13board: ge: bx50v3: Enable CONFIG_DM_GPIOIan Ray
Enable CONFIG_DM_GPIO as a pre-requisite for enabling CONFIG_DM_SPI. Add explicit gpio_requests. Signed-off-by: Ian Ray <[email protected]>
2019-04-13board: ge: bx50v3: Enable CONFIG_DM_MMCIan Ray
Use MMC device model, and remove USDHC pin configuration code since the pinctrl driver is used. Signed-off-by: Ian Ray <[email protected]>
2019-01-01board: ge: Move VPD reading to the vpd_readerDenis Zalevskiy
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 <[email protected]> Signed-off-by: Fabien Lahoudere <[email protected]>
2018-12-17board: ge: Move VPD EEPROM configuration to the defconfigDenis Zalevskiy
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 <[email protected]> Signed-off-by: Fabien Lahoudere <[email protected]>
2018-12-17board: ge: Remove EEPROM bus param from read_vpd()Denis Zalevskiy
The bus is statically defined, so remove redundant parameters from read_vpd() for PPD and Bx50v3. Signed-off-by: Denis Zalevskiy <[email protected]> Signed-off-by: Fabien Lahoudere <[email protected]>
2018-10-22board: ge: bx50v3: fix initialization of i2c bus0Dan Cimpoca
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 <[email protected]> Signed-off-by: Fabien Lahoudere <[email protected]>
2018-10-22board: ge: bx50v3: b{4,6}50v3 modelineIan Ray
The b{4,6}50v3 kernel framebuffer console requires a modeline otherwise the LVDS panel shows garbage. Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Fabien Lahoudere <[email protected]>
2018-10-22board: ge: bx50v3: correct LDB clockIan Ray
Use Video PLL to provide 65MHz for all displays. Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Fabien Lahoudere <[email protected]>
2018-10-22board: ge: bx50v3: Change maintainerFabien 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 <[email protected]>
2018-06-27imx: bx50v3: fix MaintainersStefano Babic
This fixes the warnings: WARNING: no status info for 'ge_bx50v3' WARNING: no maintainers for 'ge_bx50v3 Signed-off-by: Stefano Babic <[email protected]>
2018-05-17board: ge: bx50v3: remove redundant targetsIan Ray
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 <[email protected]> Signed-off-by: Nandor Han <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2018-05-17board: ge: bx50v3: configure video arguments using VPDIan Ray
Configure video arguments at run-time instead of at compile-time. Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Nandor Han <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2018-05-17board: ge: bx50v3: use VPD instead of compile-time checksIan Ray
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 <[email protected]> Signed-off-by: Nandor Han <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>
2018-05-17board: ge: bx50v3: detect the monitor type by reading VPD earlierNandor Han
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 <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]>