DHCOM iMX25-D2: Difference between revisions

From Wiki-DB
Jump to navigationJump to search
 
(111 intermediate revisions by 8 users not shown)
Line 1: Line 1:
__TOC__
{|
|
|
|-
|__TOC__
|[[Image:COMiMX25.png|600px|COM iMX25-D2]]
|}


== Hardware ==
* [[COM iMX25 Hardware|Hardware]]


= Bootloader U-Boot =
== Product Change Notifications (PCN) ==
== Console commands ==
* [[media:PCN_iMX25_R01_2017-10-02.pdf|PCN_iMX25_R01_2017-10-02.pdf (Qualification of additional NAND Flash)]]
=== NAND Flash ===
* [[media:PCN_DHCOM-iMX25-004_R01_2021-04-23.pdf|PCN_DHCOM-iMX25-004_R01_2021-04-23.pdf (Qualification of additional NAND Flash)]]
* [[media:PCN_DHCOM-iMX25-005_R01_2021-12-23.pdf|PCN_DHCOM-iMX25-005_R01_2021-12-23.pdf (microSD socket EOL)]]


'''Nand Flash Read'''
{| class="wikitable" | style="width: 100%; color: #000000; background: #f3f3f3;" valign="top" |
|-
| style="width: 50%; background: #076b8d; border: 0pt;" |
| style="width: 50%; background: #076b8d; border: 0pt;" |
|-
|valign="top" style="border: 0pt;" |
* Freescale ARM9 i.MX25 @ 400 MHz
* 0 - 2048 MB NAND-FLASH
* 64 - 128 MB DDR2-266
* MicroSD Sockel onboard
* SD/MMC card interface
* LC-Displaycontroller, 16 Bit colour depth, 800 x 600 Pixel
* Touchcontroller onboard, 4-wire resistive
|valign="top" style="border: 0pt;" |
* Ethernet 10/100 MBit
* 1x USB Host full-speed, USB OTG high-speed
* Serial Interfaces: 3x UART, 2x I²C, 2x SPI
* CAN Interface: 1 Mbit/s
* Real-time Clock RTC onboard
* Temperature range: Operating -40 to +85 °C
* SODIMM-200 Connector DHCOM Standard
|}


''nand read <SDRAM address> <NAND Flash address> <Bytes>''
== Software Support ==
*[[COM iMX25 Bootloader U-Boot|Bootloader U-Boot]]
*[[DHCOM Flash Update|DHCOM Update Mechanism for i.MX25]]
*[[COM iMX25 WinCE|WinCE]]
*[[COM iMX25 Linux|Linux]]


