ventana: Add Gateworks Ventana family support
PATCH v5 1/1 ventana: Add Gateworks Ventana family support
Gateworks Ventana is a product family based on the i.MX6. This patch adds support for all boards in the Ventana family. Where possible, data from the boards EEPROM is used to determine various details about the board at runtime.
---
Changed in v5:
- rebased on latest u-boot-imx
- only init pmic on baseboards that are known to use it
- add memory config for IMX6Q+512MB for gwventanaq config
Changes in v4:
- fixed FP calculation
- fixed invalid return type for read_eeprom()
- use enum and defines for GSC HWMON registers/bits
- removed unused CONFIG_SPI_FLASH_WINBOND_ERASESIZE
- use defines for I2C bus numbers
- added PCIE support
- moved board-specific gpio iomux to board_init as imx6_pcie_toggle_reset needs it
Changes in v3:
- update README fixing typo and removing Freescale document link
- use debug() instead of printf()
- be more explicit with hwmon error output and use macro for min/max percent
- use #defines for GSC slave address and registers
- remove extern from function prototype
- moved gpio config into structure for better readability
- use enum for eeprom bit configs and array to map to fdt property alias
- add SATA regardless of cpu type
- add FIT support regardless of flash type
- display PMIC and device id in misc_init_r() instead of pmic driver
Changes in v2:
- rebase on top of u-boot-imx
- use switch..case for model specific init instead of strcmps
- move checkboard to late init allowing i2c_setup to be moved to board_init() eeprom reading to be done after relocation, and move eeprom struct from data segment
- move SPI/I2C init to board_init()
- update README
- remove unnecessary console overwrite function
- fix multiline comment style and eliminate >80 char lines
- eliminate unnecessary loop in board_mmc_init()
- add missing copyright to clocks.cfg
- avoid duplicating cfg files where no changes exist
- added missing SPDX header to ventana_eeprom.h
- use puts() instead of printf() for constant strings
- remove messages regarding /dev/i2c-<n>
- use get_ram_size() for determing ram_size
- cleanup gpio configuration using tables for baseboard pinmux combinations
- remove phy init errata as it doesn't pertain to use case
(it is for 802.3az which IMX6 MAC does not support)
- added pfuze100_pmic driver using PMIC API
- moved GSC code (gsc command and i2c_read/i2c_write wrappers into own file)
- allow user to quiet down some of the data displayed
- remove display support for now - will revisit later
- remove display of boot mode info - may revisit later
- replace bitwise fields in eeprom structure with bit definitions
--- board/gateworks/gw_ventana/Makefile | 10 + board/gateworks/gw_ventana/README | 55 ++ board/gateworks/gw_ventana/clocks.cfg | 42 + board/gateworks/gw_ventana/gsc.c | 129 +++ board/gateworks/gw_ventana/gsc.h | 64 ++ board/gateworks/gw_ventana/gw_ventana.c | 1263 +++++++++++++++++++++++++++ board/gateworks/gw_ventana/gw_ventana.cfg | 44 + board/gateworks/gw_ventana/ventana_eeprom.h | 106 +++ boards.cfg | 5 + include/configs/gw_ventana.h | 425 +++++++++ 10 files changed, 2143 insertions(+) create mode 100644 board/gateworks/gw_ventana/Makefile create mode 100644 board/gateworks/gw_ventana/README create mode 100644 board/gateworks/gw_ventana/clocks.cfg create mode 100644 board/gateworks/gw_ventana/gsc.c create mode 100644 board/gateworks/gw_ventana/gsc.h create mode 100644 board/gateworks/gw_ventana/gw_ventana.c create mode 100644 board/gateworks/gw_ventana/gw_ventana.cfg create mode 100644 board/gateworks/gw_ventana/ventana_eeprom.h create mode 100644 include/configs/gw_ventana.h
board/gateworks/gw_ventana/Makefile new file +10 -0
@@ -0,0 +1,10 @@ +# +# Copyright (C) 2012-2013, Guennadi Liakhovetski <[email protected]> +# (C) Copyright 2012-2013 Freescale Semiconductor, Inc. +# Copyright (C) 2013, Gateworks Corporation +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-y := gw_ventana.o gsc.o +
board/gateworks/gw_ventana/README new file +55 -0
55 lines not on this page · raw message
board/gateworks/gw_ventana/clocks.cfg new file +42 -0
42 lines not on this page · raw message
board/gateworks/gw_ventana/gsc.c new file +129 -0
129 lines not on this page · raw message
board/gateworks/gw_ventana/gsc.h new file +64 -0
64 lines not on this page · raw message
board/gateworks/gw_ventana/gw_ventana.c new file +1263 -0
1,263 lines not on this page · raw message
board/gateworks/gw_ventana/gw_ventana.cfg new file +44 -0
44 lines not on this page · raw message
board/gateworks/gw_ventana/ventana_eeprom.h new file +106 -0
106 lines not on this page · raw message
boards.cfg +5 -0
@@ -320,6 +320,11 @@ Active arm armv7 mx6 freescale mx6qsabreauto Active arm armv7 mx6 freescale mx6sabresd mx6dlsabresd mx6sabresd:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl.cfg,MX6DL Fabio Estevam <[email protected]> Active arm armv7 mx6 freescale mx6sabresd mx6qsabresd mx6sabresd:IMX_CONFIG=board/freescale/imx/ddr/mx6q_4x_mt41j128.cfg,MX6Q Fabio Estevam <[email protected]> Active arm armv7 mx6 freescale mx6slevk mx6slevk mx6slevk:IMX_CONFIG=board/freescale/mx6slevk/imximage.cfg,MX6SL Fabio Estevam <[email protected]> +Active arm armv7 mx6 gateworks gw_ventana gwventanadl gw_ventana:IMX_CONFIG=board/gateworks/gw_ventana/gw_ventana.cfg,MX6DL,DDR_MB=512 Tim Harvey <[email protected]> +Active arm armv7 mx6 gateworks gw_ventana gwventanadl1g gw_ventana:IMX_CONFIG=board/gateworks/gw_ventana/gw_ventana.cfg,MX6DL,DDR_MB=1024 Tim Harvey <[email protected]> +Active arm armv7 mx6 gateworks gw_ventana gwventanaq gw_ventana:IMX_CONFIG=board/gateworks/gw_ventana/gw_ventana.cfg,MX6Q,DDR_MB=512 Tim Harvey <[email protected]> +Active arm armv7 mx6 gateworks gw_ventana gwventanaq1g gw_ventana:IMX_CONFIG=board/gateworks/gw_ventana/gw_ventana.cfg,MX6Q,DDR_MB=1024 Tim Harvey <[email protected]> +Active arm armv7 mx6 gateworks gw_ventana gwventanaq1gspi gw_ventana:IMX_CONFIG=board/gateworks/gw_ventana/gw_ventana.cfg,MX6Q,DDR_MB=1024,SPI_FLASH Tim Harvey <[email protected]> Active arm armv7 mx6 solidrun hummingboard hummingboard_solo hummingboard:IMX_CONFIG=board/solidrun/hummingboard/solo.cfg,MX6S,DDR_MB=512 Jon Nettleton <[email protected]> Active arm armv7 omap3 - overo omap3_overo - Steve Sakoman <[email protected]> Active arm armv7 omap3 - pandora omap3_pandora - Grazvydas Ignotas <[email protected]>
include/configs/gw_ventana.h new file +425 -0
425 lines not on this page · raw message
Signature · 1 line
1.8.3.2
PATCH v5 1/1 ventana: Add Gateworks Ventana family support
Hi Tim,
Quoted 7 lines · Tim Harvey
Gateworks Ventana is a product family based on the i.MX6. This patch adds support for all boards in the Ventana family. Where possible, data from the boards EEPROM is used to determine various details about the board at runtime.
Signed-off-by Tim Harvey <[email protected]>---
Applied to u-boot-imx, thanks !
Best regards,
Stefano Babic
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================