imx: cortexa9: add support for Apalis on Gaben FlexiSBC carrier board
authorPetr Štetiar <ynezz@true.cz>
Sat, 13 Nov 2021 13:23:16 +0000 (14:23 +0100)
committerPetr Štetiar <ynezz@true.cz>
Thu, 25 Aug 2022 20:08:13 +0000 (22:08 +0200)
commitf34ebba94d46775b23e0634d75832a5a7dd05a23
treeffc33d60874eba5ff8b50ecfdde94846a0b9c45b
parent49eac85d4aba9f01a965bd98b578fb8d913fffd7
imx: cortexa9: add support for Apalis on Gaben FlexiSBC carrier board

!!! TODO !!!

Gaben FlexiSBC is custom carrier board utilizing Toradex Apalis i.MX6
family of modules. It's being developed, sold and supported by gaben.cz.

Features:

* 1x ADV7180
* 1x CAN (terminator)
* 1x galvanically isolated RS485/RS232 (terminator, protection diodes)
* 1x RS232 with DB9 connector with all signals (missing RI)
* 4x digital inputs, optically isolated, surge protection
* 4x digital outputs, using Omron G5V2 relays with max. 2A switching current
* microSD card slot, 4-bit SDIO, GPIO for card detect
* LVDS (3x data and clock pairs), usually not populated
* MCP9800 thermometer on I2C1
* 4x buttons, RGB LED
* Secondary watchdog using external MCU
* Dog128 LCD connected to SPI1 with PWM backlight
* 4x extension slots using miniPCIe connector format:
  - GSM&GPS, including SIM card slot for standard sized SIMs
    - user controllable power source VCC-GSM (GPIO expander)
    - UART3 signals shared with RFID (jumper select)
  - PCIe standard slot usually used for WiFi cards
    - 3x Rx,Tx,CLK diff pairs, WAKE, RESET (PRsT), USB, I2C signals
    - user controllable power source VCC-PCIE (GPIO expander)
  - CUSTOM with CAN2, UART4, SPI2, USB, I2C3, 3x GPIO
    - user controllable power source VCC-CUSTOM (GPIO expander)
  - RFID with USB, UART3, and WAKEUP/RESET GPIOs
    - UART3 signals shared with GSM&GPS (jumper select)

Factory flashing instructions:

Press and hold buttons marked 1 and 2 under the LCD, insert power
connector and USB for OTG. Device should start blink with green LED with
1 Hz frequency, start flashing:

 1. Download and compile imx_loader for OpenWrt from https://github.com/ynezz/imx_loader
 2. Enter recovery mode https://developer.toradex.com/knowledge-base/imx-recovery-mode
 3. Connect board via USB to the host computer, check that it's connected by lsusb
    15a2:0054 Freescale Semiconductor, Inc. i.MX 6Dual/6Quad SystemOnChip in RecoveryMode
 4. Copy following OpenWrt images to imx_loader directory:
     SPL
     u-boot.img
     u-boot-with-spl.imx
     openwrt-imx6-apalis_flexisbc-recovery.scr
     openwrt-imx6-apalis_flexisbc-squashfs.combined.bin
 5. Run imx_usb in imx_loader directory

Upgrade in U-Boot over USB:

 Unpack openwrt-imx6-gaben_flexisbc-squashfs.combined.bin to FAT32
 formated USB flash disk, insert disk into board, press and hold buttons
 3&4 and insert power.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
package/boot/uboot-envtools/files/imx_cortexa9
target/linux/imx/Makefile
target/linux/imx/cortexa9/base-files/lib/preinit/79_move_config
target/linux/imx/cortexa9/base-files/lib/upgrade/platform.sh
target/linux/imx/image/bootscript-gaben_flexisbc [new file with mode: 0644]
target/linux/imx/image/cortexa9.mk
target/linux/imx/image/recovery-gaben_flexisbc [new file with mode: 0644]
target/linux/imx/patches-5.15/902-ARM-dts-imx-add-support-for-Gaben-FlexiSBC.patch [new file with mode: 0644]