README.omap3 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. Summary
  2. =======
  3. This README is about U-Boot support for TI's ARM Cortex-A8 based OMAP3 [1]
  4. family of SoCs. TI's OMAP3 SoC family contains an ARM Cortex-A8. Additionally,
  5. some family members contain a TMS320C64x+ DSP and/or an Imagination SGX 2D/3D
  6. graphics processor and various other standard peripherals.
  7. Currently the following boards are supported:
  8. * OMAP3530 BeagleBoard [2]
  9. * Gumstix Overo [3]
  10. * TI EVM [4]
  11. * OpenPandora Ltd. Pandora [5]
  12. * TI/Logic PD Zoom MDK [6]
  13. * TI/Logic PD Zoom 2 [7]
  14. Toolchain
  15. =========
  16. While ARM Cortex-A8 support ARM v7 instruction set (-march=armv7a) we compile
  17. with -march=armv5 to allow more compilers to work. For U-Boot code this has
  18. no performance impact.
  19. Build
  20. =====
  21. * BeagleBoard:
  22. make omap3_beagle_config
  23. make
  24. * Gumstix Overo:
  25. make omap3_overo_config
  26. make
  27. * TI EVM:
  28. make omap3_evm_config
  29. make
  30. * Pandora:
  31. make omap3_pandora_config
  32. make
  33. * Zoom MDK:
  34. make omap3_zoom1_config
  35. make
  36. * Zoom 2:
  37. make omap3_zoom2_config
  38. make
  39. Custom commands
  40. ===============
  41. To make U-Boot for OMAP3 support NAND device SW or HW ECC calculation, U-Boot
  42. for OMAP3 supports custom user command
  43. nandecc hw/sw
  44. To be compatible with NAND drivers using SW ECC (e.g. kernel code)
  45. nandecc sw
  46. enables SW ECC calculation. HW ECC enabled with
  47. nandecc hw
  48. is typically used to write 2nd stage bootloader (known as 'x-loader') which is
  49. executed by OMAP3's boot rom and therefore has to be written with HW ECC.
  50. For all other commands see
  51. help
  52. Interfaces
  53. ==========
  54. gpio
  55. To set a bit :
  56. if (!omap_request_gpio(N)) {
  57. omap_set_gpio_direction(N, 0);
  58. omap_set_gpio_dataout(N, 1);
  59. }
  60. To clear a bit :
  61. if (!omap_request_gpio(N)) {
  62. omap_set_gpio_direction(N, 0);
  63. omap_set_gpio_dataout(N, 0);
  64. }
  65. To read a bit :
  66. if (!omap_request_gpio(N)) {
  67. omap_set_gpio_direction(N, 1);
  68. val = omap_get_gpio_datain(N);
  69. omap_free_gpio(N);
  70. }
  71. if (val)
  72. printf("GPIO N is set\n");
  73. else
  74. printf("GPIO N is clear\n");
  75. Acknowledgements
  76. ================
  77. OMAP3 U-Boot is based on U-Boot tar ball [8] for BeagleBoard and EVM done by
  78. several TI employees.
  79. Links
  80. =====
  81. [1] OMAP3:
  82. http://www.ti.com/omap3 (high volume) and
  83. http://www.ti.com/omap35x (broad market)
  84. [2] OMAP3530 BeagleBoard:
  85. http://beagleboard.org/
  86. [3] Gumstix Overo:
  87. http://www.gumstix.net/Overo/
  88. [4] TI EVM:
  89. http://focus.ti.com/docs/toolsw/folders/print/tmdxevm3503.html
  90. [5] OpenPandora Ltd. Pandora:
  91. http://openpandora.org/
  92. [6] TI/Logic PD Zoom MDK:
  93. http://www.logicpd.com/products/devkit/ti/zoom_mobile_development_kit
  94. [7] TI/Logic PD Zoom 2
  95. http://www.logicpd.com/sites/default/files/1012659A_Zoom_OMAP34x-II_MDP_Brief.pdf
  96. [8] TI OMAP3 U-Boot:
  97. http://beagleboard.googlecode.com/files/u-boot_beagle_revb.tar.gz