summaryrefslogtreecommitdiff
path: root/board/ti
AgeCommit message (Collapse)Author
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-07-13omap3_beagle: Finish current outstanding DM migrationsTom Rini
At this point in time we can now remove our legacy code and switch to enabling DM for USB and Ethernet. Cc: Derald D. Woods <[email protected]> Cc: Adam Ford <[email protected]> Signed-off-by: Tom Rini <[email protected]> Tested-by: Derald D. Woods <[email protected]>
2020-06-30ti814x: Remove platformTom Rini
The TI814x (DM814x) platform is rather old and in need of a lot of migration work. As much of that work is well past the deadline, remove this platform. Signed-off-by: Tom Rini <[email protected]>
2020-06-30am335x: Update list of defconfigsTom Rini
Both the am335x_boneblack and am335x_evm_usbspl configs have been gone for a while, remove their entries from MAINTAINERS. Signed-off-by: Tom Rini <[email protected]>
2020-06-16omap5: uevm: convert to device modelTero Kristo
Convert omap5 uevm board to device model. Signed-off-by: Tero Kristo <[email protected]>
2020-06-16omap4: sdp: convert to device modelPeter Ujfalusi
Convert omap4 sdp to device model. Signed-off-by: Peter Ujfalusi <[email protected]> Signed-off-by: Tero Kristo <[email protected]>
2020-06-16omap4: panda: convert to device modelTero Kristo
Convert omap4 panda to device model. Signed-off-by: Tero Kristo <[email protected]>
2020-06-16board: ti: am654: Disable SA2UL node for HS devicesAndrew F. Davis
On HS devices the access to SA2UL is restricted on the non-secure ARM side, disable the node in DT to prevent firewall violations. We used to only disable the TRNG but now that we have full SA2UL support in Linux, in which TRNG is a sub-module, disable both by disabling the parent SA2UL node. Signed-off-by: Andrew F. Davis <[email protected]>
2020-06-16board: ti: am335x_evm: Remove duplicate setting of bd_ram_ofs memberTom Rini
With clang we get a report that we are setting this member twice. Fortunately it is to the same value, so drop the hard-coded value line. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Grygorii Strashko <[email protected]>
2020-06-16board: ti: common: Fix pointer-bool-conversion warningsTom Rini
When building this code with clang-10 a number of warnings will be generated along the lines of: warning: address of array 'ep->version' will always evaluate to 'true' Convert these checks to checking the strlen of the part of the array we care about. As this array will be null terminated previously by us, this is safe. Cc: Lokesh Vutla <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Lokesh Vutla <[email protected]>
2020-06-13board: ti: use positive logic to detect idk boardsLuca Ceresoli
am57x_idk_lcd_detect() exits immediately if a known board not having an LCD is found, i.e. a non-IDK board. This is annoying as we have to remember to add an extra OR clause for every new non-IDK board. Add a board_is_ti_idk() macro so that the logic becomes positive (detect LCD on IDK boards instead of not-known-without-LCD boards). Even more important, add the macro just below the board_is_*_idk() macros, so it is easy to remember to update it when adding a new IDK. Signed-off-by: Luca Ceresoli <[email protected]>
2020-06-13board: ti: am57xx: use GPIO_TO_PIN() to define GPIO numberLuca Ceresoli
Using the macro makes code readable without the need for a comment. Signed-off-by: Luca Ceresoli <[email protected]>
2020-06-02arm: ti: Remove ARCH= references from documentationTom Rini
When building U-Boot we select the architecture via Kconfig and not ARCH being passed in via the environment or make cmdline. Cc: Lokesh Vutla <[email protected]> Cc: Vitaly Andrianov <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2020-05-25Merge tag 'ti-v2020.07-rc3' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-ti - Enable DM_ETH on omap3_logic board - Enable Caches in SPL for K3 platforms - Enable backup boot mode support for J721E - Update the DDR timings for AM654 EVM - Add automated tests for RX-51
2020-05-19arm: mach-k3: Enable dcache in SPLJan Kiszka
Add support for enabling dcache already in SPL. It accelerates the boot and resolves the risk to run into unaligned 64-bit accesses. Based on original patch by Lokesh Vulta. Signed-off-by: Jan Kiszka <[email protected]> Acked-by: Lokesh Vutla <[email protected]>
2020-05-18common: Drop linux/bitops.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 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 log.h from common headerSimon Glass
Move this header out of the common header. Signed-off-by: Simon Glass <[email protected]>
2020-05-18command: Remove the cmd_tbl_t typedefSimon Glass
We should not use typedefs in U-Boot. They cannot be used as forward declarations which means that header files must include the full header to access them. Drop the typedef and rename the struct to remove the _s suffix which is now not useful. This requires quite a few header-file additions. Signed-off-by: Simon Glass <[email protected]>
2020-05-18common: Drop init.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-05-18common: Drop bootstage.h from common headerSimon Glass
Move this fairly uncommon header out of the common header. Signed-off-by: Simon Glass <[email protected]>
2020-05-18common: Drop net.h from common headerSimon Glass
Move this header out of the common header. Network support is used in quite a few places but it still does not warrant blanket inclusion. Note that this net.h header itself has quite a lot in it. It could be split into the driver-mode support, functions, structures, checksumming, etc. Signed-off-by: Simon Glass <[email protected]>
2020-03-06board: ti: README: Update OP-TEE binary nameAndrew F. Davis
The OP-TEE binary to use is renamed to v2 as the v1 binary has been deprecated and is no longer built by default. Reported-by: Grygorii Strashko <[email protected]> Signed-off-by: Andrew F. Davis <[email protected]>
2020-03-03board: ti: k3: Update the sysfw image gen repositoryLokesh Vutla
Now k3-image-gen[0] is the official repository for generating sysfw.itb Update the same in AM65x and J721e README. [0] https://git.ti.com/cgit/k3-image-gen/k3-image-gen/ Signed-off-by: Lokesh Vutla <[email protected]>
2020-03-03board: ti: j721e: initialize ESM supportTero Kristo
Initialize both ESM and ESM_PMIC support if available for the board. If support is not available for either, a warning is printed out. ESM signals are only properly routed on PM2 version of the J721E SOM, so only probe the drivers on this device. Signed-off-by: Tero Kristo <[email protected]>
2020-03-03board: ti: Update AM65x and J721e READMEs for OSPI bootVignesh Raghavendra
Update AM65x and J721e README files with instructions for flashing OSPI images. Signed-off-by: Vignesh Raghavendra <[email protected]>
2020-02-13board: ti: am57xx-idk: Prevent boot for invalid configuationRoger Quadros
On am571x-idk there can be following configurations based on Jumper J51 and LCD panel detected. 1) J51 removed (6port): 6 port Ethernet. Disable LCD panel. 2) J51 placed (LCD) + Panel detected: 4 port Ethernet with appropriate LCD. 3) J51 placed (LCD) + Panel not detected/not supported. Configuration 3 is considered invalid as we can't use display nor ICSS1 ethernet ports due to hardware muxing. Alert the user to fix the configuration and prevent boot. Alternative was to allow boot and limit to 4 port Ethernet with no display but this involved introduction of another DTB for the kernel and was considered not worth the hassle. Signed-off-by: Roger Quadros <[email protected]> Acked-by: Suman Anna <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2020-02-05dm: core: Create a new header file for 'compat' featuresSimon Glass
At present dm/device.h includes the linux-compatible features. This requires including linux/compat.h which in turn includes a lot of headers. One of these is malloc.h which we thus end up including in every file in U-Boot. Apart from the inefficiency of this, it is problematic for sandbox which needs to use the system malloc() in some files. Move the compatibility features into a separate header file. Signed-off-by: Simon Glass <[email protected]>
2020-01-20Merge tag '2020-01-20-ti-2020.04' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-ti K3 J721E: * DMA support. * MMC and ADMA support. * EEPROM support. * J721e High Security EVM support. * USB DT nodes K3 AM654: * Fixed boot due to pmic probe error. * USB support and DT nodes. * ADMA support DRA7xx/AM57xx: * BBAI board support * Clean up of net platform code under board/ti AM33/AM43/Davinci: * Reduce SPL size for omap3 boards. * SPL DT support for da850-lcdk * PLL divider fix for AM335x
2020-01-20arm: mach-k3: Warn when node to disable is not foundAndrew F. Davis
Not finding a node that we try to disable does not always need to be fatal to boot but should at least print out a warning. Return error from fdt_disable_node as it did fail to disable the node, but only warn in the case of disabling the TRNG as this will not prevent boot. Signed-off-by: Andrew F. Davis <[email protected]> Reviewed-by: Lokesh Vutla <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2020-01-20board: ti: j721e: Print board name and version during bootLokesh Vutla
Print the board name and ver along with the DT Model. Signed-off-by: Lokesh Vutla <[email protected]>
2020-01-20board: ti: j721e: Use EEPROM-based board detectionAndreas Dannenberg
The TI J721E EVM system on module (SOM), the common processor board, and the associated daughtercards have on-board I2C-based EEPROMs containing board config data. Use the board detection infrastructure to do the following: 1) Parse the J721E SOM EEPROM and populate items like board name, board HW and SW revision as well as board serial number into the TI common EEPROM data structure residing in SRAM scratch space 2) Check for presence of daughter card(s) by probing associated I2C addresses used for on-board EEPROMs containing daughter card-specific data. If such a card is found, parse the EEPROM data such as for additional Ethernet MAC addresses and populate those into U-Boot accordingly 3) Dynamically apply daughter card DTB overlays to the U-Boot (proper) DTB during SPL execution 4) Dynamically create an U-Boot ENV variable called name_overlays during U-Boot execution containing a list of daugherboard-specific DTB overlays based on daughercards found to be used during Kernel boot. This patch adds support for the J721E system on module boards containing the actual SoC ("J721EX-PM2-SOM", accessed via CONFIG_EEPROM_CHIP_ADDRESS), the common processor board ("J7X-BASE-CPB"), the Quad-Port Ethernet Expansion Board ("J7X-VSC8514-ETH"), the infotainment board ("J7X-INFOTAN-EXP") as well as for the gateway/Ethernet switch/industrial expansion board ("J7X-GESI-EXP"). Signed-off-by: Andreas Dannenberg <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2020-01-20ti: common: board_detect: Handle EEPROM probe more gracefullyAndreas Dannenberg
Use dm_i2c_probe() rather than i2c_get_chip() when trying to access board-detection EEPROM devices. This has the advantage of more gracefully handling the case when the EEPROM is not present by allowing to exit the function early rather than failing and outputting an error message on the I2C transactions that follow. Signed-off-by: Andreas Dannenberg <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2020-01-20board: ti: beagleboneai: add initial supportCaleb Robey
These are necessities for beaglebone ai boot. There is the addition of CONFIG_SUPPORT_EMMC_CONFIG to the Kconfig file. This is present upstream but not in 19.01 yet. Signed-off-by: Jason Kridner <[email protected]> Signed-off-by: Caleb Robey <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2020-01-20board: ti: beagleboneai: IODELAY and pinmuxCaleb Robey
This patch configures the pinmux settings for the BeagleBone AI after the emmc read has completed. Signed-off-by: Jason Kridner <[email protected]> Signed-off-by: Caleb Robey <[email protected]> Cc: Robert Nelson <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2020-01-20board: ti: beagleboneai: emmc read changesCaleb Robey
BeagleBoard.org BeagleBone AI rev A1 does not include a board identifier I2C EEPROM due to a design oversight. These boards have been put into production and are generally available now. The board identifier information, however, has been included in the second eMMC linear boot partition (/dev/mmcblk1boot1). This patch works by: * First, looking for a board identifier I2C EEPROM and if not found, * Then seeing if the boot mode matches BeagleBone AI with eMMC in the boot chain to make sure we don't enable eMMC pinmuxes on boards that don't support it, and * Finally, initializes the eMMC pins and reading the header. Signed-off-by: Jason Kridner <[email protected]> Signed-off-by: Caleb Robey <[email protected]> Cc: Robert Nelson <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2020-01-20board: ti: am43xx: remove net platform codeGrygorii Strashko
The TI AM43xx platform has DM_ETH and OF_CONTROL enabled, so remove networking platform code. Signed-off-by: Grygorii Strashko <[email protected]> Reviewed-by: Lokesh Vutla <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2020-01-20board: ti: dra7-evm: remove net platform codeGrygorii Strashko
The DRA7 has DM_ETH and OF_CONTROL enabled, so remove networking platform code. Signed-off-by: Grygorii Strashko <[email protected]> Reviewed-by: Lokesh Vutla <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2020-01-17common: Move hang() to the same header as panic()Simon Glass
At present panic() is in the vsprintf.h header file. That does not seem like an obvious choice for hang(), even though it relates to panic(). So let's put hang() in its own header. Signed-off-by: Simon Glass <[email protected]> [trini: Migrate a few more files] Signed-off-by: Tom Rini <[email protected]>
2020-01-17common: Move RAM-sizing functions to init.hSimon Glass
These functions relate to memory init so move them into the init header. Signed-off-by: Simon Glass <[email protected]>
2020-01-17common: Move device-tree setup functions to fdt_support.hSimon Glass
These functions relate to setting up the device tree for booting the OS. The fdt_support.h header file supports similar functions, so move these there. Signed-off-by: Simon Glass <[email protected]>
2019-12-03mtd: rename CONFIG_NAND -> CONFIG_MTD_RAW_NANDMiquel Raynal
Add more clarity by changing the Kconfig entry name. Signed-off-by: Miquel Raynal <[email protected]> [trini: Re-run migration, update a few more cases] Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Boris Brezillon <[email protected]>
2019-12-02common: Move old EEPROM functions into a new headerSimon Glass
These functions do not use driver model but are still used. Move them to a new eeprom.h header file. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[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-12-02common: Move board_get_usable_ram_top() out of common.hSimon Glass
Move this function into init.h which seems to be designed for this sort of thing. Also update the header to declare struct global_data so that it can be included without global_data.h being needed. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2019-12-02common: Move serial functions out of common.hSimon Glass
These functions belong in serial.h so move them over. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2019-11-07Kconfig: ti: Make board detect EEPROM addresses depend BOARD_DETECTAdam Ford
There is an option to enable the board detection for TI platforms. If this is option is not set, there is no reason to set the EEPROM bus address or chip address. This patch makes both EEPROM_BUS_ADDRESS and EEPROM_CHIP_ADDRESS depend on TI_I2C_BOARD_DETECT. Signed-off-by: Adam Ford <[email protected]>
2019-10-25Merge branch '2019-10-24-ti-imports'Tom Rini
- Enable DFU on dra7xx boards - Further Keystone 3 platform improvements
2019-10-25armv7R: K3: j721e: Add support for triggering ddr init from SPLLokesh Vutla
In SPL, DDR should be made available by the end of board_init_f() so that apis in board_init_r() can use ddr. Adding support for triggering DDR initialization from board_init_f(). Signed-off-by: Lokesh Vutla <[email protected]>