Example: nand read 80000000 400000 b40000
== Downloads ==
==== Bootloader Binary ====
* [[media:U-boot_(V1.18.0.5).zip|Download U-Boot binary (v1.18.0.5)]] (for updating, please have a look at FAQ list)
==== Settings Files ====
* [[media:00_PrimeView_7inch_PM070WT3.zip|Settings PrimeView 7" Display (PM070WT3) (for U-Boot Version v1.11.2.0 or higher)]]
* [[media:01_DataImage_4_3inch_FG040360DSSWBG03.zip|Settings DataImage 4,3" Display (FG040360DSSWBG03) (for U-Boot Version v1.11.2.0 or higher)]]
==== DHupdate.ini example ====
* [[media:DHupdate_example.zip|DHupdate.ini file example (for U-Boot Version v1.10.0.0 or higher)]]
==== Update Bitmap example files ====
* [[media:Update_Bitmaps_800x480.zip|Update Bitmap example files for 800x480 display]]
==== Splash Image examples ====
* [[media:DH_480x272.zip|Example Splash Bitmap for 480x272 Display]]
* [[media:DH_800x480.zip|Example Splash Bitmap for 800x480 Display]]
==== Root Filesystem Update Kernel ====
* Please contact DH electronics if you need a binary.


Description: Copies 11,25MByte from NAND Flash address 0x40_0000 to SDRAM address 0x8000_0000
==== Linux Kernel Binary and Sources ====
* [https://github.com/dh-electronics/linux-imx25 Linux Kernel based on 3.2.xx mainline available on GitHub]
* [[media:DHCOM-linux-imx-3.2.9_BUILD.zip|Current built of the 3.2.9 DHCOM iMX25 linux kernel (2016-02-24)]]
* [[media:DHCOM-linux-imx-3.2.81_BUILD.zip|Current built of the 3.2.81 DHCOM iMX25 linux kernel (2016-10-07)]]


'''Nand Flash Erase'''
==== Debian Rootfilesystem ====
* [https://www.dropbox.com/s/9ivwpv2i2wznmu4/rootFS_DN_20110805et4_HL7%20%2830.10.2014%29.tar.bz2?dl=0 Current Debian root file system, based on Debian 6 "Squeeze" (2014-10-30)]<br/>Remark: Shellshock (CVE-2014-6271) is already fixed.


''nand erase <Block base address> <Bytes>''
==== Virtual Machine for Application Development ====
* [https://www.dropbox.com/s/b9424pfoiik21dd/Debian%20Squeeze%20v1.5pw.zip?dl=0 Debian 6 "Squeeze" VMware Image (PW: dhelectronics)] <br/>Password for devel user: '''devel'''<br/>Password for root user: '''root'''


Example: nand erase 400000 40000
==== Code Examples for Userspace-Applications to Access SPI, I2C, GPIOs, and more ====
 
* [[media:Demos_SPI_I2C_GPIO.zip|Download Code Examples SPI, I2C, GPIOs, RTC, UART, Watchdog, and more ]]
Description: Deletes NAND Flash content from address 0x40_0000 to 0x43_FFFF
* [[media:DHCOM-HAL.zip|Download C++ HAL class library for SPI, I2C, GPIO, UART and physical address space access]]
 
Note: The Bytes information needs to be block size aligned!
 
'''Nand Flash Write'''
 
''nand write <SDRAM address> <NAND Flash address> <Bytes>''
 
Example: nand write 80000000 400000 b40000
 
Description: Cpoies 11,25MByte from SDRAM address 0x8000_0000 to NAND Flash address 0x40_0000
 
Note: The Bytes information needs to be page size aligned!
 
'''Show bad NAND Flash blocks'''
 
''nand bad''
 
Description: Shows the bad NAND Flash blocks.
 
'''Show NAND FLash content'''
 
''nand dump <NAND Flash address>''
 
Example: nand dump 400000
 
Description: Shows the content of the specified NAND Flash block
 
=== LCD contoller ===
 
'''Show LCD controller settings'''
 
''lcdinfo''
 
Example: 
  Display Resolution: 800 x 480 pixels
  Display Type:      Active Color Display
  Pixel Clock:        22 MHz
  Bits per Pixel:    16 Bits/Pixel
  Pixel Polarity:    Active High
  VSYNC Polarity:    Active Low
  HSYNC Polarity:    Active Low
  Clock Polarity:    Pos. Edge
  Output En Polarity: Active High
  HSYNC Puls Width:  64 Clock Cycles
  HSYNC Back Porch:  86 Clock Cycles
  HSYNC Front Porch:  42 Clock Cycles
  VSYNC Puls Width:  2 Line Cycles
  VSYNC Back Porch:  33 Line Cycles
  VSYNC Front Porch:  10 Line Cycles
 
=== GPIO's ===
 
'''Show DHCOM GPIO settings'''
 
''gpioinfo''
 
Example:
  GPIO_A: Direction = Input
          State    = 0
  GPIO_B: Direction = Input
          State    = 0
  GPIO_C: Direction = Input
          State    = 0
  GPIO_D: Direction = Input
          State    = 0
  GPIO_E: Direction = Input
          State    = 1
  GPIO_F: Direction = Input
          State    = 1
  GPIO_G: Direction = Output
          State    = 1
  GPIO_H: Direction = Input
          State    = 1
  GPIO_I: Direction = Input
          State    = 1
  GPIO_J: Direction = Input
          State    = 1
  GPIO_K: Direction = Input
          State    = 0
 
=== SD/MMC Card ===
 
'''Switch between MicroSD and SD Slot'''
 
''mmcswitch <Slot number>''
 
Example: mmcswitch 2
 
Description: Switch between SD/MMC Slots: 1 --> SD/MMC Slot, 2 --> MicroSD Slot
 
'''Initialize SD/MMC Card'''
 
''mmcinit''
 
Description: Initialize new inserted SD Card
 
=== Filesystem ===
 
'''Show Filesystem information'''
 
''fatinfo <interface> <device>''
 
Example: fatinfo mmc 1
 
Interface: MMC
  Device 1: Vendor: Man 094150 Snr 266e068c Rev: 1.0 Prod: AF UD
            Type: Removable Hard Disk
            Capacity: 121.2 MB = 0.1 GB (248320 x 512)
  Partition 1: Filesystem: FAT16 "NO NAME    "
 
'''List files'''
 
''fatls <interface> <device> <directory>''
 
Example 1: fatls mmc 1
 
Example 2: fatls mmc 1 /folder
 
'''Load Files from SD Card to SDRAM'''
 
''fatload <interface> <device> <SDRAM address> <directory+filename>''
 
Example 1: fatload mmc 1 80100000 nk.gz
 
Example 2: fatload mmc 1 80100000 /folder/nk.gz
 
=== Ethernet (TFTP) ===
 
'''Load File via TFTP to SDRAM'''
 
''tftp <SDRAM address> <directory+filename>''
 
Example: tftp 80100000 nk.gz
 
Example TFTP Server: "Winagents TFTP Server Manager"
 
Note: For TFTP download it is necessary to config the ENV variables "ipaddr" and "serverip"
 
=== Environment ===
 
'''Show ENV variables'''
 
''printenv''
 
bootdelay=0
baudrate=38400
ipaddr=192.168.55.230
serverip=192.168.55.36
gatewayip=192.168.55.36
netmask=255.255.255.0
frias=5
kernel=uImage
bootargs=console=ttymxc0,115200 root=/dev/mmcblk0p2
nandbootwince=update;bootwince 00200000
splashimage=0x000c0000
save_ENV_to_flash=setenv ENVinFlash 1; saveenv
ENVinFlash=1
ethaddr=00:04:a3:34:b6:0d
ethact=FEC0
winceimagetype=nk.gz
winceimagesize=00ba55ee
loadaddr=00200000
bootcmd=run nandbootwince
filesize=212050
Environment size: 449/262140 bytes
 
'''Set ENV variables'''
 
''setenv <ENV name> <ENV value>''
 
Example: setenv ipaddr 192.168.55.2
 
Note: If you need to edit "bootcmd" it is necessary to insert ";" between the unique commands. You can enter ";" at the command line with "\;".
 
'''Save ENV variables'''
 
''saveenv''
 
=== Update ===
 
'''Via iMX25_update.bmp file'''
 
'''Without iMX25_update.bmp file'''
 
= WinCE =
== Registry Settings ==
 
=== LCD Controller ===
 
[HKEY_LOCAL_MACHINE\Drivers\Display\LCDC]
  "PanelType"=dword:1    ; LCD Panel identifier
                          ; Description: Set "PanelType" = 0 to use the bootloader LCD controller settings, which can be programmed to NAND Flash via settings.bin file.
[HKEY_LOCAL_MACHINE\SYSTEM\GDI\ROTATION]
  "Angle"=dword:0        ; no rotation
                          ; "Angle"=dword:5A --> 90 degrees rotated clockwise
                          ; "Angle"=dword:B4 --> 180 degrees rotated clockwise
                          ; "Angle"=dword:10E --> 270 degrees rotated clockwise
 
=== Task Bar Look ===
 
[HKEY_LOCAL_MACHINE\Explorer]
  “QVGA“=dword:00000001  ; Change Task bar style: 0 --> normal Windows look, 1 --> PDA look

Latest revision as of 05:13, 31 May 2022

COM iMX25-D2

Hardware

Product Change Notifications (PCN)

  • Freescale ARM9 i.MX25 @ 400 MHz
  • 0 - 2048 MB NAND-FLASH
  • 64 - 128 MB DDR2-266
  • MicroSD Sockel onboard
  • SD/MMC card interface
  • LC-Displaycontroller, 16 Bit colour depth, 800 x 600 Pixel
  • Touchcontroller onboard, 4-wire resistive
  • Ethernet 10/100 MBit
  • 1x USB Host full-speed, USB OTG high-speed
  • Serial Interfaces: 3x UART, 2x I²C, 2x SPI
  • CAN Interface: 1 Mbit/s
  • Real-time Clock RTC onboard
  • Temperature range: Operating -40 to +85 °C
  • SODIMM-200 Connector DHCOM Standard

Software Support

Downloads

Bootloader Binary

Settings Files

DHupdate.ini example

Update Bitmap example files

Splash Image examples

Root Filesystem Update Kernel

  • Please contact DH electronics if you need a binary.

Linux Kernel Binary and Sources

Debian Rootfilesystem

Virtual Machine for Application Development

Code Examples for Userspace-Applications to Access SPI, I2C, GPIOs, and more