1
0
mirror of https://git.yoctoproject.org/meta-ti synced 2026-01-12 01:20:20 +00:00

Compare commits

...

136 Commits
dylan ... danny

Author SHA1 Message Date
Denys Dmytriyenko
72d4c5d37d libdrm: restore libdrm-tests package that got missed with TI version
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-08-10 16:41:28 -04:00
Franklin S. Cooper Jr
5ff9feb881 u-boot: Add memory alignment fix for armv7 for am37x and am3517
* On am335x a memory alignment issue was found when using the Linaro toolchain.
* A similar patch was applied for am335x that fixed this well documented issue.
* Add a similar fix to am37x and am3517 since this is a generic armv7 issue.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-11 13:59:00 -04:00
Franklin S. Cooper Jr
383266ca96 u-boot-am33x: Update am335x to use latest u-boot for 3.2 kernel
Latest commit includes the following:
* Add support for Beaglebone Black
* Add fix for Linaro toolchain to insure NOR and RNDIS works.
* Add workaround for Errata 1.0.24
* Enable DDR3 power down for BBB and GP evm.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Acked-by: Chase Maupin <chase.maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-11 13:58:57 -04:00
Franklin S. Cooper Jr
d78b2c21c4 linux-am335x-psp: Add 1 GHZ Support for BBB
Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-02 11:59:19 -04:00
Franklin S. Cooper Jr
cc36865809 linux-am335x-psp: Add Beaglebone Black support
Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-02 11:59:19 -04:00
Franklin S. Cooper Jr
616f91bc32 am33x-cm3: Add support for PG 2.1 silicon.
Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-02 11:59:19 -04:00
Franklin S. Cooper Jr
5f945012c9 linux-am335x-psp: Add patch to enable SR on PG 2.x boards.
* Add patch that enables Smart Reflex on new PG 2.x boards.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-02 11:59:19 -04:00
Franklin S. Cooper Jr
29719b15ee linux-am335x-psp: Enable USB with DMA by default
* Patches have been added to fix some USB with DMA.
* Enable support for this by default by removing the patch that disabled it.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-02 11:59:19 -04:00
Franklin S. Cooper Jr
68c58484ab linux-am335x-psp: Update to PSP release 04.06.00.11
Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-02 11:59:19 -04:00
Siddharth Heroor
e2b3670c17 u-boot-glsdk: add GLSDK Staging tree
* The GLSDK u-boot staging tree is based off the Core SDK 2013.04.02
  release. This tree will be used to stage patches and fixes on
  top of the Core SDK U-Boot. The GLSDK release will use this tree
  for product development.
* Includes fix to OMAP5 so that QSPI is not enabled.

Signed-off-by: Siddharth Heroor <heroor@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-02 11:37:47 -04:00
Siddharth Heroor
ede7a353b9 linux-ti-glsdk: update to latest fixes
* Fixes for USB, SATA and enables GPU (omapdrm).
* Fix OMAP5 LDO1 value.

Signed-off-by: Siddharth Heroor <heroor@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-02 11:37:23 -04:00
Siddharth Heroor
ac4d555544 libdrm: Add GLSDK specific staging tree for omap-a15
* Override SRC_URI to use TI's tree at https://git.ti.com/glsdk/libdrm
  This tree includes patches on top of the upstream libdrm for
  omap5 and dra7xx class of devices.

v2 :
* Change PR to "${INC_PR}.0" instead of using the SRCREV as per comments
  received in v1.
* Add missing configure options to get Kernel Mode Setting (KMS) as
  well. This was missing in the original patch.

Signed-off-by: Mrinmayee Hingolikar <mrinmayee@ti.com>
Signed-off-by: Siddharth Heroor <heroor@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-07-01 00:54:25 -04:00
Siddharth Heroor
ef12440225 recipes-kernel: Add GLSDK specific kernel tree for omap-a15
* Machine compatible with only omap-a15 devices.
* The TI Staging tree will not be used to maintain K3.8. Instead,
  this new tree is set up as a production tree. Pending features
  for 3.8 will be implemented on this tree.
  - Backported features from linux mainline
  - Backported bug-fixes from linux mainline and linux-stable.
  - Features implemented by the GLSDK team which maybe product
    specific.
  This is the tree on which GLSDK kernel releases will be made.
* This recipe is based off the Core SDK 2013.04.02 released kernel
  recipe - recipes-kernel/linux/linux-ti-staging_3.8.bb

Signed-off-by: Siddharth Heroor <heroor@ti.com>
cc: Mrinmayee Hingolikar <mrinmayee@ti.com>
Acked-by: Chase Maupin <chase.maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-06-28 13:15:54 -04:00
Denys Dmytriyenko
1c09e95bef u-boot: add support for SPL UART variant
This is an adaptation of a patch by Carlos Hernandez

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-06-24 21:50:46 -04:00
Denys Dmytriyenko
9826121536 linux-ti-staging: update to ti2013.04.02 release
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-06-12 12:21:08 -04:00
Chase Maupin
428c9db65f u-boot-dra7xx: update to latest sources
* Update to latest sources which pulls in the QSPI patches

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-06-10 11:38:16 -04:00
Chase Maupin
4f776c4560 linux-ti-staging: update kernel SRCREV
* Update the kernel SRCREV to pickup DSS fixes for the dra7xx
  devices.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-06-05 14:30:31 -04:00
Denys Dmytriyenko
569af06fd2 u-boot-dra7xx: add latest u-boot from the integration branch
While the code is being pulled from ti-u-boot integration tree, J6/DRA7xx bring up
is being done from a separate branch that does not include all the commits made
for am335x. Hence, until those branches are merged with the mainline and unified
in a single recipe, a separate recipe just for DRA7xx makes more sense. This
recipe should eventually go away and unified under u-boot-ti-staging one.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Acked-by: Chase Maupin <chase.maupin@ti.com>
2013-06-05 11:54:36 -04:00
Chase Maupin
c49e7d4275 dra7xx-evm: Update serial console
* Updated the serial console to use ttyO0 which is what the
  evm uses.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-06-04 16:34:03 -04:00
Chase Maupin
e47e400d07 libdrm: Add support for dra7xx-evm
* Change the COMPATIBLE_MACHINE setting to use omap-a15 so that
  the dra7xx-evm machine type is also included.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-06-04 16:34:03 -04:00
Chase Maupin
3e1ab248af linux-ti-staging: Add dra7xx-evm support
* Add the DTB entries for the dra7xx-evm machine type
* Update to the latest git sources which have dra7xx-evm support.
* Update the PV to match the latest source version

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-06-04 16:34:03 -04:00
Denys Dmytriyenko
9772c16b8b am-sysinfo: remove an old outdated svn version
The recipe has been moved to meta-arago-extras long time ago. Moreover, SCM has
changed from svn to git, so this recipe is quite outdated.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-05-14 13:04:40 -04:00
Franklin S. Cooper Jr
2091fb4ea2 am33x-cm3: Split init script into its own package
* 3.8+ kernels use an init script to load the cm3 firmware.
* 3.2 kernel require the cm3 firmware during compile time therefore no init
  script is needed.
* Separate the init script from the main package and place it in its own
  package.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-05-07 11:44:25 -04:00
Denys Dmytriyenko
03397a66d8 linux-ti-staging: add package-specifier for RDEPENDS variable
Run-time variables are package-specific, not recipe.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-05-07 11:35:59 -04:00
Denys Dmytriyenko
f2afcfee58 linux-am335x-psp: fix typo in the filename to use underscore
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-26 17:24:37 -04:00
Denys Dmytriyenko
03fbb49000 u-boot-ti-staging: update to ti2013.04.00 release
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-26 16:54:33 -04:00
Denys Dmytriyenko
418403ee99 linux-ti-staging: update to ti2013.04.00 release
Also, remove do_deploy_append() fix, as it's in oe-core now.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-26 16:54:29 -04:00
Franklin S. Cooper Jr
22b2c79dd0 am33x-cm3: Update to latest cm3 release
Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-22 21:36:41 -04:00
Franklin S. Cooper Jr
8f5baa2153 u-boot: Add am3517 u-boot recipe
* Add correct u-boot recipe for am3517.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-22 21:36:37 -04:00
Franklin S. Cooper Jr
3b2d0910db u-boot-am33x: Update u-boot recipe to 2013.01.01
* Update to latest version of u-boot that supports the 3.2 kernel.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-22 16:23:35 -04:00
Franklin S. Cooper Jr
8a6d2d49dd linux-am335x: Update to latest 3.2 kernel release
* Update to the latest PSP release (version 04.06.00.10) of the 3.2 kernel.
* Rename recipe to match meta-ti kernel recipe naming convention.
* Use in tree defconfig instead of providing a separate defconfig. These
  defconfigs were the same anyway.
* Add additional crypto patches that were needed to fix suspend and resume
  issues.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-22 16:23:31 -04:00
Franklin S. Cooper Jr
bb6646fd96 linux-omap-psp: Update commit
* Update to latest supported release.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-22 16:23:27 -04:00
Denys Dmytriyenko
088a1dbea3 u-boot-ti-staging: update to the latest
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-18 20:14:41 -04:00
Denys Dmytriyenko
0bd05df9cf linux-ti-staging: update to the latest 3.8.8
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-18 20:14:31 -04:00
Chase Maupin
f817807842 linux-ti-staging: make cm3 firmware a run-time dependency
* Make the am33x-cm3 firmware a run-time dependency instead of
  build time since it is no longer required at build time.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-18 15:43:25 -04:00
Chase Maupin
2ad1fd65b8 am33x-cm3: use init script to load firmware
* The PM firmware is now loaded using an init script so make
  the init script installation part of the firmware package.
* Fix up the SRC_URI to the proper format.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-18 15:43:25 -04:00
Chase Maupin
7dc90eb9e2 u-boot-ti-staging: Add SRCPV to the PR
* Add the SRCPV to the PR to make it clear which revision of
  the sources are being built and to match the kernel
  versioning.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-17 20:18:57 -04:00
Chase Maupin
4b0d898ffd setup-defconfig: allow using KERNEL_LOCALVERSION
* Add capability to use KERNEL_LOCALVERSION to set an extra
  version string in the kernel.  This mimics functionality
  submitted to the kernel.bbclass but since this overwrites
  the do_configure it must be added here as well.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-17 20:18:57 -04:00
Denys Dmytriyenko
8f7d03e4a1 tune-cortexa{7,8,9,15}: update tunes from oe-core/master with fixes
Specifically interested in hardfp+thumb+neon

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-10 17:07:20 -04:00
Chase Maupin
aefef7fe95 ti-graphics: Add latest 4.09.00.01 version
* Add the latest 4.09.00.01 version of the graphis SDK.  This
  version will compile against the latest v3.8 kernel.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-05 19:34:00 -04:00
Denys Dmytriyenko
891eddf7a2 linux-ti-staging: update with the latest dss fixes in omap5 dts
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-05 14:31:16 -04:00
Denys Dmytriyenko
8cf7df4efc omap-a15.inc: also set TI staging preferred provider for u-boot
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-03 20:25:23 -04:00
Denys Dmytriyenko
abeba37a5f u-boot-ti-staging: update SRCREV for more omap5 changes, bump PR
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-03 20:25:13 -04:00
Franklin S. Cooper Jr
7c3ef24776 libgles-omap3: Add version 4.08.00.02 of the Graphics SDK
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-02 15:42:39 -04:00
Franklin S. Cooper Jr
372e20c544 omap3-sgx-modules: Add version 4.08.00.02 of the Graphics SDK kernel modules
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-02 15:42:33 -04:00
Franklin S. Cooper Jr
380d514d98 libgles-omap3.inc: Add tweaks needed for newer version of the Graphics SDK
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-02 15:42:27 -04:00
Chase Maupin
9fedd1c4d2 omap5-evm: update U-Boot machine to omap5 uevm
* The U-Boot config to be used in the latest code has been updated
  to use omap5_uevm instead of omap5_evm.
* Update to the latest code to pickup this change and modify the
  machine file as well.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-04-02 15:42:17 -04:00
Chase Maupin
f6fa9fe735 linux: Use setup-defconfig in kernel recipes
* Now that the setup-defconfig.inc file has been moved to the
  meta-ti layer the kernel recipes should include this file.
* This makes way to clear this inclusion from the bbappend files
  in meta-arago

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-29 13:35:17 -04:00
Chase Maupin
9f4cd9900f dra7xx-evm: Add DRA7xx machine type
* Add the dra7xx-evm machine type which is part of the omap-a15
  SOC_FAMILY

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-29 13:35:06 -04:00
Denys Dmytriyenko
913f722e9e linux-ti-staging: one more update to latest 3.8.5
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-28 16:48:54 -04:00
Denys Dmytriyenko
1735c59bb7 linux-ti-staging: rename to have version in name, update to latest
* Update to the latest kernel sources.  This also requires changing
  the dtb file names since the omap5 devices have changed to use
  uevm instead of panda and sevm instead of evm.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
2013-03-28 15:18:57 -04:00
Chase Maupin
233da46564 linux-ti-staging: Add panda dts file as supported DTS
* Add the omap5-panda.dts file as a supported DTS to be built.
  This file is for use on the panda and uEVM boards.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-26 14:35:24 -04:00
Chase Maupin
ca64840bab omap5-evm: Update serial console to proper value
* The serial console for the OMAP5 uEVM is ttyO2 not ttyO0

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-26 14:35:20 -04:00
Chase Maupin
2d10089a70 linux-ti-staging: Update to latest staging kernel
* Update to the latest 3.8.4 based staging kernel

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-26 14:35:17 -04:00
Chase Maupin
0e11ce3049 omap5-evm: Add OMAP5 EVM configuration
* Add the machine configuration for the OMAP5 EVM device.
* Create the omap-a15.inc file to be shared with all OMAP
  Cortex-A15 derivative devices.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-26 14:35:13 -04:00
Chase Maupin
881fcc9599 linux-ti-staging: Add OMAP5 support
* Add the KERNEL_DEVICETREE definitions for omap5-evm
* Add the omap-a15 SOC_FAMILY to the list of COMPATIBLE_MACHINEs

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-26 14:35:10 -04:00
Denys Dmytriyenko
6a02716519 beagleboard: switch default u-boot preference to machine-specific tree
SDKs or other users of meta-ti can still use one of the other recipes for
stability or featureset, by setting PREFERRED_PROVIDER in their config.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:42:00 -04:00
Denys Dmytriyenko
855ff4c8b0 am3517-evm: switch default u-boot preference to machine-specific tree
SDKs or other users of meta-ti can still use one of the other recipes for
stability or featureset, by setting PREFERRED_PROVIDER in their config.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:41:52 -04:00
Denys Dmytriyenko
6c4be0a29a am37x-evm: switch default u-boot preference to machine-specific tree
SDKs or other users of meta-ti can still use one of the other recipes for
stability or featureset, by setting PREFERRED_PROVIDER in their config.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:41:48 -04:00
Denys Dmytriyenko
45b73845d5 am180x: switch default u-boot preference to machine-specific tree
SDKs or other users of meta-ti can still use one of the other recipes for
stability or featureset, by setting PREFERRED_PROVIDER in their config.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:41:43 -04:00
Denys Dmytriyenko
8173631f17 keystone: switch default u-boot preference to machine-specific tree
SDKs or other users of meta-ti can still use one of the other recipes for
stability or featureset, by setting PREFERRED_PROVIDER in their config.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:41:38 -04:00
Denys Dmytriyenko
c670286002 ti33x: switch default u-boot preference to ti-staging tree
SDKs or other users of meta-ti can still use one of the other recipes for
stability or featureset, by setting PREFERRED_PROVIDER in their config.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:41:32 -04:00
Denys Dmytriyenko
6b8e4763e7 u-boot: modify mainline version to use the new .inc file
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:41:27 -04:00
Denys Dmytriyenko
e268e5ab46 u-boot-am33x: modify am33x specific version to use new namespace feature
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:41:22 -04:00
Denys Dmytriyenko
7a62fcc7db u-boot-am37x: modify am37x specific version to use new namespace feature
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:41:12 -04:00
Denys Dmytriyenko
11573bda76 u-boot 2011.12: modify multi-machine version for the new .inc file
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:41:01 -04:00
Denys Dmytriyenko
ae33b7ee8a u-boot-am33x: modify am33x specific version to use new namespace feature
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:40:56 -04:00
Denys Dmytriyenko
34063f07ec u-boot-beagleboard: modify beagleboard specific version to use new namespace feature
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:40:51 -04:00
Denys Dmytriyenko
a8a4e2b8b1 u-boot-am180x: modify am180x specific version to use new namespace feature
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:40:47 -04:00
Denys Dmytriyenko
814aefd0c1 u-boot-keystone: modify keystone specific version to use new namespace feature
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:40:42 -04:00
Denys Dmytriyenko
8a3f708383 u-boot-ti-staging: add new recipe for TI unified staging tree
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:40:35 -04:00
Denys Dmytriyenko
ceb0f4897c u-boot.inc: refactor local include file to base off core with TI customizations
* Introduce own namespace to allow multiple instances of the same base version,
  possibly pulled from different trees or patched/customized for specific SoC.
* Suffix-less variant u-boot_YYYY.MM.bb is reserved for mainline versions of the
  recipe with no or minimal patches, with broader machine selection.
* Recipes for machine- or SoC-specific trees should use corresponding suffix -
  either machine, SoC or the name of the tree.
* The .inc file lets the suffixed recipes to provide virtual/bootloader, u-boot,
  as well as generate conventional u-boot binary packages for direct run-time
  dependencies.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:40:31 -04:00
Denys Dmytriyenko
597e23588a u-boot 2011.09-psp: remove an older no longer used version
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:40:19 -04:00
Denys Dmytriyenko
61dee71e3a u-boot 2011.06: remove an older no longer used version
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:40:14 -04:00
Denys Dmytriyenko
f244c38393 u-boot-git: remove a very old no longer used version
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-25 20:39:51 -04:00
Denys Dmytriyenko
900893454c linux-ti33x-psp 3.1: remove an older outdated 3.1 kernel recipe for ti33x
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Acked-by: Chase Maupin <chase.maupin@ti.com>
2013-03-18 19:24:26 -04:00
Denys Dmytriyenko
2843ce6357 ti33x: switch default preference to ti-staging tree
SDKs or other users of meta-ti can still use one of the older 3.2 recipes for
stability or featureset, by setting PREFERRED_PROVIDER in distro or local config.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Acked-by: Chase Maupin <chase.maupin@ti.com>
2013-03-18 19:24:16 -04:00
Denys Dmytriyenko
164d09c5a6 linux-ti-staging: update to the latest merge of 3.8.3
Switch to using the official git.ti.com URL instead of temp gitorious.ti.com

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Acked-by: Chase Maupin <chase.maupin@ti.com>
2013-03-18 19:24:08 -04:00
Denys Dmytriyenko
a81353cabb linux-omapl138: fix alignment issue of 2.6.37 kernel with gcc-4.7
Patch by Steve Sakoman

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-18 14:41:27 -04:00
Denys Dmytriyenko
b585087534 linux-omap-psp: fix alignment issue of 2.6.37 kernel with gcc-4.7
Patch by Steve Sakoman

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-18 14:41:15 -04:00
Denys Dmytriyenko
adab80bfe5 machines: unify all machines to produce tar.gz instead of tar.bz2 by default
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-12 20:44:39 -04:00
Denys Dmytriyenko
8e7a3d837e linux-ti-staging: update SRCREV and bump MACHINE_KERNEL_PR
* Update SRCREV for the recent merges in TI staging tree, still 3.8.2
* Bump MACHINE_KERNEL_PR to trigger rebuilding out-of-tree components

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-11 17:35:28 -04:00
Chase Maupin
f5530f4905 linux-ti-staging: fix DTB deploy steps
* Until the permanent fix can be picked up in oe-core fix the
  do_deploy function to properly package the dtb files built
  as part of the kernel build.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-11 17:35:19 -04:00
Chase Maupin
7321c84e48 linux-ti-staging: package all dtb files for ti33x
* For the ti33x SOC_FAMILY device package the dtb files for all
  of the am335x boards instead of just the single EVM file.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-11 17:35:12 -04:00
Chase Maupin
dbc9679e93 linux-ti-staging: mark dependencies am335x specific
* The DEPENDS on am33x-cm3 and the installation of the cm3
  firmware is specific to ti33x SOC_FAMILY devices.  Mark those
  pieces as specific so that other devices to not depend on
  am335x cm3 firmware.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-11 17:35:04 -04:00
Chase Maupin
aa8bdcbeff linux-ti-staging: use setup-defconfig
* Use the setup-defconfig.inc functionality to specify the in
  kernel tree defconfig file to use rather than hard coding it
  in the do_configure step.
* This is to make it easier to modify which configs are use by
  other layers as well as supporting additional machines which
  may not use omap2plus_defconfig as needed.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-11 17:34:55 -04:00
Chase Maupin
24111d70d6 setup-defconfig: move from meta-arago to meta-ti
* Moved the setup-defconfig.inc file from meta-arago to meta-ti.
  This functionality is used by the SDKs to allow the option for
  using an in-tree configuration file for the kernel build.
* This option was chosen to make it easy for other layers to
  override the config with their own using the normal OE method
  of specifying a defconfig file in their layer rather than having
  to use some custom variable setting.

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-11 17:34:45 -04:00
Denys Dmytriyenko
918faa12ec ti81x: remove platform configs, kernel, u-boot, since ti81x is not supported
* There is no support for these platforms from meta-ti.
* If someone is willing to maintain them, please let us know or feel free to
  take it to a separate layer.
* Therefore, remove SoC and machine configs, kernel, u-boot and X11 configs

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-11 16:48:15 -04:00
Denys Dmytriyenko
67493ea858 omap3-touchbook: remove machine definition, since it's unsupported
There is no support for this device from meta-ti. Plus I don't have the device.
If there's anyone willing to maintain it, please let me know or feel free to
take it to a separate layer.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-11 16:48:15 -04:00
Denys Dmytriyenko
14a20a715c hawkboard: remove machine definition, since it's unsupported
There is no support for this board from meta-ti. Plus I don't have the board.
If there's anyone willing to maintain it, please let me know.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-11 16:48:15 -04:00
Denys Dmytriyenko
5d0be86675 am180x: cleanup machine config, remove common SoC settings
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-08 16:17:36 -05:00
Denys Dmytriyenko
4c74132530 keystone: unify and cleanup configs
* Centralize common/SoC settings in keystone.inc SOC_FAMILY config.
* Set/override uncommon specifics in machine configs.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-08 16:17:22 -05:00
Denys Dmytriyenko
7251d2309b omap4, pandaboard: unify and cleanup configs
* Centralize common/SoC settings in omap4.inc SOC_FAMILY config.
* Set/override uncommon specifics in machine configs.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-08 16:17:11 -05:00
Denys Dmytriyenko
0c5a45b423 ti33x, am335x, beaglebone: unify and cleanup configs
* Centralize common/SoC settings in ti33x.inc SOC_FAMILY config.
* Set/override uncommon specifics in machine configs.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-08 16:16:56 -05:00
Denys Dmytriyenko
21ffcc7614 omap3, am37x, am3517, beagleboard: unify and cleanup configs
* Centralize common/SoC settings in omap3.inc SOC_FAMILY config.
* Set/override uncommon specifics in machine configs.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-08 16:16:38 -05:00
Denys Dmytriyenko
a7288a2712 linux-omapl138: correct recipe's DESCRIPTION
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-08 16:16:20 -05:00
Denys Dmytriyenko
7d68b3bd60 tune-cortexa{15,7}: update tunes files with recent changes in oe-core
* PACKAGE_EXTRA_ARCHS
* appending to TUNE_FEATURES
* TUNE for thumb+neon

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-05 17:06:47 -05:00
Robert P. J. Day
814a292394 u-boot: unify denx.de SRC_URIs to match all others
Every other u-boot git SRC_URI has a different value, so make the odd
ones out consistent with the rest, as in:

-SRC_URI = "git://www.denx.de/git/u-boot.git ...
+SRC_URI = "git://git.denx.de/u-boot.git ...

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-04 12:44:06 -05:00
Denys Dmytriyenko
159989762d multi-kernel: match oe-core for MODULE_IMAGE_BASE_NAME, set it conditionally
Thanks to Robert P. J. Day, MODULE_IMAGE_BASE_NAME was added to oe-core - only
~3.5 years after it got into Classic-OE and with a typo of MODULE_*, not plural
MODULES_*, so match it here and set conditionally.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-04 12:43:52 -05:00
Denys Dmytriyenko
36fde3ec41 linux-omap: replace use of FILESPATHPKG with FILESEXTRAPATHS
Thanks to Robert P. J. Day for reporting.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-04 12:14:48 -05:00
Denys Dmytriyenko
2e71db8625 u-boot: add latest mainline release 2013.01.01
* This is a pure _mainline_ version w/o any patches on top.
* Should work reasonably well for most platforms and is provided as an
  alternative to specialized pre-integrated and patched versions.
* It is not enabled by default, since specialized versions usually have
  more features and better support, although maybe slightly older.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-04 11:43:25 -05:00
Denys Dmytriyenko
e7c7da790f u-boot 2012.10: add the latest SDK 05.06 version from meta-arago
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-04 11:36:05 -05:00
Denys Dmytriyenko
3a000bd536 linux-ti-staging: add recipe for tracking TI latest staging tree
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-03-04 11:30:36 -05:00
Hao Zhang
db2b57fd14 keystone-evm config: add ubifs support
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-28 15:19:33 -05:00
Denys Dmytriyenko
724db5b366 Revert "linux-omap3: Add supported kernel recipe for am37x-evm and am3517-evm"
The same recipe already exists under linux-omap-psp name.

This reverts commit 153b5ed063.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-28 14:59:20 -05:00
Franklin S. Cooper Jr
e851afed41 machine configs: Add SGX to MACHINE_FEATURES
* Add sgx to MACHINE_FEATURES to indicate that a particular machine supports
  sgx.
* TI chips are available in multiple variants including some that supports sgx
  while others do not.
* By adding sgx as a machine feature other layers can create generic
  packagegroups or images for a particular soc but will only include sgx
  dependencies if the particular machine has sgx support.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-25 21:46:29 -05:00
Franklin S. Cooper Jr
233882aa2b linux: Add kernel version 3.3.7 for beagleboard
Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-25 15:36:02 -05:00
Franklin S. Cooper Jr
9ff3bd4b3d linux-omap3: Add supported kernel recipe for am37x-evm and am3517-evm
Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-25 15:35:42 -05:00
Peter A. Bigot
41159b9b78 libgles-omap3: ignore QA errors
This patch allows libgles-omap3 to build on the danny branch.  The following
warnings are not addressed:

 WARNING: libgles-omap3: No generic license file exists for: proprietary-binary in any provider
 WARNING: QA Issue: libgles-omap3: Files/directories were installed but not shipped
  /usr/lib/ES2.0
 WARNING: libgles-omap3: The compile log indicates that host include and/or library paths were used.
         Please check the log '/prj/oe/omap/build-gumstix-community-danny/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/libgles-omap3-4.05.00.03-r35/temp/log.do_compile' for more information.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-17 18:01:16 -05:00
Franklin S. Cooper Jr
1ac81a48bc omap3-sgx-modules: Add v4.08.00.01 of the SGX modules
* Add version 4.08.00.01 of the SGX modules.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-17 17:14:11 -05:00
Franklin S. Cooper Jr
81819baccb libgles-omap3: Add v4.08.00.01 of the Graphics SDK
* Add version v4.08.00.01 of the Graphics SDK.
* Add X11 support via DRI/DRM Xorg driver
* Replace pvrsrvinit with pvrsrvctl (Imagination Technologies based change)

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-17 17:14:11 -05:00
Denys Dmytriyenko
ae3d571f28 machines: set default virtual/bootloader for remaining machines
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-17 16:49:28 -05:00
Chase Maupin
bbf54c833d am335x-evm: Increase UBI max size to 500MB
* Based on the EVM and beaglebone + NAND memory cape we can
  increase the base file system size to 500MB since by default
  there is about 504MB of space allocated to the file system
  partition in the NAND.
* The max size in LEBs was determined using the formula at
  http://processors.wiki.ti.com/index.php/UBIFS_Support

Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-17 16:23:00 -05:00
Peter A. Bigot
44c42244aa linux-mainline 3.2: update beagleboard defconfig
Link the TLC59108 driver statically so ULCD7 initialization occurs
automatically as it did before f0e2305c7e which removed the initialization
from u-boot.  (Angstrom-v2012.12 does not include this module by default.)

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-17 15:38:52 -05:00
Franklin S. Cooper Jr
800056c5d5 u-boot_2012.04.01: Add latest u-boot recipe for am37x-evm
Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-12 18:25:02 -05:00
Franklin S. Cooper Jr
15420045f6 ti-ocf-crypto-module: Port ti-ocf-crypto-module from Arago
* Recipe pulls in ti-ocf-crypto-module from gforge
* For am37x, this module allows access to the crypto hardware accelerators
  through OCF-Linux.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-12 18:24:57 -05:00
Franklin S. Cooper Jr
f3057de84d u-boot_2010.12-psp03.21.00.04.sdk: Add latest u-boot recipe for am180x-evm
Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-12 18:24:53 -05:00
Franklin S. Cooper Jr
b8cbfa1437 ti-pru-sw-edma-driver: Port PRU SW edma driver from Arago
* Add PRU SW edma driver recipe for the omapl138 machines

* This recipe builds and installs an edma driver module that supports the
  edma user space libraries built by the ti-pru-sw-edma-library recipe.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-12 18:24:48 -05:00
Franklin S. Cooper Jr
746e85779b linux-omapl138-psp: Add latest linux-omapl138 patches
* Add latest patches to linux-omapl138 that were added since this recipe was
  added to meta-ti.
* Update to latest am180x-evm defconfig
* Mimic the following commits from arago:

  linux-davinci: update to add mmc patches

    * Optimizations to reduce overhead on weak platforms

  linux: disable DMA for MUSB

    * For the am3517, am180x, and am335x devices the CPPI 4.1 DMA
      should NOT be used for the MUSB controller.  Using this DMA
      can cause the controller to lockup.
    * Updated the defconfigs to set the use of PIO mode
    * Added a patch to updated the PIO mode description to make it
      easier to determine when it can be used.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-12 18:24:43 -05:00
Franklin S. Cooper Jr
4689b0e62c linux-omapl138-psp_2.6.37: Add MACHINE_KERNEL_PR and fix white space issues.
* Add MACHINE_KERNEL_PR variable to enable future tweaks to this recipe.
* Convert tabs to whitespaces

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-12 18:24:37 -05:00
Franklin S. Cooper Jr
e7c3920f9e machine config: Correct SERIAL_CONSOLE variable for am3517-evm and am37x-evm
* When testing on am37x-evm I noticed that no prompt to login was ever shown
  when connected via serial port.
* I finally noticed that the SERIAL_CONSOLE variable was set incorrectly and
  didn't match the value in the old Arago layer.
* After using the values specific in the machine file in the Arago layer I was
  able to login via serial port.
* This has been verified on both the am37x-evm and am3517-evm.

Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-12 14:56:19 -05:00
Denys Dmytriyenko
353bd874f2 am335x-evm, omap3*: drop remaining TARGET_ARCH, wrecking sstate
Bump MACHINE_KERNEL_PR to rebuild the correct sstate.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-02-12 14:50:49 -05:00
Murali Karicheri
a587b90f98 keystone: update defconfig with latest for mcsdk alpha7
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-01-29 14:44:32 -05:00
Murali Karicheri
a1934f3d95 keystone: update kernel and bootloaders recipes for mcsdk alpha7 release
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-01-29 14:44:20 -05:00
Murali Karicheri
e5875d9052 keystone: boot-monitor: add initial recipe
This adds recipe to build boot monitor image. Boot monitor is
a standalone image that is loaded and executed from u-boot to
replace the RBL provided monitor code in ARM with Linux boot
specific code.

Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-01-28 18:48:36 -05:00
Denys Dmytriyenko
7cdc415098 multi-kernel.inc: drop use of KERNEL_CCSUFFIX to match oe-core
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-01-28 18:48:13 -05:00
Denys Dmytriyenko
61ecacbdf3 multi-kernel.inc: repeat do_configure after do_compileconfigs
Populate default defconfig into .config and process with oldconfig target

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-01-28 18:47:40 -05:00
Cliff Brake
bf6acb5e04 beagleboard.conf: add additional sound modules
require for audio to function

Signed-off-by: Cliff Brake <cbrake@bec-systems.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-01-28 18:47:23 -05:00
Cliff Brake
2cc3f0ace5 linux_3.1: add extra '#' to multi-line comment
Bitbake is getting more particular:
ERROR: There is a confusing multiline, partially commented expression on
line 27 of file /scratch/oe/oe-build-core-3/sources/meta-ti/...
Please clarify whether this is all a comment or should be parsed.

Signed-off-by: Cliff Brake <cbrake@bec-systems.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-01-28 18:46:58 -05:00
Denys Dmytriyenko
47bc5e11ec linux-keystone: update to the latest dev release for keystone
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-01-24 14:01:17 -05:00
Denys Dmytriyenko
6f1ea750be u-boot: update to the latest dev release for keystone
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-01-24 14:01:13 -05:00
Denys Dmytriyenko
1e898d9b61 netbase: fix file search path for 'interfaces' file
This .bbappend file is used to override the 'interfaces' file for certain
targets. The current version is broken in that it does not search the correct
path(s).

Thanks to Robert P. J. Day and Gary Thomas for spotting the issue and providing
patches.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2013-01-16 13:03:59 -05:00
Denys Dmytriyenko
0a764d7336 linux-keystone: update from version 3.6-rc6 to 3.6.6
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2012-12-03 16:16:04 -05:00
Denys Dmytriyenko
ff74447a23 keystone: bump MACHINE_KERNEL_PR for previous changes
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2012-11-30 11:46:54 -05:00
Denys Dmytriyenko
c2f1b57a6c keystone-evm: update serial port and virtual terminal settings
Keystone uses the old ttyS0 serial name instead of the new ttyO0.
Also disable spawning gettys on virtual terminals.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2012-11-30 11:35:00 -05:00
Denys Dmytriyenko
b9276bfe02 keystone-evm.conf: enable cpio images by default
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2012-11-27 11:42:15 -05:00
244 changed files with 8479 additions and 35867 deletions

View File

@@ -11,9 +11,8 @@ UBOOT_LOADADDRESS = "0xc0008000"
IMAGE_FSTYPES += "tar.gz ubi"
MACHINE_FEATURES = "kernel26 serial ethernet"
SERIAL_CONSOLE = "115200 ttyS2"
PREFERRED_PROVIDER_virtual/kernel = "linux-omapl138-psp"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-am180x"
PREFERRED_PROVIDER_u-boot = "u-boot-am180x"

View File

@@ -1,23 +1,18 @@
#@TYPE: Machine
#@NAME: AM335x EVM
#@DESCRIPTION: Machine configuration for the TI AM335x EVM
TARGET_ARCH = "arm"
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-video-fbdev"
GUI_MACHINE_CLASS = "smallscreen"
require conf/machine/include/ti33x.inc
# Use built-in LCD by default
XSERVER += "xf86-input-tslib"
GUI_MACHINE_CLASS = "smallscreen"
MACHINE_FEATURES += "touchscreen"
IMAGE_FSTYPES += "ubi tar.gz"
SERIAL_CONSOLE = "115200 ttyO0"
PREFERRED_PROVIDER_virtual/kernel = "linux-ti33x-psp"
# UBI information. Note that this is board and kernel specific. Changes
# in your kernel port may require changes in these variables. For more
# details about this board please see
@@ -29,7 +24,7 @@ PREFERRED_PROVIDER_virtual/kernel = "linux-ti33x-psp"
# UBI: logical eraseblock size: 126976 bytes
# from ubiattach stdout:
# UBI device number 0, total 1988 LEBs
MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 1988"
MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 3836"
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# from dmesg:
@@ -38,10 +33,3 @@ MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 1988"
# UBI: sub-page size: 512
# UBI: VID header offset: 2048 (aligned 2048)
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512 -O 2048"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
UBOOT_ARCH = "arm"
UBOOT_MACHINE = "am335x_evm_config"
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat ext2 screen touchscreen"

View File

@@ -2,38 +2,28 @@
#@NAME: AM3517 EVM
#@DESCRIPTION: Machine configuration for the TI Sitara AM3517 EVM
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-input-mouse \
xf86-input-tslib \
xf86-video-omapfb \
xf86-input-keyboard"
GUI_MACHINE_CLASS = "smallscreen"
require conf/machine/include/omap3.inc
# Ship all kernel modules
# Use built-in LCD by default
XSERVER += "xf86-input-tslib"
GUI_MACHINE_CLASS = "smallscreen"
MACHINE_FEATURES += "touchscreen ethernet"
IMAGE_FSTYPES += "ubi tar.gz"
EXTRA_IMAGECMD_jffs2 = "-lnp -e 0x20000 -s 2048"
SERIAL_CONSOLE = "115200 ttyS2"
SERIAL_CONSOLE = "115200 ttyO2"
USE_VT = "2"
PREFERRED_PROVIDER_virtual/kernel = "linux-omap-psp"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-am3517"
PREFERRED_PROVIDER_u-boot = "u-boot-am3517"
UBOOT_ARCH = "arm"
UBOOT_MACHINE = "am3517_evm_config"
XLOAD_MACHINE = "am3517evm_config"
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat ext2 screen touchscreen ethernet"
# NOTE: there are NAND and OneNAND versions of this board...
# do ubiattach /dev/ubi_ctrl -m 4
# From dmesg:
# UBI: smallest flash I/O unit: 2048
@@ -48,4 +38,3 @@ MKUBIFS_ARGS = "-m 2048 -e 129024 -c 1996"
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512"

View File

@@ -2,37 +2,23 @@
#@NAME: AM37x EVM
#@DESCRIPTION: Machine configuration for the TI AM37x EVM
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-input-mouse \
xf86-input-tslib \
xf86-video-omapfb \
xf86-input-keyboard"
GUI_MACHINE_CLASS = "smallscreen"
require conf/machine/include/omap3.inc
# Ship all kernel modules
# Use built-in LCD by default
XSERVER += "xf86-input-tslib"
GUI_MACHINE_CLASS = "smallscreen"
MACHINE_FEATURES += "touchscreen ethernet"
IMAGE_FSTYPES += "ubi tar.gz"
EXTRA_IMAGECMD_jffs2 = "-lnp -e 0x20000 -s 2048"
SERIAL_CONSOLE = "115200 ttyS0"
SERIAL_CONSOLE = "115200 ttyO0"
PREFERRED_PROVIDER_virtual/kernel = "linux-omap-psp"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
UBOOT_ARCH = "arm"
UBOOT_MACHINE = "omap3_evm_config"
XLOAD_MACHINE = "omap3evm_config"
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat ext2 screen touchscreen"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-am37x"
PREFERRED_PROVIDER_u-boot = "u-boot-am37x"
# NOTE: there are NAND and OneNAND versions of this board...
# do ubiattach /dev/ubi_ctrl -m 4
# From dmesg:
# UBI: smallest flash I/O unit: 2048
@@ -47,4 +33,3 @@ MKUBIFS_ARGS = "-m 2048 -e 129024 -c 1996"
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512"

View File

@@ -1,7 +0,0 @@
#@TYPE: Machine
#@NAME: AM389x evm
#@DESCRIPTION: Machine configuration for the AM389x evm
require conf/machine/include/ti814x.inc
IMAGE_FSTYPES += "ubi tar.gz"

View File

@@ -1,7 +0,0 @@
#@TYPE: Machine
#@NAME: am389x evm
#@DESCRIPTION: Machine configuration for the am389x evm
require conf/machine/include/ti816x.inc
IMAGE_FSTYPES += "ubi tar.gz"

View File

@@ -2,27 +2,18 @@
#@NAME: Beagleboard machine
#@DESCRIPTION: Machine configuration for the http://beagleboard.org/ board
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-input-mouse \
xf86-video-omapfb \
xf86-input-keyboard"
require conf/machine/include/omap3.inc
# Only has DVI connector for external screen
GUI_MACHINE_CLASS = "bigscreen"
require conf/machine/include/omap3.inc
# SPL build
EXTRA_IMAGEDEPENDS = "u-boot"
PREFERRED_PROVIDER_virtual/kernel = "linux-mainline"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-beagleboard"
PREFERRED_PROVIDER_u-boot = "u-boot-beagleboard"
IMAGE_FSTYPES += "tar.gz ubi"
EXTRA_IMAGECMD_jffs2 = "-lnp "
EXTRA_IMAGECMD_jffs2 = "-lnp"
# Guesswork
SERIAL_CONSOLE = "115200 ttyO2"
UBOOT_MACHINE = "omap3_beagle_config"
@@ -44,8 +35,6 @@ MKUBIFS_ARGS = "-m 2048 -e 129024 -c 1996"
# UBI: sub-page size: 512
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512"
# and sdio
MACHINE_FEATURES = "kernel26 screen apm usbgadget usbhost vfat alsa"
# For a modularized kernel we want to drag in networking, sound, rtc etc."
MACHINE_EXTRA_RRECOMMENDS = "kernel-module-smsc95xx kernel-module-snd-soc-twl4030 kernel-module-rtc-twl"
MACHINE_EXTRA_RRECOMMENDS = "kernel-module-smsc95xx kernel-module-snd-soc-twl4030 kernel-module-rtc-twl \
kernel-module-snd-soc-omap kernel-module-snd-soc-omap-mcbsp kernel-module-snd-soc-omap3beagle"

View File

@@ -2,25 +2,13 @@
#@NAME: BeagleBone machine
#@DESCRIPTION: Machine configuration for the http://beagleboard.org/bone board
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-video-fbdev"
require conf/machine/include/ti33x.inc
# Only has DVI connector for external screen
GUI_MACHINE_CLASS = "bigscreen"
require conf/machine/include/ti33x.inc
EXTRA_IMAGEDEPENDS = "u-boot"
IMAGE_FSTYPES += "tar.gz"
PREFERRED_PROVIDER_virtual/kernel = "linux-ti33x-psp"
IMAGE_FSTYPES += "tar.bz2 "
# Guesswork
SERIAL_CONSOLE = "115200 ttyO0"
UBOOT_MACHINE = "am335x_evm_config"
# and sdio
MACHINE_FEATURES = "kernel26 screen apm usbgadget usbhost vfat alsa"

View File

@@ -1,5 +0,0 @@
#@TYPE: Machine
#@NAME: c6a814x evm
#@DESCRIPTION: Machine configuration for the c6a814x evm
require conf/machine/include/ti814x.inc

View File

@@ -1,5 +0,0 @@
#@TYPE: Machine
#@NAME: c6a816x evm
#@DESCRIPTION: Machine configuration for the c6a816x evm
require conf/machine/include/ti816x.inc

View File

@@ -1,5 +0,0 @@
#@TYPE: Machine
#@NAME: DM814x evm
#@DESCRIPTION: Machine configuration for the DM814x evm
require conf/machine/include/ti814x.inc

View File

@@ -0,0 +1,39 @@
#@TYPE: Machine
#@NAME: DRA7xx EVM
#@DESCRIPTION: Machine configuration for the TI DRA7xx EVM
require conf/machine/include/omap-a15.inc
IMAGE_FSTYPES += "ubi tar.gz"
SERIAL_CONSOLE = "115200 ttyO0"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-dra7xx"
PREFERRED_PROVIDER_u-boot = "u-boot-dra7xx"
UBOOT_MACHINE = "dra7xx_evm_config"
# UBI information. Note that this is board and kernel specific. Changes
# in your kernel port may require changes in these variables. For more
# details about this board please see
# http://processors.wiki.ti.com/index.php/UBIFS_Support
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# From dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: logical eraseblock size: 126976 bytes
# from ubiattach stdout:
# UBI device number 0, total 1988 LEBs
MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 3836"
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# from dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
# UBI: VID header offset: 2048 (aligned 2048)
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512 -O 2048"
# Currently removing the sgx machine feature because there is no SGX package
# available for omap5
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat ext2 screen touchscreen"

View File

@@ -1,29 +0,0 @@
#@TYPE: Machine
#@NAME: OMAP-L138 based board
#@DESCRIPTION: Machine configuration for the TI Hawkboard
require conf/machine/include/davinci.inc
require conf/machine/include/omapl138.inc
UBOOT_MACHINE = "da850_omapl138_evm_config"
UBOOT_ENTRYPOINT = "0xc0008000"
UBOOT_LOADADDRESS = "0xc0008000"
MACHINE_FEATURES = "kernel26 serial ethernet ide screen"
# do ubiattach /dev/ubi_ctrl -m 4
# From dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: logical eraseblock size: 126976 bytes
# from ubiattach stdout:
# UBI device number 0, total 971 LEBs (123293696 bytes, 117.6 MiB), available 958 LEBs (121643008 bytes, 116.0 MiB), LEB size 126976 bytes (124.0 KiB)
MKUBIFS_ARGS = "-m 2048 -e 126976 -c 948"
# do ubiattach /dev/ubi_ctrl -m 4
# from dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512"
SERIAL_CONSOLE = "115200 ttyS2"

View File

@@ -1,14 +1,13 @@
require conf/machine/include/tune-arm926ejs.inc
# Increase this everytime you change something in the kernel
MACHINE_KERNEL_PR = "r51"
MACHINE_KERNEL_PR = "r53"
KERNEL_IMAGETYPE = "uImage"
PREFERRED_PROVIDER_virtual/kernel = "linux-davinci"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
UBOOT_MACHINE = "davinci_dvevm_config"
UBOOT_ENTRYPOINT = "0x80008000"
@@ -19,6 +18,4 @@ EXTRA_IMAGEDEPENDS += "u-boot"
SERIAL_CONSOLE ?= "115200 ttyS0"
EXTRA_IMAGECMD_jffs2 = "--pad --little-endian --eraseblock=0x20000 -n"
#ROOT_FLASH_SIZE = "29"
MACHINE_FEATURES = "kernel26 serial ethernet usbhost usbgadget mmc alsa"

View File

@@ -2,13 +2,22 @@ SOC_FAMILY = "keystone"
require conf/machine/include/soc-family.inc
require conf/machine/include/tune-cortexa15.inc
PREFERRED_PROVIDER_virtual/kernel = "linux-keystone"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-keystone"
PREFERRED_PROVIDER_u-boot = "u-boot-keystone"
# Increase this everytime you change something in the kernel
MACHINE_KERNEL_PR = "r1"
MACHINE_KERNEL_PR = "r6"
KERNEL_IMAGETYPE = "uImage"
UBOOT_MACHINE = "tci6638_evm_config"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
EXTRA_IMAGEDEPENDS += "u-boot"
EXTRA_IMAGEDEPENDS += "boot-monitor"
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat"

View File

@@ -0,0 +1,26 @@
SOC_FAMILY = "omap-a15"
require conf/machine/include/soc-family.inc
require conf/machine/include/tune-cortexa15.inc
# Increase this everytime you change something in the kernel
MACHINE_KERNEL_PR = "r1"
PREFERRED_PROVIDER_virtual/kernel = "linux-ti-staging"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-ti-staging"
PREFERRED_PROVIDER_u-boot = "u-boot-ti-staging"
KERNEL_IMAGETYPE = "uImage"
UBOOT_ARCH = "arm"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
EXTRA_IMAGEDEPENDS += "virtual/bootloader"
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-video-fbdev"
GUI_MACHINE_CLASS = "smallscreen"

View File

@@ -2,14 +2,37 @@ SOC_FAMILY = "omap3"
require conf/machine/include/soc-family.inc
require conf/machine/include/tune-cortexa8.inc
PREFERRED_PROVIDER_virtual/kernel = "linux-omap"
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
# For built-in LCD, add xf86-input-tslib
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-input-mouse \
xf86-video-omapfb \
xf86-input-keyboard"
# Default to external video, change to smallscreen for built-in LCD
GUI_MACHINE_CLASS = "bigscreen"
# Increase this everytime you change something in the kernel
MACHINE_KERNEL_PR = "r122"
MACHINE_KERNEL_PR = "r125"
KERNEL_IMAGETYPE = "uImage"
# Default providers, may need to override for specific machines
PREFERRED_PROVIDER_virtual/kernel = "linux-omap"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
UBOOT_ARCH = "arm"
UBOOT_MACHINE = "omap3_evm_config"
XLOAD_MACHINE = "omap3evm_config"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
EXTRA_IMAGEDEPENDS += "u-boot x-load"
# If SPL is not used, may need to add x-load
EXTRA_IMAGEDEPENDS += "u-boot"
# List common SoC features, may need to add touchscreen/ethernet for specific machines
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat ext2 screen alsa sgx"

View File

@@ -20,6 +20,8 @@ MACHINE_KERNEL_PR = "r1"
KERNEL_IMAGETYPE = "uImage"
UBOOT_MACHINE = "omap4_panda_config"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"

View File

@@ -2,13 +2,36 @@ SOC_FAMILY = "ti33x"
require conf/machine/include/soc-family.inc
require conf/machine/include/tune-cortexa8.inc
PREFERRED_PROVIDER_virtual/kernel = "linux-ti33x-psp"
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
# For built-in LCD, add xf86-input-tslib
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-input-mouse \
xf86-video-fbdev \
xf86-input-keyboard"
# Default to external video, change to smallscreen for built-in LCD
GUI_MACHINE_CLASS = "bigscreen"
# Increase this everytime you change something in the kernel
MACHINE_KERNEL_PR = "r16"
MACHINE_KERNEL_PR = "r19"
# Default providers, may need to override for specific machines
PREFERRED_PROVIDER_virtual/kernel = "linux-ti-staging"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-ti-staging"
PREFERRED_PROVIDER_u-boot = "u-boot-ti-staging"
KERNEL_IMAGETYPE = "uImage"
UBOOT_ARCH = "arm"
UBOOT_MACHINE = "am335x_evm_config"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
EXTRA_IMAGEDEPENDS += "u-boot"
# List common SoC features, may need to add touchscreen for specific machines
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat ext2 screen alsa ethernet sgx"

View File

@@ -1,26 +0,0 @@
SOC_FAMILY = "ti814x"
require conf/machine/include/soc-family.inc
require conf/machine/include/tune-cortexa8.inc
PREFERRED_PROVIDER_virtual/kernel = "linux-ti81xx-psp"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
# Increase this everytime you change something in the kernel
MACHINE_KERNEL_PR = "r2"
KERNEL_IMAGETYPE = "uImage"
UBOOT_ARCH = "arm"
UBOOT_MACHINE = "ti8148_evm_config_nand"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
# Only build u-boot
EXTRA_IMAGEDEPENDS += "u-boot"
# Ship all kernel modules
IMAGE_FSTYPES += "jffs2 tar.bz2"
EXTRA_IMAGECMD_jffs2 = "-lqn -e 128"
SERIAL_CONSOLE = "115200 ttyO0"
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat ext2 ethernet"

View File

@@ -1,26 +0,0 @@
SOC_FAMILY = "ti816x"
require conf/machine/include/soc-family.inc
require conf/machine/include/tune-cortexa8.inc
PREFERRED_PROVIDER_virtual/kernel = "linux-ti81xx-psp"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
# Increase this everytime you change something in the kernel
MACHINE_KERNEL_PR = "r2"
KERNEL_IMAGETYPE = "uImage"
UBOOT_ARCH = "arm"
UBOOT_MACHINE = "ti8168_evm_config"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
# Only build u-boot
EXTRA_IMAGEDEPENDS += "u-boot"
# Ship all kernel modules
IMAGE_FSTYPES += "jffs2 tar.bz2"
EXTRA_IMAGECMD_jffs2 = "-lqn -e 128"
SERIAL_CONSOLE = "115200 ttyO2"
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat ext2 ethernet"

View File

@@ -1,4 +1,4 @@
DEFAULTTUNE ?= "cortexa15-neon"
DEFAULTTUNE ?= "armv7a-neon"
require conf/machine/include/arm/arch-armv7a.inc
@@ -6,19 +6,31 @@ TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor optimizations"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "cortexa15", "-mtune=cortex-a15", "", d)}"
# Little Endian base configs
AVAILTUNES += "cortexa15 cortexa15t cortexa15-neon"
AVAILTUNES += "cortexa15 cortexa15t cortexa15-neon cortexa15t-neon"
ARMPKGARCH_tune-cortexa15 = "cortexa15"
ARMPKGARCH_tune-cortexa15t = "cortexa15"
ARMPKGARCH_tune-cortexa15-neon = "cortexa15"
ARMPKGARCH_tune-cortexa15t-neon = "cortexa15"
TUNE_FEATURES_tune-cortexa15 = "${TUNE_FEATURES_tune-armv7a} cortexa15"
TUNE_FEATURES_tune-cortexa15t = "${TUNE_FEATURES_tune-armv7at} cortexa15"
TUNE_FEATURES_tune-cortexa15-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa15"
PACKAGE_EXTRA_ARCHS_tune-cortexa15 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}"
PACKAGE_EXTRA_ARCHS_tune-cortexa15t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"
PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}"
TUNE_FEATURES_tune-cortexa15t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortexa15"
PACKAGE_EXTRA_ARCHS_tune-cortexa15 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa15-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa15t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa15-vfp cortexa15-vfp-neon"
PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-vfp-neon cortexa15t2-vfp cortexa15t2-vfp-neon"
# VFP Tunes
AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon"
AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon"
ARMPKGARCH_tune-cortexa15hf = "cortexa15"
ARMPKGARCH_tune-cortexa15thf = "cortexa15"
ARMPKGARCH_tune-cortexa15hf-neon = "cortexa15"
ARMPKGARCH_tune-cortexa15thf-neon = "cortexa15"
TUNE_FEATURES_tune-cortexa15hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa15"
TUNE_FEATURES_tune-cortexa15thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa15"
TUNE_FEATURES_tune-cortexa15hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa15"
PACKAGE_EXTRA_ARCHS_tune-cortexa15hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}"
PACKAGE_EXTRA_ARCHS_tune-cortexa15thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf}"
PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}"
TUNE_FEATURES_tune-cortexa15thf-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} cortexa15"
PACKAGE_EXTRA_ARCHS_tune-cortexa15hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa15hf-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa15thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa15hf-vfp cortexa15hf-vfp-neon"
PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-vfp-neon cortexa15t2hf-vfp cortexa15t2hf-vfp-neon"

View File

@@ -1,4 +1,4 @@
DEFAULTTUNE ?= "cortexa7-neon"
DEFAULTTUNE ?= "armv7a-neon"
require conf/machine/include/arm/arch-armv7a.inc
@@ -6,19 +6,31 @@ TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor optimizations"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "cortexa7", "-mtune=cortex-a7", "", d)}"
# Little Endian base configs
AVAILTUNES += "cortexa7 cortexa7t cortexa7-neon"
AVAILTUNES += "cortexa7 cortexa7t cortexa7-neon cortexa7t-neon"
ARMPKGARCH_tune-cortexa7 = "cortexa7"
ARMPKGARCH_tune-cortexa7t = "cortexa7"
ARMPKGARCH_tune-cortexa7-neon = "cortexa7"
ARMPKGARCH_tune-cortexa7t-neon = "cortexa7"
TUNE_FEATURES_tune-cortexa7 = "${TUNE_FEATURES_tune-armv7a} cortexa7"
TUNE_FEATURES_tune-cortexa7t = "${TUNE_FEATURES_tune-armv7at} cortexa7"
TUNE_FEATURES_tune-cortexa7-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa7"
PACKAGE_EXTRA_ARCHS_tune-cortexa7 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}"
PACKAGE_EXTRA_ARCHS_tune-cortexa7t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}"
PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}"
TUNE_FEATURES_tune-cortexa7t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortexa7"
PACKAGE_EXTRA_ARCHS_tune-cortexa7 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa7-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa7t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa7-vfp cortexa7-vfp-neon"
PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-vfp-neon cortexa7t2-vfp cortexa7t2-vfp-neon"
# VFP Tunes
AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon"
AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon"
ARMPKGARCH_tune-cortexa7hf = "cortexa7"
ARMPKGARCH_tune-cortexa7thf = "cortexa7"
ARMPKGARCH_tune-cortexa7hf-neon = "cortexa7"
ARMPKGARCH_tune-cortexa7thf-neon = "cortexa7"
TUNE_FEATURES_tune-cortexa7hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa7"
TUNE_FEATURES_tune-cortexa7thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa7"
TUNE_FEATURES_tune-cortexa7hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa7"
PACKAGE_EXTRA_ARCHS_tune-cortexa7hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}"
PACKAGE_EXTRA_ARCHS_tune-cortexa7thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf}"
PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}"
TUNE_FEATURES_tune-cortexa7thf-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} cortexa7"
PACKAGE_EXTRA_ARCHS_tune-cortexa7hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa7hf-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa7thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa7hf-vfp cortexa7hf-vfp-neon"
PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon"

View File

@@ -0,0 +1,36 @@
DEFAULTTUNE ?= "armv7a-neon"
require conf/machine/include/arm/arch-armv7a.inc
TUNEVALID[cortexa8] = "Enable Cortex-A8 specific processor optimizations"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "cortexa8", "-mtune=cortex-a8", "", d)}"
# Little Endian base configs
AVAILTUNES += "cortexa8 cortexa8t cortexa8-neon cortexa8t-neon"
ARMPKGARCH_tune-cortexa8 = "cortexa8"
ARMPKGARCH_tune-cortexa8t = "cortexa8"
ARMPKGARCH_tune-cortexa8-neon = "cortexa8"
ARMPKGARCH_tune-cortexa8t-neon = "cortexa8"
TUNE_FEATURES_tune-cortexa8 = "${TUNE_FEATURES_tune-armv7a} cortexa8"
TUNE_FEATURES_tune-cortexa8t = "${TUNE_FEATURES_tune-armv7at} cortexa8"
TUNE_FEATURES_tune-cortexa8-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa8"
TUNE_FEATURES_tune-cortexa8t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortexa8"
PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa8-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa8t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa8-vfp cortexa8t2-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa8-vfp cortexa8-vfp-neon"
PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-vfp-neon cortexa8t2-vfp cortexa8t2-vfp-neon"
# VFP Tunes
AVAILTUNES += "cortexa8hf cortexa8thf cortexa8hf-neon cortexa8thf-neon"
ARMPKGARCH_tune-cortexa8hf = "cortexa8"
ARMPKGARCH_tune-cortexa8thf = "cortexa8"
ARMPKGARCH_tune-cortexa8hf-neon = "cortexa8"
ARMPKGARCH_tune-cortexa8thf-neon = "cortexa8"
TUNE_FEATURES_tune-cortexa8hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa8"
TUNE_FEATURES_tune-cortexa8thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa8"
TUNE_FEATURES_tune-cortexa8hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa8"
TUNE_FEATURES_tune-cortexa8thf-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} cortexa8"
PACKAGE_EXTRA_ARCHS_tune-cortexa8hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa8hf-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa8thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa8hf-vfp cortexa8t2hf-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa8hf-vfp cortexa8hf-vfp-neon"
PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-vfp-neon cortexa8t2hf-vfp cortexa8t2hf-vfp-neon"

View File

@@ -0,0 +1,36 @@
DEFAULTTUNE ?= "armv7a-neon"
require conf/machine/include/arm/arch-armv7a.inc
TUNEVALID[cortexa9] = "Enable Cortex-A9 specific processor optimizations"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "cortexa9", "-mtune=cortex-a9", "", d)}"
# Little Endian base configs
AVAILTUNES += "cortexa9 cortexa9t cortexa9-neon cortexa9t-neon"
ARMPKGARCH_tune-cortexa9 = "cortexa9"
ARMPKGARCH_tune-cortexa9t = "cortexa9"
ARMPKGARCH_tune-cortexa9-neon = "cortexa9"
ARMPKGARCH_tune-cortexa9t-neon = "cortexa9"
TUNE_FEATURES_tune-cortexa9 = "${TUNE_FEATURES_tune-armv7a} cortexa9"
TUNE_FEATURES_tune-cortexa9t = "${TUNE_FEATURES_tune-armv7at} cortexa9"
TUNE_FEATURES_tune-cortexa9-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa9"
TUNE_FEATURES_tune-cortexa9t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortexa9"
PACKAGE_EXTRA_ARCHS_tune-cortexa9 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa9-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa9t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa9-vfp cortexa9t2-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa9-vfp cortexa9-vfp-neon"
PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-vfp-neon cortexa9t2-vfp cortexa9t2-vfp-neon"
# VFP Tunes
AVAILTUNES += "cortexa9hf cortexa9thf cortexa9hf-neon cortexa9thf-neon"
ARMPKGARCH_tune-cortexa9hf = "cortexa9"
ARMPKGARCH_tune-cortexa9thf = "cortexa9"
ARMPKGARCH_tune-cortexa9hf-neon = "cortexa9"
ARMPKGARCH_tune-cortexa9thf-neon = "cortexa9"
TUNE_FEATURES_tune-cortexa9hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa9"
TUNE_FEATURES_tune-cortexa9thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa9"
TUNE_FEATURES_tune-cortexa9hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa9"
TUNE_FEATURES_tune-cortexa9thf-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} cortexa9"
PACKAGE_EXTRA_ARCHS_tune-cortexa9hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa9hf-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa9thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa9hf-vfp cortexa9t2hf-vfp"
PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa9hf-vfp cortexa9hf-vfp-neon"
PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-vfp-neon cortexa9t2hf-vfp cortexa9t2hf-vfp-neon"

View File

@@ -2,22 +2,26 @@
#@NAME: Keystone 2 machine
#@DESCRIPTION: Machine configuration for the TI Keystone 2
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-video-fbdev"
GUI_MACHINE_CLASS = "bigscreen"
require conf/machine/include/keystone.inc
#EXTRA_IMAGEDEPENDS = "u-boot"
PREFERRED_PROVIDER_virtual/kernel = "linux-keystone"
IMAGE_FSTYPES += "ubi tar.gz cpio"
IMAGE_FSTYPES += "tar.bz2"
SERIAL_CONSOLE = "115200 ttyS0"
SERIAL_CONSOLE = "115200 ttyO0"
SYSVINIT_ENABLED_GETTYS = ""
UBOOT_MACHINE = "tci6638_evm_config"
# do ubiattach /dev/ubi_ctrl -m 4
# From dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: logical eraseblock size: 126976 bytes
# from ubiattach stdout:
# UBI device number 0, total 857 LEBs
# MKUBIFS_ARGS = "-m 2048 -e 129024 -c 857"
MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 857"
MACHINE_FEATURES = "kernel26 screen apm usbgadget usbhost vfat alsa"
# do ubiattach /dev/ubi_ctrl -m 4
# from dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 2048
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 2048 -O 2048"

View File

@@ -1,49 +0,0 @@
#@TYPE: Machine
#@NAME: Always Innovating touchbook
#@DESCRIPTION: Machine configuration for the http://www.alwaysinnovating.com/touchbook/
TARGET_ARCH = "arm"
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-input-mouse \
xf86-input-tslib \
xf86-video-fbdev \
xf86-video-omapfb \
xf86-input-keyboard"
# Only has DVI connector for external screen
GUI_MACHINE_CLASS = "bigscreen"
require conf/machine/include/omap3.inc
PREFERRED_PROVIDER_virtual/kernel = "linux-omap-psp"
IMAGE_FSTYPES += "tar.bz2"
EXTRA_IMAGECMD_jffs2 = "-lnp "
# Guesswork
SERIAL_CONSOLE = "115200 ttyS2"
UBOOT_MACHINE = "omap3_beagle_config"
XLOAD_MACHINE = "beagleboard_config"
# do ubiattach /dev/ubi_ctrl -m 4
# From dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: logical eraseblock size: 129024 bytes
# from ubiattach stdout:
# UBI device number 0, total 1996 LEBs
MKUBIFS_ARGS = "-m 2048 -e 129024 -c 1996"
# do ubiattach /dev/ubi_ctrl -m 4
# from dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512"
# and sdio
MACHINE_FEATURES = "kernel26 screen apm usbgadget usbhost vfat alsa touchscreen"

View File

@@ -1,23 +1,15 @@
#@TYPE: Machine
#@NAME: OMAP3 EVM
#@DESCRIPTION: Machine configuration for the TI OMAP3 EVM
TARGET_ARCH = "arm"
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER = "xserver-xorg \
xf86-input-evdev \
xf86-input-mouse \
xf86-input-tslib \
xf86-video-omapfb \
xf86-input-keyboard"
GUI_MACHINE_CLASS = "smallscreen"
require conf/machine/include/omap3.inc
# Ship all kernel modules
# Use built-in LCD by default
XSERVER += "xf86-input-tslib"
GUI_MACHINE_CLASS = "smallscreen"
MACHINE_FEATURES += "touchscreen ethernet"
IMAGE_FSTYPES += "jffs2 tar.bz2"
IMAGE_FSTYPES += "jffs2 tar.gz"
EXTRA_IMAGECMD_jffs2 = "-lnp -e 0x20000 -s 2048"
SERIAL_CONSOLE = "115200 ttyS0"
@@ -25,16 +17,9 @@ USE_VT = "0"
PREFERRED_PROVIDER_virtual/kernel = "linux-omap-psp"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
UBOOT_ARCH = "arm"
UBOOT_MACHINE = "omap3_evm_config"
XLOAD_MACHINE = "omap3evm_config"
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat ext2 screen touchscreen"
EXTRA_IMAGEDEPENDS += "x-load"
# NOTE: there are NAND and OneNAND versions of this board...
# do ubiattach /dev/ubi_ctrl -m 4
# From dmesg:
# UBI: smallest flash I/O unit: 2048
@@ -49,4 +34,3 @@ MKUBIFS_ARGS = "-m 2048 -e 129024 -c 1996"
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512"

View File

@@ -0,0 +1,36 @@
#@TYPE: Machine
#@NAME: OMAP5 EVM
#@DESCRIPTION: Machine configuration for the TI OMAP5 uEVM
require conf/machine/include/omap-a15.inc
IMAGE_FSTYPES += "ubi tar.gz"
SERIAL_CONSOLE = "115200 ttyO2"
# UBI information. Note that this is board and kernel specific. Changes
# in your kernel port may require changes in these variables. For more
# details about this board please see
# http://processors.wiki.ti.com/index.php/UBIFS_Support
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# From dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: logical eraseblock size: 126976 bytes
# from ubiattach stdout:
# UBI device number 0, total 1988 LEBs
MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 3836"
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# from dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
# UBI: VID header offset: 2048 (aligned 2048)
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512 -O 2048"
UBOOT_MACHINE = "omap5_uevm_config"
# Currently removing the sgx machine feature because there is no SGX package
# available for omap5
MACHINE_FEATURES = "kernel26 apm usbgadget usbhost vfat ext2 screen touchscreen"

View File

@@ -4,15 +4,11 @@
require conf/machine/include/omap4.inc
UBOOT_MACHINE = "omap4_panda_config"
GUI_MACHINE_CLASS = "bigscreen"
IMAGE_FSTYPES += "tar.bz2"
IMAGE_FSTYPES += "tar.gz"
SERIAL_CONSOLE = "115200 ttyO2"
MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
MACHINE_FEATURES = "kernel26 wifi bluetooth alsa apm ext2 screen touchscreen usbgadget usbhost vfat"
MACHINE_FEATURES = "kernel26 wifi bluetooth alsa apm ext2 screen usbgadget usbhost vfat sgx"

View File

@@ -0,0 +1,39 @@
DESCRIPTION = "Boot Monitor - TI ARM Boot monitor code"
EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}"
LICENSE = "BSD"
BOOT_MONITOR_BINARY ?= "skern.bin"
BOOT_MONITOR_IMAGE ?= "skern-${MACHINE}.bin"
BOOT_MONITOR_MAKE_TARGET ?= "all"
LIC_FILES_CHKSUM = "file://COPYING;md5=25fe219a6febf6e5bb45beda1b2eb315"
COMPATIBLE_MACHINE = "keystone-evm"
SRC_URI = "git://arago-project.org/git/projects/boot-monitor.git;protocol=git;branch=${BRANCH}"
PV = "1.0"
PR = "r1+gitr${SRCPV}"
BRANCH = "master"
S = "${WORKDIR}/git"
SRCREV = "DEV.MCSDK-03.00.00.07"
do_compile () {
unset LDFLAGS
unset CFLAGS
unset CPPFLAGS
oe_runmake ${BOOT_MONITOR_MAKE_TARGET}
}
inherit deploy
addtask deploy before do_build after do_compile
do_deploy () {
install -d ${DEPLOYDIR}
install ${S}/${BOOT_MONITOR_BINARY} ${DEPLOYDIR}/${BOOT_MONITOR_IMAGE}
}

View File

@@ -0,0 +1,56 @@
DESCRIPTION = "Kernel drivers for the PowerVR SGX chipset found in the omap3 SoCs"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=ea5743acf520dd81ca172e69f818a3d4"
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
require ../../recipes-ti/includes/ti-eula-unpack.inc
SGXPV = "4_08_00_01"
IMGPV = "1.9.2139099"
BINFILE = "Graphics_SDK_setuplinux_${SGXPV}.bin"
inherit module
MACHINE_KERNEL_PR_append = "a"
PR = "${MACHINE_KERNEL_PR}"
DEFAULT_PREFERENCE = "-1"
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE}"
SRC_URI[md5sum] = "dd0d994a48ecc4293f272a1fddddf159"
SRC_URI[sha256sum] = "fd721288c95314e0d676dd89462e1dec994e185cb608bcb8ac4a4b5809f9693a"
TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}"
S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM"
PVRBUILD = "release"
export KERNELDIR = "${STAGING_KERNEL_DIR}"
INHIBIT_PACKAGE_STRIP = "1"
TI_PLATFORM_omap3 = "omap3630"
TI_PLATFORM_ti814x = "ti81xx"
TI_PLATFORM_ti816x = "ti81xx"
TI_PLATFORM_ti33x = "ti335x"
MODULESLOCATION_omap3 = "dc_omapfb3_linux"
MODULESLOCATION_ti814x = "dc_ti81xx_linux"
MODULESLOCATION_ti816x = "dc_ti81xx_linux"
MODULESLOCATION_ti33x = "dc_ti335x_linux"
export SUPPORT_XORG ?= "${@base_contains('DISTRO_FEATURES', 'x11', '1', '0', d)}"
MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM} SUPPORT_XORG=${SUPPORT_XORG}"
do_install() {
mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
cp ${S}/pvrsrvkm.ko \
${S}/services4/3rdparty/${MODULESLOCATION}/omaplfb.ko \
${S}/services4/3rdparty/bufferclass_ti/bufferclass_ti.ko \
${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
if [ "${SUPPORT_XORG}" = "1" ]; then
cp ${S}/services4/3rdparty/linux_drm/drm.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
fi
}

View File

@@ -0,0 +1,56 @@
DESCRIPTION = "Kernel drivers for the PowerVR SGX chipset found in the omap3 SoCs"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=ea5743acf520dd81ca172e69f818a3d4"
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
require ../../recipes-ti/includes/ti-eula-unpack.inc
SGXPV = "4_08_00_02"
IMGPV = "1.9.2188537"
BINFILE = "Graphics_SDK_setuplinux_${SGXPV}_minimal_demos.bin"
inherit module
MACHINE_KERNEL_PR_append = "a"
PR = "${MACHINE_KERNEL_PR}"
DEFAULT_PREFERENCE = "-1"
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE}"
SRC_URI[md5sum] = "0efa3a38266e6f41f8cc4fad0187f0d6"
SRC_URI[sha256sum] = "c732044b515a598e1fab661b7463aa9c53d4fa37f4980dfa85cd02b7468d0cd9"
TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}"
S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM"
PVRBUILD = "release"
export KERNELDIR = "${STAGING_KERNEL_DIR}"
INHIBIT_PACKAGE_STRIP = "1"
TI_PLATFORM_omap3 = "omap3630"
TI_PLATFORM_ti814x = "ti81xx"
TI_PLATFORM_ti816x = "ti81xx"
TI_PLATFORM_ti33x = "ti335x"
MODULESLOCATION_omap3 = "dc_omapfb3_linux"
MODULESLOCATION_ti814x = "dc_ti81xx_linux"
MODULESLOCATION_ti816x = "dc_ti81xx_linux"
MODULESLOCATION_ti33x = "dc_ti335x_linux"
export SUPPORT_XORG ?= "${@base_contains('DISTRO_FEATURES', 'x11', '1', '0', d)}"
MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM} SUPPORT_XORG=${SUPPORT_XORG}"
do_install() {
mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
cp ${S}/pvrsrvkm.ko \
${S}/services4/3rdparty/${MODULESLOCATION}/omaplfb.ko \
${S}/services4/3rdparty/bufferclass_ti/bufferclass_ti.ko \
${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
if [ "${SUPPORT_XORG}" = "1" ]; then
cp ${S}/services4/3rdparty/linux_drm/drm.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
fi
}

View File

@@ -0,0 +1,56 @@
DESCRIPTION = "Kernel drivers for the PowerVR SGX chipset found in the omap3 SoCs"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=ea5743acf520dd81ca172e69f818a3d4"
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
require ../../recipes-ti/includes/ti-eula-unpack.inc
SGXPV = "4_09_00_01"
IMGPV = "1.9.2188537"
BINFILE = "Graphics_SDK_setuplinux_${SGXPV}_minimal_demos.bin"
inherit module
MACHINE_KERNEL_PR_append = "a"
PR = "${MACHINE_KERNEL_PR}"
DEFAULT_PREFERENCE = "-1"
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE}"
SRC_URI[md5sum] = "bd35e9d8843aff3a2aca9d41e7db1c7d"
SRC_URI[sha256sum] = "eb37f75ddde4640b09e760fa86e689beb394330ecdf68786188c34f249247647"
TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}"
S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM"
PVRBUILD = "release"
export KERNELDIR = "${STAGING_KERNEL_DIR}"
INHIBIT_PACKAGE_STRIP = "1"
TI_PLATFORM_omap3 = "omap3630"
TI_PLATFORM_ti814x = "ti81xx"
TI_PLATFORM_ti816x = "ti81xx"
TI_PLATFORM_ti33x = "ti335x"
MODULESLOCATION_omap3 = "dc_omapfb3_linux"
MODULESLOCATION_ti814x = "dc_ti81xx_linux"
MODULESLOCATION_ti816x = "dc_ti81xx_linux"
MODULESLOCATION_ti33x = "dc_ti335x_linux"
export SUPPORT_XORG ?= "${@base_contains('DISTRO_FEATURES', 'x11', '1', '0', d)}"
MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM} SUPPORT_XORG=${SUPPORT_XORG}"
do_install() {
mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
cp ${S}/pvrsrvkm.ko \
${S}/services4/3rdparty/${MODULESLOCATION}/omaplfb.ko \
${S}/services4/3rdparty/bufferclass_ti/bufferclass_ti.ko \
${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
if [ "${SUPPORT_XORG}" = "1" ]; then
cp ${S}/services4/3rdparty/linux_drm/drm.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
fi
}

View File

@@ -0,0 +1,32 @@
DESCRIPTION = "Builds eDMA module used by eDMA libraries for PRU sw example applications"
HOMEPAGE = "https://gforge.ti.com/gf/project/pru_sw/"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://edmautils.c;beginline=1;endline=23;md5=312e9cb8a37a044c617c98a9e980ad1b"
COMPATIBLE_MACHINE = "omapl138"
INHIBIT_PACKAGE_STRIP = "1"
MACHINE_KERNEL_PR_append = "a+svnr${SRCPV}"
PR = "${MACHINE_KERNEL_PR}"
SRC_URI = "svn://gforge.ti.com/svn/pru_sw/;module=trunk;protocol=https;user=anonymous;pswd=''"
SRCREV = "33"
S = "${WORKDIR}/trunk/peripheral_lib/edma_driver/module"
inherit module
EXTRA_OEMAKE += "KERNEL_DIR='${STAGING_KERNEL_DIR}'"
do_compile_prepend () {
export CCTOOL_PREFIX="${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}"
}
do_install () {
install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/pru
install -m 0755 ${S}/edmautils.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/pru/
}
FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/pru/edmautils.ko"

View File

@@ -0,0 +1,36 @@
DESCRIPTION = "Builds Crypto module used by OCF-Linux driver in OpenSSL example applications"
HOMEPAGE = "https://gforge.ti.com/gf/project/arm_crypto/"
LICENSE = "BSD & GPLv2"
LIC_FILES_CHKSUM = "file://Makefile;beginline=1;endline=16;md5=acc0590f80e72fd64ad5c16cad8f4f76 \
file://ocf_omap3_crypto.c;beginline=436;endline=438;md5=a52cad5c37c3aa3f27c6391552967304"
COMPATIBLE_MACHINE = "am37x-evm|am3517-evm"
DEPENDS += "virtual/kernel"
SRC_URI = "svn://gforge.ti.com/svn/arm_crypto/;module=trunk;protocol=https;user=anonymous;pswd=''"
#gforge source revision
SRCREV = "17"
INHIBIT_PACKAGE_STRIP = "1"
S = "${WORKDIR}/trunk"
inherit module
MACHINE_KERNEL_PR_append = "a+svnr${SRCPV}"
PR = "${MACHINE_KERNEL_PR}"
EXTRA_OEMAKE += "KERNEL_DIR=${STAGING_KERNEL_DIR}"
do_compile_prepend () {
sed -i "s/arm-none-linux-gnueabi-/${TARGET_PREFIX}/g" ${S}/Makefile
}
do_install () {
install -d ${D}/lib/modules/${KERNEL_VERSION}/crypto/ocf/
install -m 0755 ${S}/ocf_omap3_cryptok.ko ${D}/lib/modules/${KERNEL_VERSION}/crypto/ocf/
}
FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/crypto/ocf/ocf_omap3_cryptok.ko"

View File

@@ -1,23 +0,0 @@
DESCRIPTION = "AM SysInfo"
HOMEPAGE = "https://gforge.ti.com/gf/project/am_sysinfo/"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://mem_util/mem_util.c;beginline=1;endline=37;md5=8aa8e714ab729cfe8177298af8a5a25d"
SECTION = "system"
SRCREV = "5"
PV = "1.0"
PR = "r1+svnr${SRCPV}"
SRC_URI = "svn://gforge.ti.com/svn/am_sysinfo/;module=trunk;protocol=https;user=anonymous;pswd=''"
S = "${WORKDIR}/trunk"
do_compile() {
${CC} ${CFLAGS} ${LDFLAGS} -o mem_util/mem_util mem_util/mem_util.c
}
do_install() {
install -d ${D}/${bindir}
install -m 0755 ${S}/mem_util/mem_util ${D}/${bindir}
}

View File

@@ -0,0 +1,6 @@
#!/bin/sh
# Load the PM CM3 firmware
echo 1 > /sys/devices/ocp.2/44d00000.wkup_m3/firmware/am335x-pm-firmware.bin/loading
cat /lib/firmware/am335x-pm-firmware.bin > /sys/devices/ocp.2/44d00000.wkup_m3/firmware/am335x-pm-firmware.bin/data
echo 0 > /sys/devices/ocp.2/44d00000.wkup_m3/firmware/am335x-pm-firmware.bin/loading

View File

@@ -3,10 +3,25 @@ DESCRIPTION = "Cortex-M3 binary blob for suspend-resume"
LICENSE = "TI-BSD"
LIC_FILES_CHKSUM = "file://License.txt;md5=858099c817e47ea63559fc6b67ae8d91"
PV = "04.06.00.07"
SRCREV = "cf07b841d6e8c5e026eecb259d143f3dff412c8e"
PV = "04.06.00.11"
PR = "r4"
SRC_URI = "git://arago-project.org/git/projects/am33x-cm3.git"
# SRCREV corresponds to tag "AM335xPSP_04.06.00.11"
SRCREV = "750362868d914702086187096ec2c67b68eac101"
BRANCH ?= "master"
INITSCRIPT_NAME = "am335x-pm-firmware-load"
INITSCRIPT_PARAMS = "defaults 96"
inherit update-rc.d
UPDATERCPN = "${PN}-initscript"
RDEPENDS_${PN}-initscript = "am33x-cm3"
SRC_URI = "git://arago-project.org/git/projects/am33x-cm3.git;protocol=git;branch=${BRANCH} \
file://init-am33x-cm3 \
"
S = "${WORKDIR}/git"
@@ -17,7 +32,14 @@ do_compile() {
do_install() {
install -d ${D}${base_libdir}/firmware
install -m 0644 bin/am335x-pm-firmware.bin ${D}${base_libdir}/firmware/
# Install the init script to load the PM firmware at boot
install -d ${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/init-am33x-cm3 ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME}
}
FILES_${PN} = "${base_libdir}/firmware"
PACKAGES =+ "${PN}-initscript"
FILES_${PN} += "${base_libdir}/firmware"
FILES_${PN}-initscript = "${sysconfdir}/*"

View File

@@ -0,0 +1,34 @@
From df5c87c4e1be1670475eba1187301a2f7a7aca30 Mon Sep 17 00:00:00 2001
From: Chase Maupin <Chase.Maupin@ti.com>
Date: Wed, 22 Jun 2011 12:12:09 -0500
Subject: [PATCH] da850evm: change default memory to not limit at 32MB
* Change the default mem= option passed to the Linux kernel to
not limit the memory to 32MB.
* This change is used by AM devices that do not need to reserve
space for the DSP image. By removing the mem= option we get
access to all of the memory on the system.
* Limiting the memory to 32MB causes out-of-memory errors
when running large applications such as web browsers
Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
---
include/configs/da850evm.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h
index 4a1e0af..55badc9 100755
--- a/include/configs/da850evm.h
+++ b/include/configs/da850evm.h
@@ -184,7 +184,7 @@
#define CONFIG_CMDLINE_TAG
#define CONFIG_REVISION_TAG
#define CONFIG_SETUP_MEMORY_TAGS
-#define CONFIG_BOOTARGS "mem=32M console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootwait ip=off"
+#define CONFIG_BOOTARGS "console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootwait ip=off"
#define CONFIG_BOOTCOMMAND "if mmc rescan 0; then if fatload mmc 0 0xc0600000 boot.scr; then source 0xc0600000; else fatload mmc 0 0xc0700000 uImage; bootm c0700000; fi; else sf probe 0; sf read 0xc0700000 0x80000 0x220000; bootm 0xc0700000; fi"
#define CONFIG_BOOTDELAY 3
--
1.7.0.4

View File

@@ -0,0 +1,22 @@
require u-boot-ti.inc
DESCRIPTION = "u-boot bootloader for AM180x devices"
LIC_FILES_CHKSUM = "file://COPYING;md5=4c6cde5df68eff615d36789dc18edd3b"
COMPATIBLE_MACHINE = "am180x-evm"
PR = "r0"
SRC_URI = "git://arago-project.org/git/projects/u-boot-davinci.git;protocol=git;branch=${BRANCH}"
# For the am180x we want to enable all the memory on the EVM, but for other
# devices that use the DSP we do not want this change because that memory
# is used for the DSP
SRC_URI_append_am180x-evm = " file://0001-da850evm-change-default-memory-to-not-limit-at-32MB.patch"
BRANCH = "03.21.00.03"
# v2010.12_DAVINCIPSP_03.21.00.04
SRCREV = "1254a0b58d900b7035cfb36bf4e1b05dfbf09997"
UBOOT_SUFFIX = "bin"

View File

@@ -1,4 +1,4 @@
require u-boot.inc
require u-boot-ti.inc
# No patches for other machines yet
COMPATIBLE_MACHINE = "(ti33x)"
@@ -8,10 +8,7 @@ DEFAULT_PREFERENCE_ti33x = "99"
PV = "2011.09+git"
PR = "r30"
# SPL build
UBOOT_BINARY = "u-boot.img"
UBOOT_IMAGE = "u-boot-${MACHINE}-${PV}-${PR}.img"
UBOOT_SYMLINK = "u-boot-${MACHINE}.img"
SPL_BINARY = "MLO"
SRC_URI = "git://arago-project.org/git/projects/u-boot-am33x.git;protocol=git;branch=master \
file://2011.09git/0001-am335x_evm-add-option-to-boot-kernel-from-boot-in-ex.patch \
@@ -28,8 +25,3 @@ SRC_URI = "git://arago-project.org/git/projects/u-boot-am33x.git;protocol=git;br
"
SRCREV = "dc52533ccff00a12761f793d66b39e4f6a4a3bba"
LIC_FILES_CHKSUM = "file://COPYING;md5=1707d6db1d42237583f50183a5651ecb"
S = "${WORKDIR}/git"

View File

@@ -0,0 +1,19 @@
require u-boot-ti.inc
DESCRIPTION = "u-boot bootloader for ARM MPU devices"
COMPATIBLE_MACHINE = "ti33x"
DEFAULT_PREFERENCE = "-1"
PR = "r6+gitr${SRCPV}"
SRC_URI = "git://git.ti.com/ti-u-boot/ti-u-boot.git;protocol=git;branch=${BRANCH}"
# This version of u-boot is meant for 3.2 kernel which doesn't support device tree.
BRANCH = "ti-u-boot-2013.01.01-amsdk-06.00.00.00"
SRCREV = "540aa6fbb0c9274bda598f7e8819ed28259cad6b"
# Set the name of the SPL that will built so that it is also packaged with u-boot.
SPL_BINARY = "MLO"

View File

@@ -0,0 +1,21 @@
require u-boot-ti.inc
DESCRIPTION = "u-boot bootloader for ARM MPU devices"
COMPATIBLE_MACHINE = "omap3"
DEFAULT_PREFERENCE = "-1"
PR = "r1+gitr${SRCPV}"
SRC_URI = "git://arago-project.org/git/projects/u-boot-am33x.git;protocol=git;branch=${BRANCH} \
file://0001-armv7-Unaligned-access-fix.patch \
"
BRANCH = "AM335XPSP_04.06.00.08"
# Lock to the commit corresponding to tag "v2011.09_AM335xPSP_04.06.00.08"
SRCREV = "1e4626f0d5f3bb04ec974e76a5d9029875269d31"
# Set the name of the SPL that will built so that it is also packaged with u-boot.
SPL_BINARY = "MLO"

View File

@@ -0,0 +1,172 @@
From e0820ccc38315d88192c19e98ea9b59d3ec7d4c8 Mon Sep 17 00:00:00 2001
From: Tom Rini <trini@ti.com>
Date: Tue, 8 May 2012 07:29:31 +0000
Subject: [PATCH] ARM: omap3: Set SPL stack size to 8KB, image to 54KB.
With older toolchains it is possible to not fit entirely into the 45KB
that we had assigned to SPL. Adjust to allow for 8KB of stack (which
should be more than required) and 54KB of text/data.
Cc: Vaibhav Hiremath <hvaibhav@ti.com>
Cc: Nagendra T S <nagendra@mistralsolutions.com>
Cc: Thomas Weber <weber@corscience.de>
Cc: Ilya Yanok <yanok@emcraft.com>
Cc: Steve Sakoman <sakoman@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Tom Rini <trini@ti.com>
Acked-by: Stefano Babic <sbabic@denx.de>
Acked-by: Vaibhav Hiremath <hvaibhav@ti.com>
---
doc/SPL/README.omap3 | 4 ++--
include/configs/am3517_crane.h | 2 +-
include/configs/am3517_evm.h | 2 +-
include/configs/devkit8000.h | 2 +-
include/configs/mcx.h | 2 +-
include/configs/omap3_beagle.h | 2 +-
include/configs/omap3_evm_common.h | 2 +-
include/configs/omap3_overo.h | 2 +-
include/configs/tam3517-common.h | 2 +-
include/configs/tricorder.h | 2 +-
10 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/doc/SPL/README.omap3 b/doc/SPL/README.omap3
index cc5d5c0..a543e65 100644
--- a/doc/SPL/README.omap3
+++ b/doc/SPL/README.omap3
@@ -34,14 +34,14 @@ DDR1: 0x80000000 - 0xBFFFFFFF
Option 1 (SPL only):
0x40200800 - 0x4020BBFF: Area for SPL text, data and rodata
-0x4020BC00 - 0x4020FFFC: Area for the SPL stack.
+0x4020E000 - 0x4020FFFC: Area for the SPL stack.
0x80000000 - 0x8007FFFF: Area for the SPL BSS.
0x80100000: CONFIG_SYS_TEXT_BASE of U-Boot
0x80208000 - 0x80307FFF: malloc() pool available to SPL.
Option 2 (SPL or X-Loader):
0x40200800 - 0x4020BBFF: Area for SPL text, data and rodata
-0x4020BC00 - 0x4020FFFC: Area for the SPL stack.
+0x4020E000 - 0x4020FFFC: Area for the SPL stack.
0x80008000: CONFIG_SYS_TEXT_BASE of U-Boot
0x87000000 - 0x8707FFFF: Area for the SPL BSS.
0x87080000 - 0x870FFFFF: malloc() pool available to SPL.
diff --git a/include/configs/am3517_crane.h b/include/configs/am3517_crane.h
index 71321f3..1233985 100644
--- a/include/configs/am3517_crane.h
+++ b/include/configs/am3517_crane.h
@@ -325,7 +325,7 @@
#define CONFIG_SPL
#define CONFIG_SPL_NAND_SIMPLE
#define CONFIG_SPL_TEXT_BASE 0x40200800
-#define CONFIG_SPL_MAX_SIZE (45 * 1024)
+#define CONFIG_SPL_MAX_SIZE (54 * 1024) /* 8 KB for stack */
#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
#define CONFIG_SPL_BSS_START_ADDR 0x80000000
diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h
index bbd19de..ff8d1b0 100644
--- a/include/configs/am3517_evm.h
+++ b/include/configs/am3517_evm.h
@@ -324,7 +324,7 @@
#define CONFIG_SPL
#define CONFIG_SPL_NAND_SIMPLE
#define CONFIG_SPL_TEXT_BASE 0x40200800
-#define CONFIG_SPL_MAX_SIZE (45 * 1024)
+#define CONFIG_SPL_MAX_SIZE (54 * 1024) /* 8 KB for stack */
#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
#define CONFIG_SPL_BSS_START_ADDR 0x80000000
diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h
index eb7c376..248a5b2 100644
--- a/include/configs/devkit8000.h
+++ b/include/configs/devkit8000.h
@@ -324,7 +324,7 @@
#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 /* address 0x60000 */
#define CONFIG_SPL_TEXT_BASE 0x40200000 /*CONFIG_SYS_SRAM_START*/
-#define CONFIG_SPL_MAX_SIZE 0xB400 /* 45 K */
+#define CONFIG_SPL_MAX_SIZE (54 * 1024) /* 8 KB for stack */
#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
#define CONFIG_SPL_BSS_START_ADDR 0x80000500 /* leave space for bootargs*/
diff --git a/include/configs/mcx.h b/include/configs/mcx.h
index e190e3e..f6a83a8 100644
--- a/include/configs/mcx.h
+++ b/include/configs/mcx.h
@@ -325,7 +325,7 @@
#define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
#define CONFIG_SPL_TEXT_BASE 0x40200000 /*CONFIG_SYS_SRAM_START*/
-#define CONFIG_SPL_MAX_SIZE (45 << 10)
+#define CONFIG_SPL_MAX_SIZE (54 * 1024) /* 8 KB for stack */
#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
/* move malloc and bss high to prevent clashing with the main image */
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index ddeb414..6bdc2c3 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -399,7 +399,7 @@
#define CONFIG_SPL
#define CONFIG_SPL_NAND_SIMPLE
#define CONFIG_SPL_TEXT_BASE 0x40200800
-#define CONFIG_SPL_MAX_SIZE (45 * 1024)
+#define CONFIG_SPL_MAX_SIZE (54 * 1024) /* 8 KB for stack */
#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
#define CONFIG_SPL_BSS_START_ADDR 0x80000000
diff --git a/include/configs/omap3_evm_common.h b/include/configs/omap3_evm_common.h
index 4910dda..47ebbef 100644
--- a/include/configs/omap3_evm_common.h
+++ b/include/configs/omap3_evm_common.h
@@ -282,7 +282,7 @@
/* Defines for SPL */
#define CONFIG_SPL
#define CONFIG_SPL_TEXT_BASE 0x40200800
-#define CONFIG_SPL_MAX_SIZE (45 * 1024) /* 45 KB */
+#define CONFIG_SPL_MAX_SIZE (54 * 1024) /* 8 KB for stack */
#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
#define CONFIG_SPL_BSS_START_ADDR 0x80000000
diff --git a/include/configs/omap3_overo.h b/include/configs/omap3_overo.h
index 64adc74..b0d144f 100644
--- a/include/configs/omap3_overo.h
+++ b/include/configs/omap3_overo.h
@@ -303,7 +303,7 @@
#define CONFIG_SPL
#define CONFIG_SPL_NAND_SIMPLE
#define CONFIG_SPL_TEXT_BASE 0x40200800
-#define CONFIG_SPL_MAX_SIZE (45 * 1024)
+#define CONFIG_SPL_MAX_SIZE (54 * 1024) /* 8 KB for stack */
#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
/* move malloc and bss high to prevent clashing with the main image */
diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h
index 37eb87b..3fc2c44 100644
--- a/include/configs/tam3517-common.h
+++ b/include/configs/tam3517-common.h
@@ -257,7 +257,7 @@
#define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
#define CONFIG_SPL_TEXT_BASE 0x40200000 /*CONFIG_SYS_SRAM_START*/
-#define CONFIG_SPL_MAX_SIZE (45 << 10) /* 45 K */
+#define CONFIG_SPL_MAX_SIZE (54 * 1024) /* 8 KB for stack */
#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
#define CONFIG_SYS_SPL_MALLOC_START 0x8f000000
diff --git a/include/configs/tricorder.h b/include/configs/tricorder.h
index 801a24f..ab911aa 100644
--- a/include/configs/tricorder.h
+++ b/include/configs/tricorder.h
@@ -293,7 +293,7 @@
#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 /* address 0x60000 */
#define CONFIG_SPL_TEXT_BASE 0x40200000 /*CONFIG_SYS_SRAM_START*/
-#define CONFIG_SPL_MAX_SIZE 0xB400 /* 45 K */
+#define CONFIG_SPL_MAX_SIZE (54 * 1024) /* 8 KB for stack */
#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
#define CONFIG_SPL_BSS_START_ADDR 0x80000000 /*CONFIG_SYS_SDRAM_BASE*/
--
1.7.0.4

View File

@@ -0,0 +1,31 @@
From 55161fca67023d6be30bdea495cc0fdbae316a64 Mon Sep 17 00:00:00 2001
From: Tom Rini <trini@ti.com>
Date: Wed, 9 Nov 2011 11:48:21 -0700
Subject: [PATCH 1/4] OMAP3 Beagle: Set BOOTDELAY to 3
This is TI Sitara SDK specific (unified user experience, 3s delay).
Upstream-Status: Pending
* This will be submitted upstream by Tom Rini
Signed-off-by: Tom Rini <trini@ti.com>
---
include/configs/omap3_beagle.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 58a29b8..ba73aa6 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -213,7 +213,7 @@
/* partition */
/* Environment information */
-#define CONFIG_BOOTDELAY 2
+#define CONFIG_BOOTDELAY 3
#define CONFIG_EXTRA_ENV_SETTINGS \
"loadaddr=0x80200000\0" \
--
1.7.0.4

View File

@@ -0,0 +1,40 @@
From c56786770eb0ccb95204cb72b961c44c65ff343b Mon Sep 17 00:00:00 2001
From: Chase Maupin <Chase.Maupin@ti.com>
Date: Thu, 17 May 2012 09:51:50 -0500
Subject: [PATCH] omap3_beagle: add usbethaddr setting to enable networking
* In order for the SMSC USB ethernet device to work the
usbethaddr setting must be set when the "usb start" command
is executed and the network device is discovered.
* Currently set this for de:ad:be:ef until we can start
generating random or semi-random MAC addresses.
* Based on work by Steve Kipisz and Joel Fernandez
Upstream-Status: Not Upstreamable
* We cannot upstream this hard coded MAC address setting.
* User's should look at the following web page for information on
how to generate a MAC address, but this patch enables the out
of box experience for the SDK.
http://www.denx.de/wiki/view/DULG/WhereCanIGetAValidMACAddress
Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
---
include/configs/omap3_beagle.h | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index ddeb414..58a29b8 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -219,6 +219,7 @@
"loadaddr=0x80200000\0" \
"rdaddr=0x81000000\0" \
"usbtty=cdc_acm\0" \
+ "usbethaddr=de:ad:be:ef\0" \
"bootfile=uImage.beagle\0" \
"console=ttyO2,115200n8\0" \
"mpurate=auto\0" \
--
1.7.0.4

View File

@@ -0,0 +1,146 @@
From eff8924b57d21eadfe749e500617340b1a730c17 Mon Sep 17 00:00:00 2001
From: Schuyler Patton <spatton@ti.com>
Date: Thu, 30 Jun 2011 13:39:25 -0500
Subject: [PATCH 1/3] omap3_evm: Added function calls to set volts, speed on OMAP36xx parts
* evm.c
* Added setup calls to set voltage and speed
* Added calls in misc_init_r to twl4030_power_mpu_init and set_mpu_clock
functions. These set VDD1 to 1.35v and mpu clock to 1GHz respectively.
There is a check performed to make sure that this is only called on
omap36xx class parts.
* twl4030.c
* Added twl4030_power_mpu_init function to set VDD1 to 1.35 Volts
* This is done to allow omap36xx parts to run at 1GHz.
* clock.c
* Added set_mpu_clk function to allow u-boot to set the clock
rate.
* sys_proto.h
* Added the function prototype set_mpu_clock
* twl4030.h
* Added twl4030_power_mpu_init function prototype
Upstream-Status: Pending
Signed-off-by: Schuyler Patton <spatton@ti.com>
---
arch/arm/cpu/armv7/omap3/clock.c | 15 +++++++++++++++
arch/arm/include/asm/arch-omap3/sys_proto.h | 2 ++
board/ti/evm/evm.c | 5 +++++
drivers/power/twl4030.c | 12 ++++++++++++
include/twl4030.h | 3 +++
5 files changed, 37 insertions(+), 0 deletions(-)
diff --git a/arch/arm/cpu/armv7/omap3/clock.c b/arch/arm/cpu/armv7/omap3/clock.c
index 567817e..46a28a3 100644
--- a/arch/arm/cpu/armv7/omap3/clock.c
+++ b/arch/arm/cpu/armv7/omap3/clock.c
@@ -35,6 +35,21 @@
#include <command.h>
/******************************************************************************
+ * Setting the Clock speed
+ *
+ *****************************************************************************/
+void set_mpu_clk(int speed)
+{
+ struct prcm *prcm_base = (struct prcm *)PRCM_BASE;
+
+
+ /* Set M */
+ sr32(&prcm_base->clksel1_pll_mpu, 8, 11, speed);
+ /* lock mode */
+ sr32(&prcm_base->clken_pll_mpu, 0, 3, PLL_LOCK);
+}
+
+/******************************************************************************
* get_sys_clk_speed() - determine reference oscillator speed
* based on known 32kHz clock and gptimer.
*****************************************************************************/
diff --git a/arch/arm/include/asm/arch-omap3/sys_proto.h b/arch/arm/include/asm/arch-omap3/sys_proto.h
index 2a89e56..9db13d7 100644
--- a/arch/arm/include/asm/arch-omap3/sys_proto.h
+++ b/arch/arm/include/asm/arch-omap3/sys_proto.h
@@ -36,6 +36,8 @@ void prcm_init(void);
void per_clocks_enable(void);
void ehci_clocks_enable(void);
+void set_mpu_clk(int speed);
+
void memif_init(void);
void sdrc_init(void);
void do_sdrc_init(u32, u32);
diff --git a/board/ti/evm/evm.c b/board/ti/evm/evm.c
index 8497aee..91eb93d 100644
--- a/board/ti/evm/evm.c
+++ b/board/ti/evm/evm.c
@@ -39,6 +39,7 @@
#include <asm/mach-types.h>
#include <linux/mtd/nand.h>
#include "evm.h"
+#include <twl4030.h>
#define OMAP3EVM_GPIO_ETH_RST_GEN1 64
#define OMAP3EVM_GPIO_ETH_RST_GEN2 7
@@ -177,6 +178,10 @@ int misc_init_r(void)
#endif
dieid_num_r();
+ if (get_cpu_family() == CPU_OMAP36XX) {
+ twl4030_power_mpu_init();
+ set_mpu_clk(500);
+ }
return 0;
}
diff --git a/drivers/power/twl4030.c b/drivers/power/twl4030.c
index 36b2144..670b4cb 100644
--- a/drivers/power/twl4030.c
+++ b/drivers/power/twl4030.c
@@ -105,6 +105,18 @@ void twl4030_power_init(void)
TWL4030_PM_RECEIVER_DEV_GRP_P1);
}
+#define VDD1_VSEL_135 0x3C
+
+void twl4030_power_mpu_init(void)
+{
+ unsigned char byte;
+
+ /* 1.4 Volts */
+ byte = VDD1_VSEL_135;
+ twl4030_i2c_write_u8(TWL4030_CHIP_PM_RECEIVER, byte,
+ TWL4030_PM_RECEIVER_VDD1_VSEL);
+}
+
void twl4030_power_mmc_init(void)
{
/* Set VMMC1 to 3.15 Volts */
diff --git a/include/twl4030.h b/include/twl4030.h
index 9cd32ab..91d36b8 100644
--- a/include/twl4030.h
+++ b/include/twl4030.h
@@ -510,6 +510,9 @@ static inline int twl4030_i2c_read_u8(u8 chip_no, u8 *val, u8 reg)
* Power
*/
+/*For setting VDD1 */
+void twl4030_power_mpu_init(void);
+
/* For hardware resetting */
void twl4030_power_reset_init(void);
/* For setting device group and voltage */
--
1.7.0.4

View File

@@ -0,0 +1,73 @@
From 883551659d9b15dfb1ed7ad8ae4b34bfd1fa0fd9 Mon Sep 17 00:00:00 2001
From: Tom Rini <trini@ti.com>
Date: Wed, 16 Nov 2011 14:50:49 -0700
Subject: [PATCH 2/4] am335x/am3517evm/beagleboard/am37x: Add CONFIG_CMD_ASKENV
This is TI Sitara SDK specific (unified user experience, askenv command).
Upstream-Status: Pending
* This will be submitted upstream by Tom Rini
Signed-off-by: Tom Rini <trini@ti.com>
---
include/configs/am335x_evm.h | 2 ++
include/configs/am3517_evm.h | 2 ++
include/configs/omap3_beagle.h | 2 ++
include/configs/omap3_evm.h | 2 ++
4 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index d0fbc88..5cd7d6d 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -26,6 +26,8 @@
#include <asm/arch/cpu.h>
#include <asm/arch/hardware.h>
+#define CONFIG_CMD_ASKENV
+
#define CONFIG_ENV_SIZE 0x400
#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (8 * 1024))
#define CONFIG_SYS_PROMPT "U-Boot# "
diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h
index b5f75d1..2b3fce7 100644
--- a/include/configs/am3517_evm.h
+++ b/include/configs/am3517_evm.h
@@ -137,6 +137,8 @@
/* commands to include */
#include <config_cmd_default.h>
+#define CONFIG_CMD_ASKENV
+
#define CONFIG_CMD_EXT2 /* EXT2 Support */
#define CONFIG_CMD_FAT /* FAT support */
#define CONFIG_CMD_JFFS2 /* JFFS2 Support */
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index ba73aa6..b270598 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -146,6 +146,8 @@
/* commands to include */
#include <config_cmd_default.h>
+#define CONFIG_CMD_ASKENV
+
#define CONFIG_CMD_CACHE
#define CONFIG_CMD_EXT2 /* EXT2 Support */
#define CONFIG_CMD_FAT /* FAT support */
diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h
index 1fcb7af..215d67d 100644
--- a/include/configs/omap3_evm.h
+++ b/include/configs/omap3_evm.h
@@ -42,6 +42,8 @@
*/
#include <config_cmd_default.h>
+#define CONFIG_CMD_ASKENV
+
#define CONFIG_CMD_EXT2
#define CONFIG_CMD_FAT
#define CONFIG_CMD_JFFS2
--
1.7.0.4

View File

@@ -0,0 +1,36 @@
From a0f4f7b85d004db36a24cc05e9c34f137186270b Mon Sep 17 00:00:00 2001
From: Chase Maupin <Chase.Maupin@ti.com>
Date: Wed, 23 May 2012 09:25:06 -0500
Subject: [PATCH 2/3] omap3evm: Make the board start at 800MHz
* It is safe to start the the 3630 silicon at 800MHz for all
revisions. Go ahead and bump the speed to 800MHz during boot
instead of using the default 500MHz speed.
* This patch was based on work by Tom Rini <trini@ti.com> at
http://arago-project.org/git/projects/?p=u-boot-am33x.git;a=commit;h=ad130035df754931f2939902e453cc3736412f5f
Upstream-Status: Pending
* Will be submitted upstream since it is safe for all silicon
revisions to boot at 800MHz according to HW team.
Signed-off-by: Chase Maupin <Chase.Maupin@ti.com>
---
board/ti/evm/evm.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/board/ti/evm/evm.c b/board/ti/evm/evm.c
index 91eb93d..0d0b4a2 100644
--- a/board/ti/evm/evm.c
+++ b/board/ti/evm/evm.c
@@ -180,7 +180,7 @@ int misc_init_r(void)
if (get_cpu_family() == CPU_OMAP36XX) {
twl4030_power_mpu_init();
- set_mpu_clk(500);
+ set_mpu_clk(800);
}
return 0;
}
--
1.7.0.4

View File

@@ -0,0 +1,34 @@
From f2a15cd9e96648e05cb39159ba74cbfbfc8ff999 Mon Sep 17 00:00:00 2001
From: Tom Rini <trini@ti.com>
Date: Thu, 17 Nov 2011 08:41:42 -0700
Subject: [PATCH 3/4] beagleboard: Load uImage from VFAT by default.
This is TI Sitara SDK specific (unified user experience, load uImage
from vfat).
Upstream-Status: Not Appropriate
* This patch is to make the u-boot for beagleboard consistent
with other versions used in the AMSDK and doesn't make
sense up stream.
Signed-off-by: Tom Rini <trini@ti.com>
---
include/configs/omap3_beagle.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index b270598..ea62580 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -305,7 +305,7 @@
"echo Running uenvcmd ...;" \
"run uenvcmd;" \
"fi;" \
- "if run loaduimage; then " \
+ "if run loaduimagefat; then " \
"run mmcboot;" \
"fi;" \
"fi;" \
--
1.7.0.4

View File

@@ -0,0 +1,34 @@
From 372d110126f37f9f8b7d4bbedd3f02cf80e587de Mon Sep 17 00:00:00 2001
From: Tom Rini <trini@ti.com>
Date: Wed, 30 Nov 2011 16:16:21 -0700
Subject: [PATCH 3/3] beagleboard: Make xM rev C go to 800MHz
* This is the highest frequency supported on xM without BIAS
drivers.
Upstream-Status: Pending
* Will be submitted upstream since it is safe for all silicon
revisions to boot at 800MHz according to HW team.
Signed-off-by: Tom Rini <trini@ti.com>
---
board/ti/beagle/beagle.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
index e26b387..69a7b4e 100644
--- a/board/ti/beagle/beagle.c
+++ b/board/ti/beagle/beagle.c
@@ -346,6 +346,9 @@ int misc_init_r(void)
TWL4030_PM_RECEIVER_VAUX2_VSEL_18,
TWL4030_PM_RECEIVER_VAUX2_DEV_GRP,
TWL4030_PM_RECEIVER_DEV_GRP_P1);
+ /* 800MHz support */
+ twl4030_power_mpu_init();
+ set_mpu_clk(800);
break;
default:
printf("Beagle unknown 0x%02x\n", get_board_revision());
--
1.7.0.4

View File

@@ -0,0 +1,57 @@
From 715afb049d2675106e26c5225e7e321374c32f85 Mon Sep 17 00:00:00 2001
From: Tom Rini <trini@ti.com>
Date: Thu, 17 Nov 2011 16:54:01 -0700
Subject: [PATCH 4/4] beagleboard: Load uImage to the default kernel linux address
This is TI Sitara SDK specific (unified user experience, load uImage
to an 'XIP' location).
Upstream-Status: Pending
* This functionality is being discussed upstream and there
is not a concensus yet.
Signed-off-by: Tom Rini <trini@ti.com>
---
include/configs/omap3_beagle.h | 13 +++++++------
1 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index ea62580..00b2abe 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -219,6 +219,7 @@
#define CONFIG_EXTRA_ENV_SETTINGS \
"loadaddr=0x80200000\0" \
+ "kloadaddr=0x80007fc0\0" \
"rdaddr=0x81000000\0" \
"usbtty=cdc_acm\0" \
"usbethaddr=de:ad:be:ef\0" \
@@ -272,18 +273,18 @@
"root=${ramroot} " \
"rootfstype=${ramrootfstype}\0" \
"loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \
- "loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
- "loaduimage=ext2load mmc ${mmcdev}:2 ${loadaddr} /boot/uImage\0" \
+ "loaduimagefat=fatload mmc ${mmcdev} ${kloadaddr} uImage\0" \
+ "loaduimage=ext2load mmc ${mmcdev}:2 ${kloadaddr} /boot/uImage\0" \
"mmcboot=echo Booting from mmc ...; " \
"run mmcargs; " \
- "bootm ${loadaddr}\0" \
+ "bootm ${kloadaddr}\0" \
"nandboot=echo Booting from nand ...; " \
"run nandargs; " \
- "nand read ${loadaddr} 280000 400000; " \
- "bootm ${loadaddr}\0" \
+ "nand read ${kloadaddr} 280000 400000; " \
+ "bootm ${kloadaddr}\0" \
"ramboot=echo Booting from ramdisk ...; " \
"run ramargs; " \
- "bootm ${loadaddr}\0" \
+ "bootm ${kloadaddr}\0" \
"userbutton=if gpio input 173; then run userbutton_xm; " \
"else run userbutton_nonxm; fi;\0" \
"userbutton_xm=gpio input 4;\0" \
--
1.7.0.4

View File

@@ -0,0 +1,41 @@
require u-boot-ti.inc
DESCRIPTION = "u-boot bootloader for ARM MPU devices"
COMPATIBLE_MACHINE = "am37x-evm|beagleboard"
BRANCH ?= "master"
PR = "r1+gitr${SRCPV}"
# v2012.04.01
SRCREV = "415d386877df49eb051b85ef74fa59a16dc17c7d"
SRC_URI = "git://git.denx.de/u-boot.git;protocol=git;branch=${BRANCH}"
# Add patches for the AMSDK
# - 0001-omap3-beagle-add-usbethaddr....Not for Upstream
# - 0001-OMAP3-Beagle-Set-BOOTDELAY....Pending Upstream
# - 0002-am335x-am3517evm-beagleboard....Pending Upstream
# - 0003-beagleboard-Load-uImage-from....Not for Upstream
# - 0004-beagleboard-Load-uImage-to....Pending Upstream
# - 0001-omap3_evm-Added-function....Pending Upstream
# - 0002-omap3evm-Make-the-board....Pending Upstream
# - 0003-beagleboard-Make-xM-rev....Pending Upstream
# - 0001-ARM-omap3-Set-SPL-stack-size-to-8KB-image-to-54KB.patch....Upstreamed
# Add a patch to set a default usbethaddr address to enable the out of box
# experience.
SRC_URI += "file://0001-omap3_beagle-add-usbethaddr-setting-to-enable-networ.patch \
file://0001-OMAP3-Beagle-Set-BOOTDELAY-to-3.patch \
file://0002-am335x-am3517evm-beagleboard-am37x-Add-CONFIG_CMD_AS.patch \
file://0003-beagleboard-Load-uImage-from-VFAT-by-default.patch \
file://0004-beagleboard-Load-uImage-to-the-default-kernel-linux-.patch \
file://0001-omap3_evm-Added-function-calls-to-set-volts-speed-on.patch \
file://0002-omap3evm-Make-the-board-start-at-800MHz.patch \
file://0003-beagleboard-Make-xM-rev-C-go-to-800MHz.patch \
file://0001-ARM-omap3-Set-SPL-stack-size-to-8KB-image-to-54KB.patch \
file://0001-armv7-Unaligned-access-fix.patch \
"
SPL_BINARY = "MLO"

View File

@@ -1,16 +1,13 @@
require u-boot.inc
require u-boot-ti.inc
PR = "r7"
# SPL build
UBOOT_BINARY = "u-boot.img"
UBOOT_IMAGE = "u-boot-${MACHINE}-${PV}-${PR}.img"
UBOOT_SYMLINK = "u-boot-${MACHINE}.img"
SPL_BINARY = "MLO"
# No patches for other machines yet
COMPATIBLE_MACHINE = "(beagleboard)"
SRC_URI = "git://www.denx.de/git/u-boot.git;protocol=git \
SRC_URI = "git://git.denx.de/u-boot.git;protocol=git \
file://2011.09/0001-omap3-mem-Comment-enable_gpmc_cs_config-more.patch \
file://2011.09/0002-OMAP3-Update-SDRC-dram_init-to-always-call-make_cs1_.patch \
file://2011.09/0003-OMAP3-Add-a-helper-function-to-set-timings-in-SDRC.patch \
@@ -37,7 +34,3 @@ SRC_URI = "git://www.denx.de/git/u-boot.git;protocol=git \
"
SRCREV = "fdbe8b9a2d1858ba35dd6214315563ad44d4a0e3"
LIC_FILES_CHKSUM = "file://COPYING;md5=1707d6db1d42237583f50183a5651ecb"
S = "${WORKDIR}/git"

View File

@@ -0,0 +1,16 @@
require u-boot-ti.inc
DESCRIPTION = "u-boot bootloader for TI devices"
COMPATIBLE_MACHINE = "dra7xx-evm"
PR = "r1+gitr${SRCPV}"
SRC_URI = "git://git.ti.com/ti-u-boot/ti-u-boot.git;protocol=git;branch=${BRANCH}"
BRANCH ?= "ti-u-boot-2013.04+"
# This commit corresponds to ti2013.04.02 release tag
SRCREV = "ca435c914e069f5b74f05f667e2064784943a0ac"
SPL_BINARY = "MLO"

View File

@@ -0,0 +1,16 @@
require u-boot-ti.inc
DESCRIPTION = "u-boot bootloader for TI devices supported by the GLSDK product"
PR = "r0+gitr${SRCPV}"
DEFAULT_PREFERENCE = "-1"
SRC_URI = "git://git.ti.com/glsdk/glsdk-u-boot.git;protocol=git;branch=${BRANCH}"
BRANCH ?= "master"
SRCREV = "81836e8cc84bd6523d9a4e187965dcd1633c4bc9"
SPL_BINARY = "MLO"
SPL_UART_BINARY = "u-boot-spl.bin"

View File

@@ -0,0 +1,16 @@
require u-boot-ti.inc
DESCRIPTION = "u-boot bootloader for Multi-Core BU devices"
COMPATIBLE_MACHINE = "keystone"
PR = "r2+gitr${SRCPV}"
SRC_URI = "git://arago-project.org/git/projects/u-boot-keystone.git;protocol=git;branch=${BRANCH}"
BRANCH = "master"
# DEV.MCSDK-03.00.00.07
SRCREV = "82f40e857d853165310d0753e79235aefb65d7ba"
UBOOT_SUFFIX = "bin"

View File

@@ -0,0 +1,15 @@
require u-boot-ti.inc
DESCRIPTION = "u-boot bootloader for TI devices"
PR = "r5+gitr${SRCPV}"
SRC_URI = "git://git.ti.com/ti-u-boot/ti-u-boot.git;protocol=git;branch=${BRANCH}"
BRANCH ?= "ti-u-boot-2013.01.01"
# This commit corresponds to ti2013.04.00 release tag
SRCREV = "7552b4c906b0a50fbc5225dc43ed0192618e9d5d"
SPL_BINARY = "MLO"
SPL_UART_BINARY = "u-boot-spl.bin"

View File

@@ -0,0 +1,41 @@
require ${COREBASE}/meta/recipes-bsp/u-boot/u-boot.inc
FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot:"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=1707d6db1d42237583f50183a5651ecb"
PACKAGE_ARCH = "${MACHINE_ARCH}"
PROVIDES += "u-boot"
PKG_${PN} = "u-boot"
PKG_${PN}-dev = "u-boot-dev"
PKG_${PN}-dbg = "u-boot-dbg"
S = "${WORKDIR}/git"
UBOOT_SUFFIX = "img"
# SPL (Second Program Loader) to be loaded over UART
SPL_UART_BINARY ?= ""
SPL_UART_IMAGE ?= "${SPL_UART_BINARY}-${MACHINE}-${PV}-${PR}"
SPL_UART_SYMLINK ?= "${SPL_UART_BINARY}-${MACHINE}"
do_install_append () {
if [ "x${SPL_UART_BINARY}" != "x" ]
then
install ${S}/spl/${SPL_UART_BINARY} ${D}/boot/${SPL_UART_IMAGE}
ln -sf ${SPL_UART_IMAGE} ${D}/boot/${SPL_UART_BINARY}
fi
}
do_deploy_append () {
cd ${DEPLOYDIR}
if [ "x${SPL_UART_BINARY}" != "x" ]
then
install ${S}/spl/${SPL_UART_BINARY} ${DEPLOYDIR}/${SPL_UART_IMAGE}
rm -f ${DEPLOYDIR}/${SPL_UART_BINARY} ${DEPLOYDIR}/${SPL_UART_SYMLINK}
ln -sf ${SPL_UART_IMAGE} ${DEPLOYDIR}/${SPL_UART_BINARY}
ln -sf ${SPL_UART_IMAGE} ${DEPLOYDIR}/${SPL_UART_SYMLINK}
fi
}

View File

@@ -1,68 +0,0 @@
DESCRIPTION = "U-Boot - the Universal Boot Loader"
HOMEPAGE = "http://www.denx.de/wiki/U-Boot/WebHome"
SECTION = "bootloaders"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=4c6cde5df68eff615d36789dc18edd3b"
PROVIDES = "virtual/bootloader"
DEPENDS = "mtd-utils"
PACKAGE_ARCH = "${MACHINE_ARCH}"
PARALLEL_MAKE=""
EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}"
UBOOT_MACHINE ?= "${MACHINE}_config"
UBOOT_BINARY ?= "u-boot.bin"
UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.bin"
UBOOT_SYMLINK ?= "u-boot-${MACHINE}.bin"
UBOOT_MAKE_TARGET ?= "all"
do_configure () {
oe_runmake ${UBOOT_MACHINE}
}
do_compile () {
unset LDFLAGS
unset CFLAGS
unset CPPFLAGS
oe_runmake ${UBOOT_MAKE_TARGET}
}
do_install () {
install -d ${D}/boot
install ${S}/${UBOOT_BINARY} ${D}/boot/${UBOOT_IMAGE}
ln -sf ${UBOOT_IMAGE} ${D}/boot/${UBOOT_BINARY}
if [ -e ${WORKDIR}/fw_env.config ] ; then
install -d ${D}${sysconfdir}
install -m 644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config
fi
}
FILES_${PN} = "/boot ${sysconfdir}"
# no gnu_hash in uboot.bin, by design, so skip QA
INSANE_SKIP_${PN} = "1"
inherit deploy
addtask deploy before do_package after do_compile
do_deploy () {
install -d ${DEPLOY_DIR_IMAGE}
install ${S}/${UBOOT_BINARY} ${DEPLOY_DIR_IMAGE}/${UBOOT_IMAGE}
cd ${DEPLOY_DIR_IMAGE}
rm -f ${UBOOT_BINARY} ${UBOOT_SYMLINK}
ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK}
ln -sf ${UBOOT_IMAGE} ${UBOOT_BINARY}
if [ -e ${S}/MLO ] ; then
install ${S}/MLO ${DEPLOY_DIR_IMAGE}/MLO-${MACHINE}-${PV}
rm -f ${DEPLOY_DIR_IMAGE}/MLO-${MACHINE} ${DEPLOY_DIR_IMAGE}/MLO
ln -sf MLO-${MACHINE}-${PV} ${DEPLOY_DIR_IMAGE}/MLO-${MACHINE}
ln -sf MLO-${MACHINE}-${PV} ${DEPLOY_DIR_IMAGE}/MLO
fi
}

View File

@@ -0,0 +1,30 @@
From 40f1e7db785f477a2aa145a3b47bd498c48ad52d Mon Sep 17 00:00:00 2001
From: Steve Kipisz <s-kipisz2@ti.com>
Date: Fri, 14 Jun 2013 05:16:52 -0500
Subject: [PATCH] armv7:Unaligned access fix
This fixes an unaligned access data abort introduced when using gcc 4.7
or higher. The Linaro toolchain uses gcc 4.7.3. This is documented in u-boot
doc/README.arm-unaligned-accesses.
Signed-off-by: Steve Kipisz <s-kipisz2@ti.com>
---
arch/arm/cpu/armv7/config.mk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/cpu/armv7/config.mk b/arch/arm/cpu/armv7/config.mk
index 9c3e2f3..9736da8 100644
--- a/arch/arm/cpu/armv7/config.mk
+++ b/arch/arm/cpu/armv7/config.mk
@@ -20,7 +20,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
# MA 02111-1307 USA
#
-PLATFORM_RELFLAGS += -fno-common -ffixed-r8 -msoft-float
+PLATFORM_RELFLAGS += -fno-common -ffixed-r8 -msoft-float -mno-unaligned-access
# If armv7-a is not supported by GCC fall-back to armv5, which is
# supported by more tool-chains
--
1.7.9.5

View File

@@ -1,46 +0,0 @@
From 8892464287ca16f90397f159370f0d42ff6dc879 Mon Sep 17 00:00:00 2001
From: Bob Feretich <bob.feretich@rafresearch.com>
Date: Thu, 24 Feb 2011 13:16:44 +0000
Subject: [PATCH 01/30] OMAP3 Beagle Pin Mux initialization glitch fix
The below patch reverses the order of two segments in the board file.
Output pins need to have their values initialized, before they are
exposed to the logic outside the chip.
Signed-off-by: Bob Feretich <bob.feretich@rafresearch.com>
Cc: Wolfgang Denk <wd@denx.de>
---
board/ti/beagle/beagle.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
index ab50514..15d061a 100644
--- a/board/ti/beagle/beagle.c
+++ b/board/ti/beagle/beagle.c
@@ -301,17 +301,17 @@ int misc_init_r(void)
twl4030_power_init();
twl4030_led_init(TWL4030_LED_LEDEN_LEDAON | TWL4030_LED_LEDEN_LEDBON);
- /* Configure GPIOs to output */
- writel(~(GPIO23 | GPIO10 | GPIO8 | GPIO2 | GPIO1), &gpio6_base->oe);
- writel(~(GPIO31 | GPIO30 | GPIO29 | GPIO28 | GPIO22 | GPIO21 |
- GPIO15 | GPIO14 | GPIO13 | GPIO12), &gpio5_base->oe);
-
- /* Set GPIOs */
+ /* Set GPIO states before they are made outputs */
writel(GPIO23 | GPIO10 | GPIO8 | GPIO2 | GPIO1,
&gpio6_base->setdataout);
writel(GPIO31 | GPIO30 | GPIO29 | GPIO28 | GPIO22 | GPIO21 |
GPIO15 | GPIO14 | GPIO13 | GPIO12, &gpio5_base->setdataout);
+ /* Configure GPIOs to output */
+ writel(~(GPIO23 | GPIO10 | GPIO8 | GPIO2 | GPIO1), &gpio6_base->oe);
+ writel(~(GPIO31 | GPIO30 | GPIO29 | GPIO28 | GPIO22 | GPIO21 |
+ GPIO15 | GPIO14 | GPIO13 | GPIO12), &gpio5_base->oe);
+
dieid_num_r();
return 0;
--
1.6.6.1

View File

@@ -1,56 +0,0 @@
From 88ee784eddb634074895d68572b896aebd10bb5d Mon Sep 17 00:00:00 2001
From: Steve Sakoman <steve@sakoman.com>
Date: Thu, 30 Dec 2010 07:19:44 +0000
Subject: [PATCH 02/30] OMAP: Remove omapfb.debug=y from Beagle and Overo env settings
The kernel DSS2 code is mature now, and keeping this setting hurts performance
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
include/configs/omap3_beagle.h | 2 --
include/configs/omap3_overo.h | 2 --
2 files changed, 0 insertions(+), 4 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 9fd80ed..42575f1 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -214,7 +214,6 @@
"mpurate=${mpurate} " \
"vram=${vram} " \
"omapfb.mode=dvi:${dvimode} " \
- "omapfb.debug=y " \
"omapdss.def_disp=${defaultdisplay} " \
"root=${mmcroot} " \
"rootfstype=${mmcrootfstype}\0" \
@@ -222,7 +221,6 @@
"mpurate=${mpurate} " \
"vram=${vram} " \
"omapfb.mode=dvi:${dvimode} " \
- "omapfb.debug=y " \
"omapdss.def_disp=${defaultdisplay} " \
"root=${nandroot} " \
"rootfstype=${nandrootfstype}\0" \
diff --git a/include/configs/omap3_overo.h b/include/configs/omap3_overo.h
index 242b317..0f64054 100644
--- a/include/configs/omap3_overo.h
+++ b/include/configs/omap3_overo.h
@@ -170,7 +170,6 @@
"mpurate=${mpurate} " \
"vram=${vram} " \
"omapfb.mode=dvi:${dvimode} " \
- "omapfb.debug=y " \
"omapdss.def_disp=${defaultdisplay} " \
"root=${mmcroot} " \
"rootfstype=${mmcrootfstype}\0" \
@@ -178,7 +177,6 @@
"mpurate=${mpurate} " \
"vram=${vram} " \
"omapfb.mode=dvi:${dvimode} " \
- "omapfb.debug=y " \
"omapdss.def_disp=${defaultdisplay} " \
"root=${nandroot} " \
"rootfstype=${nandrootfstype}\0" \
--
1.6.6.1

View File

@@ -1,57 +0,0 @@
From 89231bb3ed75ea6801a10d3ea618c8dc83d7e483 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Mon, 22 Nov 2010 11:51:32 +0100
Subject: [PATCH 03/30] OMAP3: beagle: pass expansionboard name in bootargs
---
include/configs/omap3_beagle.h | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 42575f1..d5f98da 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -202,6 +202,7 @@
"usbtty=cdc_acm\0" \
"console=ttyS2,115200n8\0" \
"mpurate=auto\0" \
+ "buddy=none "\
"vram=12M\0" \
"dvimode=1024x768MR-16@60\0" \
"defaultdisplay=dvi\0" \
@@ -212,6 +213,7 @@
"nandrootfstype=jffs2\0" \
"mmcargs=setenv bootargs console=${console} " \
"mpurate=${mpurate} " \
+ "buddy=${buddy} "\
"vram=${vram} " \
"omapfb.mode=dvi:${dvimode} " \
"omapdss.def_disp=${defaultdisplay} " \
@@ -219,6 +221,7 @@
"rootfstype=${mmcrootfstype}\0" \
"nandargs=setenv bootargs console=${console} " \
"mpurate=${mpurate} " \
+ "buddy=${buddy} "\
"vram=${vram} " \
"omapfb.mode=dvi:${dvimode} " \
"omapdss.def_disp=${defaultdisplay} " \
@@ -227,6 +230,16 @@
"loadbootenv=fatload mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \
"importbootenv=echo Importing environment from mmc ...; " \
"env import -t $loadaddr $filesize\0" \
+ "ramargs=setenv bootargs console=${console} " \
+ "${optargs} " \
+ "mpurate=${mpurate} " \
+ "buddy=${buddy} "\
+ "vram=${vram} " \
+ "omapfb.mode=dvi:${dvimode} " \
+ "omapdss.def_disp=${defaultdisplay} " \
+ "root=${ramroot} " \
+ "rootfstype=${ramrootfstype}\0" \
+ "loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \
"loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
"mmcboot=echo Booting from mmc ...; " \
"run mmcargs; " \
--
1.6.6.1

View File

@@ -1,47 +0,0 @@
From 9890bd3e5a28645214aff9d8d311d6a5bdec6cf9 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Fri, 17 Jun 2011 09:37:37 +0200
Subject: [PATCH 04/30] beagleboard: add support for xM revision C
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
board/ti/beagle/beagle.c | 10 ++++++++++
board/ti/beagle/beagle.h | 1 +
2 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
index 15d061a..7768901 100644
--- a/board/ti/beagle/beagle.c
+++ b/board/ti/beagle/beagle.c
@@ -216,6 +216,16 @@ int misc_init_r(void)
TWL4030_PM_RECEIVER_VAUX2_DEV_GRP,
TWL4030_PM_RECEIVER_DEV_GRP_P1);
break;
+ case REVISION_XM_C:
+ printf("Beagle xM Rev C\n");
+ setenv("beaglerev", "xMC");
+ MUX_BEAGLE_XM();
+ /* Set VAUX2 to 1.8V for EHCI PHY */
+ twl4030_pmrecv_vsel_cfg(TWL4030_PM_RECEIVER_VAUX2_DEDICATED,
+ TWL4030_PM_RECEIVER_VAUX2_VSEL_18,
+ TWL4030_PM_RECEIVER_VAUX2_DEV_GRP,
+ TWL4030_PM_RECEIVER_DEV_GRP_P1);
+ break;
default:
printf("Beagle unknown 0x%02x\n", get_board_revision());
MUX_BEAGLE_XM();
diff --git a/board/ti/beagle/beagle.h b/board/ti/beagle/beagle.h
index a7401b1..04247cd 100644
--- a/board/ti/beagle/beagle.h
+++ b/board/ti/beagle/beagle.h
@@ -39,6 +39,7 @@ const omap3_sysinfo sysinfo = {
#define REVISION_C4 0x5
#define REVISION_XM_A 0x0
#define REVISION_XM_B 0x1
+#define REVISION_XM_C 0x2
/*
* IEN - Input Enable
--
1.6.6.1

View File

@@ -1,989 +0,0 @@
From 00b6a679e3c739567f1383030cd61483a15555f8 Mon Sep 17 00:00:00 2001
From: Simon Glass <sjg@chromium.org>
Date: Mon, 13 Jun 2011 13:13:09 +0000
Subject: [PATCH 05/30] Add support for SMSC95XX USB 2.0 10/100MBit Ethernet Adapter
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The SMSC95XX is a USB hub with a built-in Ethernet adapter. This adds support
for this, using the USB host network framework.
Changes for v2:
- Coding style cleanup
- Changed some comments as suggested
Changes for v3:
- Change turbo_mode to #define
Changes for v4:
- Dropped Tegra2 specific bit
- Fixed a few broken bits in SMSC from my testing
Changes for v5:
- Code style clean-ups in SMSC
- Cleaned up debugging of errors in SMSC driver
Changes for v6:
- Set NET_IP_ALIGN to 0 always
Changes for v8:
- Add setup of SMSC write_hwaddr function
Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Eric Bénard <eric@eukrea.com>
---
drivers/usb/eth/Makefile | 1 +
drivers/usb/eth/smsc95xx.c | 879 +++++++++++++++++++++++++++++++++++++++++++
drivers/usb/eth/usb_ether.c | 7 +
include/usb_ether.h | 13 +
4 files changed, 900 insertions(+), 0 deletions(-)
create mode 100644 drivers/usb/eth/smsc95xx.c
diff --git a/drivers/usb/eth/Makefile b/drivers/usb/eth/Makefile
index 6a5f25a..e28793d 100644
--- a/drivers/usb/eth/Makefile
+++ b/drivers/usb/eth/Makefile
@@ -28,6 +28,7 @@ COBJS-$(CONFIG_USB_HOST_ETHER) += usb_ether.o
ifdef CONFIG_USB_ETHER_ASIX
COBJS-y += asix.o
endif
+COBJS-$(CONFIG_USB_ETHER_SMSC95XX) += smsc95xx.o
COBJS := $(COBJS-y)
SRCS := $(COBJS:.o=.c)
diff --git a/drivers/usb/eth/smsc95xx.c b/drivers/usb/eth/smsc95xx.c
new file mode 100644
index 0000000..97f2729
--- /dev/null
+++ b/drivers/usb/eth/smsc95xx.c
@@ -0,0 +1,879 @@
+/*
+ * Copyright (c) 2011 The Chromium OS Authors.
+ * Copyright (C) 2009 NVIDIA, Corporation
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#include <common.h>
+#include <usb.h>
+#include <linux/mii.h>
+#include "usb_ether.h"
+
+/* SMSC LAN95xx based USB 2.0 Ethernet Devices */
+
+/* Tx command words */
+#define TX_CMD_A_FIRST_SEG_ 0x00002000
+#define TX_CMD_A_LAST_SEG_ 0x00001000
+
+/* Rx status word */
+#define RX_STS_FL_ 0x3FFF0000 /* Frame Length */
+#define RX_STS_ES_ 0x00008000 /* Error Summary */
+
+/* SCSRs */
+#define ID_REV 0x00
+
+#define INT_STS 0x08
+
+#define TX_CFG 0x10
+#define TX_CFG_ON_ 0x00000004
+
+#define HW_CFG 0x14
+#define HW_CFG_BIR_ 0x00001000
+#define HW_CFG_RXDOFF_ 0x00000600
+#define HW_CFG_MEF_ 0x00000020
+#define HW_CFG_BCE_ 0x00000002
+#define HW_CFG_LRST_ 0x00000008
+
+#define PM_CTRL 0x20
+#define PM_CTL_PHY_RST_ 0x00000010
+
+#define AFC_CFG 0x2C
+
+/*
+ * Hi watermark = 15.5Kb (~10 mtu pkts)
+ * low watermark = 3k (~2 mtu pkts)
+ * backpressure duration = ~ 350us
+ * Apply FC on any frame.
+ */
+#define AFC_CFG_DEFAULT 0x00F830A1
+
+#define E2P_CMD 0x30
+#define E2P_CMD_BUSY_ 0x80000000
+#define E2P_CMD_READ_ 0x00000000
+#define E2P_CMD_TIMEOUT_ 0x00000400
+#define E2P_CMD_LOADED_ 0x00000200
+#define E2P_CMD_ADDR_ 0x000001FF
+
+#define E2P_DATA 0x34
+
+#define BURST_CAP 0x38
+
+#define INT_EP_CTL 0x68
+#define INT_EP_CTL_PHY_INT_ 0x00008000
+
+#define BULK_IN_DLY 0x6C
+
+/* MAC CSRs */
+#define MAC_CR 0x100
+#define MAC_CR_MCPAS_ 0x00080000
+#define MAC_CR_PRMS_ 0x00040000
+#define MAC_CR_HPFILT_ 0x00002000
+#define MAC_CR_TXEN_ 0x00000008
+#define MAC_CR_RXEN_ 0x00000004
+
+#define ADDRH 0x104
+
+#define ADDRL 0x108
+
+#define MII_ADDR 0x114
+#define MII_WRITE_ 0x02
+#define MII_BUSY_ 0x01
+#define MII_READ_ 0x00 /* ~of MII Write bit */
+
+#define MII_DATA 0x118
+
+#define FLOW 0x11C
+
+#define VLAN1 0x120
+
+#define COE_CR 0x130
+#define Tx_COE_EN_ 0x00010000
+#define Rx_COE_EN_ 0x00000001
+
+/* Vendor-specific PHY Definitions */
+#define PHY_INT_SRC 29
+
+#define PHY_INT_MASK 30
+#define PHY_INT_MASK_ANEG_COMP_ ((u16)0x0040)
+#define PHY_INT_MASK_LINK_DOWN_ ((u16)0x0010)
+#define PHY_INT_MASK_DEFAULT_ (PHY_INT_MASK_ANEG_COMP_ | \
+ PHY_INT_MASK_LINK_DOWN_)
+
+/* USB Vendor Requests */
+#define USB_VENDOR_REQUEST_WRITE_REGISTER 0xA0
+#define USB_VENDOR_REQUEST_READ_REGISTER 0xA1
+
+/* Some extra defines */
+#define HS_USB_PKT_SIZE 512
+#define FS_USB_PKT_SIZE 64
+#define DEFAULT_HS_BURST_CAP_SIZE (16 * 1024 + 5 * HS_USB_PKT_SIZE)
+#define DEFAULT_FS_BURST_CAP_SIZE (6 * 1024 + 33 * FS_USB_PKT_SIZE)
+#define DEFAULT_BULK_IN_DELAY 0x00002000
+#define MAX_SINGLE_PACKET_SIZE 2048
+#define EEPROM_MAC_OFFSET 0x01
+#define SMSC95XX_INTERNAL_PHY_ID 1
+#define ETH_P_8021Q 0x8100 /* 802.1Q VLAN Extended Header */
+
+/* local defines */
+#define SMSC95XX_BASE_NAME "sms"
+#define USB_CTRL_SET_TIMEOUT 5000
+#define USB_CTRL_GET_TIMEOUT 5000
+#define USB_BULK_SEND_TIMEOUT 5000
+#define USB_BULK_RECV_TIMEOUT 5000
+
+#define AX_RX_URB_SIZE 2048
+#define PHY_CONNECT_TIMEOUT 5000
+
+#define TURBO_MODE
+
+/* local vars */
+static int curr_eth_dev; /* index for name of next device detected */
+
+
+/*
+ * Smsc95xx infrastructure commands
+ */
+static int smsc95xx_write_reg(struct ueth_data *dev, u32 index, u32 data)
+{
+ int len;
+
+ cpu_to_le32s(&data);
+
+ len = usb_control_msg(dev->pusb_dev, usb_sndctrlpipe(dev->pusb_dev, 0),
+ USB_VENDOR_REQUEST_WRITE_REGISTER,
+ USB_DIR_OUT | USB_TYPE_VENDOR | USB_RECIP_DEVICE,
+ 00, index, &data, sizeof(data), USB_CTRL_SET_TIMEOUT);
+ if (len != sizeof(data)) {
+ debug("smsc95xx_write_reg failed: index=%d, data=%d, len=%d",
+ index, data, len);
+ return -1;
+ }
+ return 0;
+}
+
+static int smsc95xx_read_reg(struct ueth_data *dev, u32 index, u32 *data)
+{
+ int len;
+
+ len = usb_control_msg(dev->pusb_dev, usb_rcvctrlpipe(dev->pusb_dev, 0),
+ USB_VENDOR_REQUEST_READ_REGISTER,
+ USB_DIR_IN | USB_TYPE_VENDOR | USB_RECIP_DEVICE,
+ 00, index, data, sizeof(data), USB_CTRL_GET_TIMEOUT);
+ if (len != sizeof(data)) {
+ debug("smsc95xx_read_reg failed: index=%d, len=%d",
+ index, len);
+ return -1;
+ }
+
+ le32_to_cpus(data);
+ return 0;
+}
+
+/* Loop until the read is completed with timeout */
+static int smsc95xx_phy_wait_not_busy(struct ueth_data *dev)
+{
+ unsigned long start_time = get_timer(0);
+ u32 val;
+
+ do {
+ smsc95xx_read_reg(dev, MII_ADDR, &val);
+ if (!(val & MII_BUSY_))
+ return 0;
+ } while (get_timer(start_time) < 1 * 1000 * 1000);
+
+ return -1;
+}
+
+static int smsc95xx_mdio_read(struct ueth_data *dev, int phy_id, int idx)
+{
+ u32 val, addr;
+
+ /* confirm MII not busy */
+ if (smsc95xx_phy_wait_not_busy(dev)) {
+ debug("MII is busy in smsc95xx_mdio_read\n");
+ return -1;
+ }
+
+ /* set the address, index & direction (read from PHY) */
+ addr = (phy_id << 11) | (idx << 6) | MII_READ_;
+ smsc95xx_write_reg(dev, MII_ADDR, addr);
+
+ if (smsc95xx_phy_wait_not_busy(dev)) {
+ debug("Timed out reading MII reg %02X\n", idx);
+ return -1;
+ }
+
+ smsc95xx_read_reg(dev, MII_DATA, &val);
+
+ return (u16)(val & 0xFFFF);
+}
+
+static void smsc95xx_mdio_write(struct ueth_data *dev, int phy_id, int idx,
+ int regval)
+{
+ u32 val, addr;
+
+ /* confirm MII not busy */
+ if (smsc95xx_phy_wait_not_busy(dev)) {
+ debug("MII is busy in smsc95xx_mdio_write\n");
+ return;
+ }
+
+ val = regval;
+ smsc95xx_write_reg(dev, MII_DATA, val);
+
+ /* set the address, index & direction (write to PHY) */
+ addr = (phy_id << 11) | (idx << 6) | MII_WRITE_;
+ smsc95xx_write_reg(dev, MII_ADDR, addr);
+
+ if (smsc95xx_phy_wait_not_busy(dev))
+ debug("Timed out writing MII reg %02X\n", idx);
+}
+
+static int smsc95xx_eeprom_confirm_not_busy(struct ueth_data *dev)
+{
+ unsigned long start_time = get_timer(0);
+ u32 val;
+
+ do {
+ smsc95xx_read_reg(dev, E2P_CMD, &val);
+ if (!(val & E2P_CMD_LOADED_)) {
+ debug("No EEPROM present\n");
+ return -1;
+ }
+ if (!(val & E2P_CMD_BUSY_))
+ return 0;
+ udelay(40);
+ } while (get_timer(start_time) < 1 * 1000 * 1000);
+
+ debug("EEPROM is busy\n");
+ return -1;
+}
+
+static int smsc95xx_wait_eeprom(struct ueth_data *dev)
+{
+ unsigned long start_time = get_timer(0);
+ u32 val;
+
+ do {
+ smsc95xx_read_reg(dev, E2P_CMD, &val);
+ if (!(val & E2P_CMD_BUSY_) || (val & E2P_CMD_TIMEOUT_))
+ break;
+ udelay(40);
+ } while (get_timer(start_time) < 1 * 1000 * 1000);
+
+ if (val & (E2P_CMD_TIMEOUT_ | E2P_CMD_BUSY_)) {
+ debug("EEPROM read operation timeout\n");
+ return -1;
+ }
+ return 0;
+}
+
+static int smsc95xx_read_eeprom(struct ueth_data *dev, u32 offset, u32 length,
+ u8 *data)
+{
+ u32 val;
+ int i, ret;
+
+ ret = smsc95xx_eeprom_confirm_not_busy(dev);
+ if (ret)
+ return ret;
+
+ for (i = 0; i < length; i++) {
+ val = E2P_CMD_BUSY_ | E2P_CMD_READ_ | (offset & E2P_CMD_ADDR_);
+ smsc95xx_write_reg(dev, E2P_CMD, val);
+
+ ret = smsc95xx_wait_eeprom(dev);
+ if (ret < 0)
+ return ret;
+
+ smsc95xx_read_reg(dev, E2P_DATA, &val);
+ data[i] = val & 0xFF;
+ offset++;
+ }
+ return 0;
+}
+
+/*
+ * mii_nway_restart - restart NWay (autonegotiation) for this interface
+ *
+ * Returns 0 on success, negative on error.
+ */
+static int mii_nway_restart(struct ueth_data *dev)
+{
+ int bmcr;
+ int r = -1;
+
+ /* if autoneg is off, it's an error */
+ bmcr = smsc95xx_mdio_read(dev, dev->phy_id, MII_BMCR);
+
+ if (bmcr & BMCR_ANENABLE) {
+ bmcr |= BMCR_ANRESTART;
+ smsc95xx_mdio_write(dev, dev->phy_id, MII_BMCR, bmcr);
+ r = 0;
+ }
+ return r;
+}
+
+static int smsc95xx_phy_initialize(struct ueth_data *dev)
+{
+ smsc95xx_mdio_write(dev, dev->phy_id, MII_BMCR, BMCR_RESET);
+ smsc95xx_mdio_write(dev, dev->phy_id, MII_ADVERTISE,
+ ADVERTISE_ALL | ADVERTISE_CSMA | ADVERTISE_PAUSE_CAP |
+ ADVERTISE_PAUSE_ASYM);
+
+ /* read to clear */
+ smsc95xx_mdio_read(dev, dev->phy_id, PHY_INT_SRC);
+
+ smsc95xx_mdio_write(dev, dev->phy_id, PHY_INT_MASK,
+ PHY_INT_MASK_DEFAULT_);
+ mii_nway_restart(dev);
+
+ debug("phy initialised succesfully\n");
+ return 0;
+}
+
+static int smsc95xx_init_mac_address(struct eth_device *eth,
+ struct ueth_data *dev)
+{
+ /* try reading mac address from EEPROM */
+ if (smsc95xx_read_eeprom(dev, EEPROM_MAC_OFFSET, ETH_ALEN,
+ eth->enetaddr) == 0) {
+ if (is_valid_ether_addr(eth->enetaddr)) {
+ /* eeprom values are valid so use them */
+ debug("MAC address read from EEPROM\n");
+ return 0;
+ }
+ }
+
+ /*
+ * No eeprom, or eeprom values are invalid. Generating a random MAC
+ * address is not safe. Just return an error.
+ */
+ return -1;
+}
+
+static int smsc95xx_write_hwaddr(struct eth_device *eth)
+{
+ struct ueth_data *dev = (struct ueth_data *)eth->priv;
+ u32 addr_lo, addr_hi;
+ int ret;
+
+ /* set hardware address */
+ debug("** %s()\n", __func__);
+ addr_lo = cpu_to_le32(*((u32 *)eth->enetaddr));
+ addr_hi = cpu_to_le16(*((u16 *)(eth->enetaddr + 4)));
+ ret = smsc95xx_write_reg(dev, ADDRL, addr_lo);
+ if (ret < 0) {
+ debug("Failed to write ADDRL: %d\n", ret);
+ return ret;
+ }
+
+ ret = smsc95xx_write_reg(dev, ADDRH, addr_hi);
+ if (ret < 0)
+ return ret;
+ debug("MAC %02x:%02x:%02x:%02x:%02x:%02x\n",
+ eth->enetaddr[0], eth->enetaddr[1],
+ eth->enetaddr[2], eth->enetaddr[3],
+ eth->enetaddr[4], eth->enetaddr[5]);
+ dev->have_hwaddr = 1;
+ return 0;
+}
+
+/* Enable or disable Tx & Rx checksum offload engines */
+static int smsc95xx_set_csums(struct ueth_data *dev,
+ int use_tx_csum, int use_rx_csum)
+{
+ u32 read_buf;
+ int ret = smsc95xx_read_reg(dev, COE_CR, &read_buf);
+ if (ret < 0)
+ return ret;
+
+ if (use_tx_csum)
+ read_buf |= Tx_COE_EN_;
+ else
+ read_buf &= ~Tx_COE_EN_;
+
+ if (use_rx_csum)
+ read_buf |= Rx_COE_EN_;
+ else
+ read_buf &= ~Rx_COE_EN_;
+
+ ret = smsc95xx_write_reg(dev, COE_CR, read_buf);
+ if (ret < 0)
+ return ret;
+
+ debug("COE_CR = 0x%08x\n", read_buf);
+ return 0;
+}
+
+static void smsc95xx_set_multicast(struct ueth_data *dev)
+{
+ /* No multicast in u-boot */
+ dev->mac_cr &= ~(MAC_CR_PRMS_ | MAC_CR_MCPAS_ | MAC_CR_HPFILT_);
+}
+
+/* starts the TX path */
+static void smsc95xx_start_tx_path(struct ueth_data *dev)
+{
+ u32 reg_val;
+
+ /* Enable Tx at MAC */
+ dev->mac_cr |= MAC_CR_TXEN_;
+
+ smsc95xx_write_reg(dev, MAC_CR, dev->mac_cr);
+
+ /* Enable Tx at SCSRs */
+ reg_val = TX_CFG_ON_;
+ smsc95xx_write_reg(dev, TX_CFG, reg_val);
+}
+
+/* Starts the Receive path */
+static void smsc95xx_start_rx_path(struct ueth_data *dev)
+{
+ dev->mac_cr |= MAC_CR_RXEN_;
+ smsc95xx_write_reg(dev, MAC_CR, dev->mac_cr);
+}
+
+/*
+ * Smsc95xx callbacks
+ */
+static int smsc95xx_init(struct eth_device *eth, bd_t *bd)
+{
+ int ret;
+ u32 write_buf;
+ u32 read_buf;
+ u32 burst_cap;
+ int timeout;
+ struct ueth_data *dev = (struct ueth_data *)eth->priv;
+#define TIMEOUT_RESOLUTION 50 /* ms */
+ int link_detected;
+
+ debug("** %s()\n", __func__);
+ dev->phy_id = SMSC95XX_INTERNAL_PHY_ID; /* fixed phy id */
+
+ write_buf = HW_CFG_LRST_;
+ ret = smsc95xx_write_reg(dev, HW_CFG, write_buf);
+ if (ret < 0)
+ return ret;
+
+ timeout = 0;
+ do {
+ ret = smsc95xx_read_reg(dev, HW_CFG, &read_buf);
+ if (ret < 0)
+ return ret;
+ udelay(10 * 1000);
+ timeout++;
+ } while ((read_buf & HW_CFG_LRST_) && (timeout < 100));
+
+ if (timeout >= 100) {
+ debug("timeout waiting for completion of Lite Reset\n");
+ return -1;
+ }
+
+ write_buf = PM_CTL_PHY_RST_;
+ ret = smsc95xx_write_reg(dev, PM_CTRL, write_buf);
+ if (ret < 0)
+ return ret;
+
+ timeout = 0;
+ do {
+ ret = smsc95xx_read_reg(dev, PM_CTRL, &read_buf);
+ if (ret < 0)
+ return ret;
+ udelay(10 * 1000);
+ timeout++;
+ } while ((read_buf & PM_CTL_PHY_RST_) && (timeout < 100));
+ if (timeout >= 100) {
+ debug("timeout waiting for PHY Reset\n");
+ return -1;
+ }
+ if (!dev->have_hwaddr && smsc95xx_init_mac_address(eth, dev) == 0)
+ dev->have_hwaddr = 1;
+ if (!dev->have_hwaddr) {
+ puts("Error: SMSC95xx: No MAC address set - set usbethaddr\n");
+ return -1;
+ }
+ if (smsc95xx_write_hwaddr(eth) < 0)
+ return -1;
+
+ ret = smsc95xx_read_reg(dev, HW_CFG, &read_buf);
+ if (ret < 0)
+ return ret;
+ debug("Read Value from HW_CFG : 0x%08x\n", read_buf);
+
+ read_buf |= HW_CFG_BIR_;
+ ret = smsc95xx_write_reg(dev, HW_CFG, read_buf);
+ if (ret < 0)
+ return ret;
+
+ ret = smsc95xx_read_reg(dev, HW_CFG, &read_buf);
+ if (ret < 0)
+ return ret;
+ debug("Read Value from HW_CFG after writing "
+ "HW_CFG_BIR_: 0x%08x\n", read_buf);
+
+#ifdef TURBO_MODE
+ if (dev->pusb_dev->speed == USB_SPEED_HIGH) {
+ burst_cap = DEFAULT_HS_BURST_CAP_SIZE / HS_USB_PKT_SIZE;
+ dev->rx_urb_size = DEFAULT_HS_BURST_CAP_SIZE;
+ } else {
+ burst_cap = DEFAULT_FS_BURST_CAP_SIZE / FS_USB_PKT_SIZE;
+ dev->rx_urb_size = DEFAULT_FS_BURST_CAP_SIZE;
+ }
+#else
+ burst_cap = 0;
+ dev->rx_urb_size = MAX_SINGLE_PACKET_SIZE;
+#endif
+ debug("rx_urb_size=%ld\n", (ulong)dev->rx_urb_size);
+
+ ret = smsc95xx_write_reg(dev, BURST_CAP, burst_cap);
+ if (ret < 0)
+ return ret;
+
+ ret = smsc95xx_read_reg(dev, BURST_CAP, &read_buf);
+ if (ret < 0)
+ return ret;
+ debug("Read Value from BURST_CAP after writing: 0x%08x\n", read_buf);
+
+ read_buf = DEFAULT_BULK_IN_DELAY;
+ ret = smsc95xx_write_reg(dev, BULK_IN_DLY, read_buf);
+ if (ret < 0)
+ return ret;
+
+ ret = smsc95xx_read_reg(dev, BULK_IN_DLY, &read_buf);
+ if (ret < 0)
+ return ret;
+ debug("Read Value from BULK_IN_DLY after writing: "
+ "0x%08x\n", read_buf);
+
+ ret = smsc95xx_read_reg(dev, HW_CFG, &read_buf);
+ if (ret < 0)
+ return ret;
+ debug("Read Value from HW_CFG: 0x%08x\n", read_buf);
+
+#ifdef TURBO_MODE
+ read_buf |= (HW_CFG_MEF_ | HW_CFG_BCE_);
+#endif
+ read_buf &= ~HW_CFG_RXDOFF_;
+
+#define NET_IP_ALIGN 0
+ read_buf |= NET_IP_ALIGN << 9;
+
+ ret = smsc95xx_write_reg(dev, HW_CFG, read_buf);
+ if (ret < 0)
+ return ret;
+
+ ret = smsc95xx_read_reg(dev, HW_CFG, &read_buf);
+ if (ret < 0)
+ return ret;
+ debug("Read Value from HW_CFG after writing: 0x%08x\n", read_buf);
+
+ write_buf = 0xFFFFFFFF;
+ ret = smsc95xx_write_reg(dev, INT_STS, write_buf);
+ if (ret < 0)
+ return ret;
+
+ ret = smsc95xx_read_reg(dev, ID_REV, &read_buf);
+ if (ret < 0)
+ return ret;
+ debug("ID_REV = 0x%08x\n", read_buf);
+
+ /* Init Tx */
+ write_buf = 0;
+ ret = smsc95xx_write_reg(dev, FLOW, write_buf);
+ if (ret < 0)
+ return ret;
+
+ read_buf = AFC_CFG_DEFAULT;
+ ret = smsc95xx_write_reg(dev, AFC_CFG, read_buf);
+ if (ret < 0)
+ return ret;
+
+ ret = smsc95xx_read_reg(dev, MAC_CR, &dev->mac_cr);
+ if (ret < 0)
+ return ret;
+
+ /* Init Rx. Set Vlan */
+ write_buf = (u32)ETH_P_8021Q;
+ ret = smsc95xx_write_reg(dev, VLAN1, write_buf);
+ if (ret < 0)
+ return ret;
+
+ /* Disable checksum offload engines */
+ ret = smsc95xx_set_csums(dev, 0, 0);
+ if (ret < 0) {
+ debug("Failed to set csum offload: %d\n", ret);
+ return ret;
+ }
+ smsc95xx_set_multicast(dev);
+
+ if (smsc95xx_phy_initialize(dev) < 0)
+ return -1;
+ ret = smsc95xx_read_reg(dev, INT_EP_CTL, &read_buf);
+ if (ret < 0)
+ return ret;
+
+ /* enable PHY interrupts */
+ read_buf |= INT_EP_CTL_PHY_INT_;
+
+ ret = smsc95xx_write_reg(dev, INT_EP_CTL, read_buf);
+ if (ret < 0)
+ return ret;
+
+ smsc95xx_start_tx_path(dev);
+ smsc95xx_start_rx_path(dev);
+
+ timeout = 0;
+ do {
+ link_detected = smsc95xx_mdio_read(dev, dev->phy_id, MII_BMSR)
+ & BMSR_LSTATUS;
+ if (!link_detected) {
+ if (timeout == 0)
+ printf("Waiting for Ethernet connection... ");
+ udelay(TIMEOUT_RESOLUTION * 1000);
+ timeout += TIMEOUT_RESOLUTION;
+ }
+ } while (!link_detected && timeout < PHY_CONNECT_TIMEOUT);
+ if (link_detected) {
+ if (timeout != 0)
+ printf("done.\n");
+ } else {
+ printf("unable to connect.\n");
+ return -1;
+ }
+ return 0;
+}
+
+static int smsc95xx_send(struct eth_device *eth, volatile void* packet,
+ int length)
+{
+ struct ueth_data *dev = (struct ueth_data *)eth->priv;
+ int err;
+ int actual_len;
+ u32 tx_cmd_a;
+ u32 tx_cmd_b;
+ unsigned char msg[PKTSIZE + sizeof(tx_cmd_a) + sizeof(tx_cmd_b)];
+
+ debug("** %s(), len %d, buf %#x\n", __func__, length, (int)msg);
+ if (length > PKTSIZE)
+ return -1;
+
+ tx_cmd_a = (u32)length | TX_CMD_A_FIRST_SEG_ | TX_CMD_A_LAST_SEG_;
+ tx_cmd_b = (u32)length;
+ cpu_to_le32s(&tx_cmd_a);
+ cpu_to_le32s(&tx_cmd_b);
+
+ /* prepend cmd_a and cmd_b */
+ memcpy(msg, &tx_cmd_a, sizeof(tx_cmd_a));
+ memcpy(msg + sizeof(tx_cmd_a), &tx_cmd_b, sizeof(tx_cmd_b));
+ memcpy(msg + sizeof(tx_cmd_a) + sizeof(tx_cmd_b), (void *)packet,
+ length);
+ err = usb_bulk_msg(dev->pusb_dev,
+ usb_sndbulkpipe(dev->pusb_dev, dev->ep_out),
+ (void *)msg,
+ length + sizeof(tx_cmd_a) + sizeof(tx_cmd_b),
+ &actual_len,
+ USB_BULK_SEND_TIMEOUT);
+ debug("Tx: len = %u, actual = %u, err = %d\n",
+ length + sizeof(tx_cmd_a) + sizeof(tx_cmd_b),
+ actual_len, err);
+ return err;
+}
+
+static int smsc95xx_recv(struct eth_device *eth)
+{
+ struct ueth_data *dev = (struct ueth_data *)eth->priv;
+ static unsigned char recv_buf[AX_RX_URB_SIZE];
+ unsigned char *buf_ptr;
+ int err;
+ int actual_len;
+ u32 packet_len;
+ int cur_buf_align;
+
+ debug("** %s()\n", __func__);
+ err = usb_bulk_msg(dev->pusb_dev,
+ usb_rcvbulkpipe(dev->pusb_dev, dev->ep_in),
+ (void *)recv_buf,
+ AX_RX_URB_SIZE,
+ &actual_len,
+ USB_BULK_RECV_TIMEOUT);
+ debug("Rx: len = %u, actual = %u, err = %d\n", AX_RX_URB_SIZE,
+ actual_len, err);
+ if (err != 0) {
+ debug("Rx: failed to receive\n");
+ return -1;
+ }
+ if (actual_len > AX_RX_URB_SIZE) {
+ debug("Rx: received too many bytes %d\n", actual_len);
+ return -1;
+ }
+
+ buf_ptr = recv_buf;
+ while (actual_len > 0) {
+ /*
+ * 1st 4 bytes contain the length of the actual data plus error
+ * info. Extract data length.
+ */
+ if (actual_len < sizeof(packet_len)) {
+ debug("Rx: incomplete packet length\n");
+ return -1;
+ }
+ memcpy(&packet_len, buf_ptr, sizeof(packet_len));
+ le32_to_cpus(&packet_len);
+ if (packet_len & RX_STS_ES_) {
+ debug("Rx: Error header=%#x", packet_len);
+ return -1;
+ }
+ packet_len = ((packet_len & RX_STS_FL_) >> 16);
+
+ if (packet_len > actual_len - sizeof(packet_len)) {
+ debug("Rx: too large packet: %d\n", packet_len);
+ return -1;
+ }
+
+ /* Notify net stack */
+ NetReceive(buf_ptr + sizeof(packet_len), packet_len - 4);
+
+ /* Adjust for next iteration */
+ actual_len -= sizeof(packet_len) + packet_len;
+ buf_ptr += sizeof(packet_len) + packet_len;
+ cur_buf_align = (int)buf_ptr - (int)recv_buf;
+
+ if (cur_buf_align & 0x03) {
+ int align = 4 - (cur_buf_align & 0x03);
+
+ actual_len -= align;
+ buf_ptr += align;
+ }
+ }
+ return err;
+}
+
+static void smsc95xx_halt(struct eth_device *eth)
+{
+ debug("** %s()\n", __func__);
+}
+
+/*
+ * SMSC probing functions
+ */
+void smsc95xx_eth_before_probe(void)
+{
+ curr_eth_dev = 0;
+}
+
+struct smsc95xx_dongle {
+ unsigned short vendor;
+ unsigned short product;
+};
+
+static const struct smsc95xx_dongle smsc95xx_dongles[] = {
+ { 0x0424, 0xec00 }, /* LAN9512/LAN9514 Ethernet */
+ { 0x0424, 0x9500 }, /* LAN9500 Ethernet */
+ { 0x0000, 0x0000 } /* END - Do not remove */
+};
+
+/* Probe to see if a new device is actually an SMSC device */
+int smsc95xx_eth_probe(struct usb_device *dev, unsigned int ifnum,
+ struct ueth_data *ss)
+{
+ struct usb_interface *iface;
+ struct usb_interface_descriptor *iface_desc;
+ int i;
+
+ /* let's examine the device now */
+ iface = &dev->config.if_desc[ifnum];
+ iface_desc = &dev->config.if_desc[ifnum].desc;
+
+ for (i = 0; smsc95xx_dongles[i].vendor != 0; i++) {
+ if (dev->descriptor.idVendor == smsc95xx_dongles[i].vendor &&
+ dev->descriptor.idProduct == smsc95xx_dongles[i].product)
+ /* Found a supported dongle */
+ break;
+ }
+ if (smsc95xx_dongles[i].vendor == 0)
+ return 0;
+
+ /* At this point, we know we've got a live one */
+ debug("\n\nUSB Ethernet device detected\n");
+ memset(ss, '\0', sizeof(struct ueth_data));
+
+ /* Initialize the ueth_data structure with some useful info */
+ ss->ifnum = ifnum;
+ ss->pusb_dev = dev;
+ ss->subclass = iface_desc->bInterfaceSubClass;
+ ss->protocol = iface_desc->bInterfaceProtocol;
+
+ /*
+ * We are expecting a minimum of 3 endpoints - in, out (bulk), and int.
+ * We will ignore any others.
+ */
+ for (i = 0; i < iface_desc->bNumEndpoints; i++) {
+ /* is it an BULK endpoint? */
+ if ((iface->ep_desc[i].bmAttributes &
+ USB_ENDPOINT_XFERTYPE_MASK) == USB_ENDPOINT_XFER_BULK) {
+ if (iface->ep_desc[i].bEndpointAddress & USB_DIR_IN)
+ ss->ep_in =
+ iface->ep_desc[i].bEndpointAddress &
+ USB_ENDPOINT_NUMBER_MASK;
+ else
+ ss->ep_out =
+ iface->ep_desc[i].bEndpointAddress &
+ USB_ENDPOINT_NUMBER_MASK;
+ }
+
+ /* is it an interrupt endpoint? */
+ if ((iface->ep_desc[i].bmAttributes &
+ USB_ENDPOINT_XFERTYPE_MASK) == USB_ENDPOINT_XFER_INT) {
+ ss->ep_int = iface->ep_desc[i].bEndpointAddress &
+ USB_ENDPOINT_NUMBER_MASK;
+ ss->irqinterval = iface->ep_desc[i].bInterval;
+ }
+ }
+ debug("Endpoints In %d Out %d Int %d\n",
+ ss->ep_in, ss->ep_out, ss->ep_int);
+
+ /* Do some basic sanity checks, and bail if we find a problem */
+ if (usb_set_interface(dev, iface_desc->bInterfaceNumber, 0) ||
+ !ss->ep_in || !ss->ep_out || !ss->ep_int) {
+ debug("Problems with device\n");
+ return 0;
+ }
+ dev->privptr = (void *)ss;
+ return 1;
+}
+
+int smsc95xx_eth_get_info(struct usb_device *dev, struct ueth_data *ss,
+ struct eth_device *eth)
+{
+ debug("** %s()\n", __func__);
+ if (!eth) {
+ debug("%s: missing parameter.\n", __func__);
+ return 0;
+ }
+ sprintf(eth->name, "%s%d", SMSC95XX_BASE_NAME, curr_eth_dev++);
+ eth->init = smsc95xx_init;
+ eth->send = smsc95xx_send;
+ eth->recv = smsc95xx_recv;
+ eth->halt = smsc95xx_halt;
+ eth->write_hwaddr = smsc95xx_write_hwaddr;
+ eth->priv = ss;
+ return 1;
+}
diff --git a/drivers/usb/eth/usb_ether.c b/drivers/usb/eth/usb_ether.c
index 68a0883..7b55da3 100644
--- a/drivers/usb/eth/usb_ether.c
+++ b/drivers/usb/eth/usb_ether.c
@@ -45,6 +45,13 @@ static const struct usb_eth_prob_dev prob_dev[] = {
.get_info = asix_eth_get_info,
},
#endif
+#ifdef CONFIG_USB_ETHER_SMSC95XX
+ {
+ .before_probe = smsc95xx_eth_before_probe,
+ .probe = smsc95xx_eth_probe,
+ .get_info = smsc95xx_eth_get_info,
+ },
+#endif
{ }, /* END */
};
diff --git a/include/usb_ether.h b/include/usb_ether.h
index 825c275..a7fb26b 100644
--- a/include/usb_ether.h
+++ b/include/usb_ether.h
@@ -51,6 +51,11 @@ struct ueth_data {
unsigned char irqinterval; /* Intervall for IRQ Pipe */
/* private fields for each driver can go here if needed */
+#ifdef CONFIG_USB_ETHER_SMSC95XX
+ size_t rx_urb_size; /* maximum USB URB size */
+ u32 mac_cr; /* MAC control register value */
+ int have_hwaddr; /* 1 if we have a hardware MAC address */
+#endif
};
/*
@@ -65,4 +70,12 @@ int asix_eth_get_info(struct usb_device *dev, struct ueth_data *ss,
struct eth_device *eth);
#endif
+#ifdef CONFIG_USB_ETHER_SMSC95XX
+void smsc95xx_eth_before_probe(void);
+int smsc95xx_eth_probe(struct usb_device *dev, unsigned int ifnum,
+ struct ueth_data *ss);
+int smsc95xx_eth_get_info(struct usb_device *dev, struct ueth_data *ss,
+ struct eth_device *eth);
+#endif
+
#endif /* __USB_ETHER_H__ */
--
1.6.6.1

View File

@@ -1,245 +0,0 @@
From f8ff7b1760739c33b1b0aa5a88d903e6e8945f1c Mon Sep 17 00:00:00 2001
From: Simon Glass <sjg@chromium.org>
Date: Mon, 13 Jun 2011 13:13:10 +0000
Subject: [PATCH 06/30] Add Ethernet hardware MAC address framework to usbnet
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Built-in Ethernet adapters support setting the mac address by means of a
ethaddr environment variable for each interface (ethaddr, eth1addr, eth2addr).
This adds similar support to the USB network side, using the names
usbethaddr, usbeth1addr, etc. They are kept separate since we don't want
a USB device taking the MAC address of a built-in device or vice versa.
Changes for v2:
- eth_set_hwaddr -> eth_write_hwaddr
- tided up other users of eth_getenv_enetaddr_by_index()
Changes for v5:
- Changed NULL to "eth" in eth_getenv_enetaddr_by_index() API
Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Eric Bénard <eric@eukrea.com>
---
board/davinci/common/misc.c | 2 +-
drivers/net/designware.c | 2 +-
drivers/usb/eth/usb_ether.c | 9 +++++-
include/net.h | 25 ++++++++++++++++-
net/eth.c | 64 ++++++++++++++++++++++++++-----------------
5 files changed, 72 insertions(+), 30 deletions(-)
diff --git a/board/davinci/common/misc.c b/board/davinci/common/misc.c
index 2bfdf23..53d6aa1 100644
--- a/board/davinci/common/misc.c
+++ b/board/davinci/common/misc.c
@@ -101,7 +101,7 @@ void davinci_sync_env_enetaddr(uint8_t *rom_enetaddr)
{
uint8_t env_enetaddr[6];
- eth_getenv_enetaddr_by_index(0, env_enetaddr);
+ eth_getenv_enetaddr_by_index("eth", 0, env_enetaddr);
if (!memcmp(env_enetaddr, "\0\0\0\0\0\0", 6)) {
/* There is no MAC address in the environment, so we initialize
* it from the value in the EEPROM. */
diff --git a/drivers/net/designware.c b/drivers/net/designware.c
index 3f5eeb7..02ba393 100644
--- a/drivers/net/designware.c
+++ b/drivers/net/designware.c
@@ -500,7 +500,7 @@ int designware_initialize(u32 id, ulong base_addr, u32 phy_addr)
dev->iobase = (int)base_addr;
dev->priv = priv;
- eth_getenv_enetaddr_by_index(id, &dev->enetaddr[0]);
+ eth_getenv_enetaddr_by_index("eth", id, &dev->enetaddr[0]);
priv->dev = dev;
priv->mac_regs_p = (struct eth_mac_regs *)base_addr;
diff --git a/drivers/usb/eth/usb_ether.c b/drivers/usb/eth/usb_ether.c
index 7b55da3..6565ea5 100644
--- a/drivers/usb/eth/usb_ether.c
+++ b/drivers/usb/eth/usb_ether.c
@@ -80,6 +80,7 @@ int is_eth_dev_on_usb_host(void)
*/
static void probe_valid_drivers(struct usb_device *dev)
{
+ struct eth_device *eth;
int j;
for (j = 0; prob_dev[j].probe && prob_dev[j].get_info; j++) {
@@ -88,9 +89,10 @@ static void probe_valid_drivers(struct usb_device *dev)
/*
* ok, it is a supported eth device. Get info and fill it in
*/
+ eth = &usb_eth[usb_max_eth_dev].eth_dev;
if (prob_dev[j].get_info(dev,
&usb_eth[usb_max_eth_dev],
- &usb_eth[usb_max_eth_dev].eth_dev)) {
+ eth)) {
/* found proper driver */
/* register with networking stack */
usb_max_eth_dev++;
@@ -100,7 +102,10 @@ static void probe_valid_drivers(struct usb_device *dev)
* call since eth_current_changed (internally called)
* relies on it
*/
- eth_register(&usb_eth[usb_max_eth_dev - 1].eth_dev);
+ eth_register(eth);
+ if (eth_write_hwaddr(eth, "usbeth",
+ usb_max_eth_dev - 1))
+ puts("Warning: failed to set MAC address\n");
break;
}
}
diff --git a/include/net.h b/include/net.h
index 018a744..ce54825 100644
--- a/include/net.h
+++ b/include/net.h
@@ -128,7 +128,18 @@ extern int eth_get_dev_index (void); /* get the device index */
extern void eth_parse_enetaddr(const char *addr, uchar *enetaddr);
extern int eth_getenv_enetaddr(char *name, uchar *enetaddr);
extern int eth_setenv_enetaddr(char *name, const uchar *enetaddr);
-extern int eth_getenv_enetaddr_by_index(int index, uchar *enetaddr);
+
+/*
+ * Get the hardware address for an ethernet interface .
+ * Args:
+ * base_name - base name for device (normally "eth")
+ * index - device index number (0 for first)
+ * enetaddr - returns 6 byte hardware address
+ * Returns:
+ * Return true if the address is valid.
+ */
+extern int eth_getenv_enetaddr_by_index(const char *base_name, int index,
+ uchar *enetaddr);
extern int usb_eth_initialize(bd_t *bi);
extern int eth_init(bd_t *bis); /* Initialize the device */
@@ -141,6 +152,18 @@ extern int eth_rx(void); /* Check for received packets */
extern void eth_halt(void); /* stop SCC */
extern char *eth_get_name(void); /* get name of current device */
+/*
+ * Set the hardware address for an ethernet interface based on 'eth%daddr'
+ * environment variable (or just 'ethaddr' if eth_number is 0).
+ * Args:
+ * base_name - base name for device (normally "eth")
+ * eth_number - value of %d (0 for first device of this type)
+ * Returns:
+ * 0 is success, non-zero is error status from driver.
+ */
+int eth_write_hwaddr(struct eth_device *dev, const char *base_name,
+ int eth_number);
+
#ifdef CONFIG_MCAST_TFTP
int eth_mcast_join( IPaddr_t mcast_addr, u8 join);
u32 ether_crc (size_t len, unsigned char const *p);
diff --git a/net/eth.c b/net/eth.c
index 6523834..b3ea565 100644
--- a/net/eth.c
+++ b/net/eth.c
@@ -54,10 +54,11 @@ int eth_setenv_enetaddr(char *name, const uchar *enetaddr)
return setenv(name, buf);
}
-int eth_getenv_enetaddr_by_index(int index, uchar *enetaddr)
+int eth_getenv_enetaddr_by_index(const char *base_name, int index,
+ uchar *enetaddr)
{
char enetvar[32];
- sprintf(enetvar, index ? "eth%daddr" : "ethaddr", index);
+ sprintf(enetvar, index ? "%s%daddr" : "%saddr", base_name, index);
return eth_getenv_enetaddr(enetvar, enetaddr);
}
@@ -188,6 +189,38 @@ static void eth_current_changed(void)
#endif
}
+int eth_write_hwaddr(struct eth_device *dev, const char *base_name,
+ int eth_number)
+{
+ unsigned char env_enetaddr[6];
+ int ret = 0;
+
+ if (!eth_getenv_enetaddr_by_index(base_name, eth_number, env_enetaddr))
+ return -1;
+
+ if (memcmp(env_enetaddr, "\0\0\0\0\0\0", 6)) {
+ if (memcmp(dev->enetaddr, "\0\0\0\0\0\0", 6) &&
+ memcmp(dev->enetaddr, env_enetaddr, 6)) {
+ printf("\nWarning: %s MAC addresses don't match:\n",
+ dev->name);
+ printf("Address in SROM is %pM\n",
+ dev->enetaddr);
+ printf("Address in environment is %pM\n",
+ env_enetaddr);
+ }
+
+ memcpy(dev->enetaddr, env_enetaddr, 6);
+ }
+
+ if (dev->write_hwaddr &&
+ !eth_mac_skip(eth_number) &&
+ is_valid_ether_addr(dev->enetaddr)) {
+ ret = dev->write_hwaddr(dev);
+ }
+
+ return ret;
+}
+
int eth_register(struct eth_device *dev)
{
struct eth_device *d;
@@ -208,7 +241,6 @@ int eth_register(struct eth_device *dev)
int eth_initialize(bd_t *bis)
{
- unsigned char env_enetaddr[6];
int eth_number = 0;
eth_devices = NULL;
@@ -264,27 +296,8 @@ int eth_initialize(bd_t *bis)
if (strchr(dev->name, ' '))
puts("\nWarning: eth device name has a space!\n");
- eth_getenv_enetaddr_by_index(eth_number, env_enetaddr);
-
- if (memcmp(env_enetaddr, "\0\0\0\0\0\0", 6)) {
- if (memcmp(dev->enetaddr, "\0\0\0\0\0\0", 6) &&
- memcmp(dev->enetaddr, env_enetaddr, 6))
- {
- printf ("\nWarning: %s MAC addresses don't match:\n",
- dev->name);
- printf ("Address in SROM is %pM\n",
- dev->enetaddr);
- printf ("Address in environment is %pM\n",
- env_enetaddr);
- }
-
- memcpy(dev->enetaddr, env_enetaddr, 6);
- }
- if (dev->write_hwaddr &&
- !eth_mac_skip(eth_number) &&
- is_valid_ether_addr(dev->enetaddr)) {
- dev->write_hwaddr(dev);
- }
+ if (eth_write_hwaddr(dev, NULL, eth_number))
+ puts("Warning: failed to set MAC address\n");
eth_number++;
dev = dev->next;
@@ -359,7 +372,8 @@ int eth_init(bd_t *bis)
do {
uchar env_enetaddr[6];
- if (eth_getenv_enetaddr_by_index(eth_number, env_enetaddr))
+ if (eth_getenv_enetaddr_by_index("eth", eth_number,
+ env_enetaddr))
memcpy(dev->enetaddr, env_enetaddr, 6);
++eth_number;
--
1.6.6.1

View File

@@ -1,188 +0,0 @@
From 48938b9136e85d7399b8cc831731acd26dfb2e08 Mon Sep 17 00:00:00 2001
From: Simon Glass <sjg@chromium.org>
Date: Mon, 13 Jun 2011 13:13:11 +0000
Subject: [PATCH 07/30] Add documentation for USB Host Networking
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This describes what it is for, devices supported, how to enable for your
board in U-Boot, setting up the server, and notes about MAC addresses.
Changes for v6:
- Adjust documentation file according to Wolfgang's comments
Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Eric Bénard <eric@eukrea.com>
---
doc/README.usb | 157 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 156 insertions(+), 1 deletions(-)
diff --git a/doc/README.usb b/doc/README.usb
index 9aa4f62..a8a4058 100644
--- a/doc/README.usb
+++ b/doc/README.usb
@@ -79,4 +79,159 @@ CONFIG_USB_UHCI defines the lowlevel part.A lowlevel part must be defined
if using CONFIG_CMD_USB
CONFIG_USB_KEYBOARD enables the USB Keyboard
CONFIG_USB_STORAGE enables the USB storage devices
-CONFIG_USB_HOST_ETHER enables USB ethernet dongle support
+CONFIG_USB_HOST_ETHER enables USB ethernet adapter support
+
+
+USB Host Networking
+===================
+
+If you have a supported USB Ethernet adapter you can use it in U-Boot
+to obtain an IP address and load a kernel from a network server.
+
+Note: USB Host Networking is not the same as making your board act as a USB
+client. In that case your board is pretending to be an Ethernet adapter
+and will appear as a network interface to an attached computer. In that
+case the connection is via a USB cable with the computer acting as the host.
+
+With USB Host Networking, your board is the USB host. It controls the
+Ethernet adapter to which it is directly connected and the connection to
+the outside world is your adapter's Ethernet cable. Your board becomes an
+independent network device, able to connect and perform network operations
+independently of your computer.
+
+
+Device support
+--------------
+
+Currently supported devices are listed in the drivers according to
+their vendor and product IDs. You can check your device by connecting it
+to a Linux machine and typing 'lsusb'. The drivers are in
+drivers/usb/eth.
+
+For example this lsusb output line shows a device with Vendor ID 0x0x95
+and product ID 0x7720:
+
+Bus 002 Device 010: ID 0b95:7720 ASIX Electronics Corp. AX88772
+
+If you look at drivers/usb/eth/asix.c you will see this line within the
+supported device list, so we know this adapter is supported.
+
+ { 0x0b95, 0x7720 }, /* Trendnet TU2-ET100 V3.0R */
+
+If your adapter is not listed there is a still a chance that it will
+work. Try looking up the manufacturer of the chip inside your adapter.
+or take the adapter apart and look for chip markings. Then add a line
+for your vendor/product ID into the table of the appropriate driver,
+build U-Boot and see if it works. If not then there might be differences
+between the chip in your adapter and the driver. You could try to get a
+datasheet for your device and add support for it to U-Boot. This is not
+particularly difficult - you only need to provide support for four basic
+functions: init, halt, send and recv.
+
+
+Enabling USB Host Networking
+----------------------------
+
+The normal U-Boot commands are used with USB networking, but you must
+start USB first. For example:
+
+usb start
+setenv bootfile /tftpboot/uImage
+bootp
+
+
+To enable USB Host Ethernet in U-Boot, your platform must of course
+support USB with CONFIG_CMD_USB enabled and working. You will need to
+add some config settings to your board header file:
+
+#define CONFIG_USB_HOST_ETHER /* Enable USB Ethernet adapters */
+#define CONFIG_USB_ETHER_ASIX /* Asix, or whatever driver(s) you want */
+
+As with built-in networking, you will also want to enable some network
+commands, for example:
+
+#define CONFIG_CMD_NET
+#define CONFIG_NET_MULTI
+#define CONFIG_CMD_PING
+#define CONFIG_CMD_DHCP
+
+and some bootp options, which tell your board to obtain its subnet,
+gateway IP, host name and boot path from the bootp/dhcp server. These
+settings should start you off:
+
+#define CONFIG_BOOTP_SUBNETMASK
+#define CONFIG_BOOTP_GATEWAY
+#define CONFIG_BOOTP_HOSTNAME
+#define CONFIG_BOOTP_BOOTPATH
+
+You can also set the default IP address of your board and the server
+as well as the default file to load when a 'bootp' command is issued.
+All of these can be obtained from the bootp server if not set.
+
+#define CONFIG_IPADDR 10.0.0.2 (replace with your value)
+#define CONFIG_SERVERIP 10.0.0.1 (replace with your value)
+#define CONFIG_BOOTFILE uImage
+
+
+The 'usb start' command should identify the adapter something like this:
+
+CrOS> usb start
+(Re)start USB...
+USB EHCI 1.00
+scanning bus for devices... 3 USB Device(s) found
+ scanning bus for storage devices... 0 Storage Device(s) found
+ scanning bus for ethernet devices... 1 Ethernet Device(s) found
+CrOS> print ethact
+ethact=asx0
+
+You can see that it found an ethernet device and we can print out the
+device name (asx0 in this case).
+
+Then 'bootp' or 'dhcp' should use it to obtain an IP address from DHCP,
+perhaps something like this:
+
+CrOS> bootp
+Waiting for Ethernet connection... done.
+BOOTP broadcast 1
+BOOTP broadcast 2
+DHCP client bound to address 172.22.73.81
+Using asx0 device
+TFTP from server 172.22.72.144; our IP address is 172.22.73.81
+Filename '/tftpboot/uImage-sjg-seaboard-261347'.
+Load address: 0x40c000
+Loading: #################################################################
+ #################################################################
+ #################################################################
+ ################################################
+done
+Bytes transferred = 3557464 (364858 hex)
+CrOS>
+
+
+Another way of doing this is to issue a tftp command, which will cause the
+bootp to happen automatically.
+
+
+MAC Addresses
+-------------
+
+Most Ethernet dongles have a built-in MAC address which is unique in the
+world. This is important so that devices on the network can be
+distinguised from each other. MAC address conflicts are evil and
+generally result in strange and eratic behaviour.
+
+Some boards have USB Ethernet chips on-board, and these sometimes do not
+have an assigned MAC address. In this case it is up to you to assign
+one which is unique. You should obtain a valid MAC address from a range
+assigned to you before you ship the product.
+
+Built-in Ethernet adapters support setting the MAC address by means of
+an ethaddr environment variable for each interface (ethaddr, eth1addr,
+eth2addr). There is similar support on the USB network side, using the
+names usbethaddr, usbeth1addr, etc. They are kept separate since we
+don't want a USB device taking the MAC address of a built-in device or
+vice versa.
+
+So if your USB Ethernet chip doesn't have a MAC address available then
+you must set usbethaddr to a suitable MAC address. At the time of
+writing this functionality is only supported by the SMSC driver.
--
1.6.6.1

View File

@@ -1,31 +0,0 @@
From a13358a747c33ecda28a976ed9450b9351827c2a Mon Sep 17 00:00:00 2001
From: Eric Benard <eric@eukrea.com>
Date: Fri, 10 Jun 2011 12:21:52 +0000
Subject: [PATCH 08/30] dm3730: enable dpll5
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
which is used to provide 120MHz to USB EHCI
This allows EHCI to work on BeagleBoard XM
Signed-off-by: Eric Bénard <eric@eukrea.com>
---
arch/arm/cpu/armv7/omap3/clock.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/arch/arm/cpu/armv7/omap3/clock.c b/arch/arm/cpu/armv7/omap3/clock.c
index 3d38d08..6a9edcf 100644
--- a/arch/arm/cpu/armv7/omap3/clock.c
+++ b/arch/arm/cpu/armv7/omap3/clock.c
@@ -579,6 +579,7 @@ void prcm_init(void)
dpll3_init_36xx(0, clk_index);
dpll4_init_36xx(0, clk_index);
+ dpll5_init_34xx(0, clk_index);
iva_init_36xx(0, clk_index);
mpu_init_36xx(0, clk_index);
--
1.6.6.1

View File

@@ -1,40 +0,0 @@
From 48f6f945c028a83725ab962cbff5120ac5280cd0 Mon Sep 17 00:00:00 2001
From: Eric Benard <eric@eukrea.com>
Date: Fri, 17 Jun 2011 09:24:24 +0200
Subject: [PATCH 09/30] beagleboard: enable HUB power on XM boards
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
LEDA needs to be at level 0 to enable HUB_3V3
Signed-off-by: Eric Bénard <eric@eukrea.com>
---
board/ti/beagle/beagle.c | 11 +++++++++--
1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
index 7768901..a6ce5a8 100644
--- a/board/ti/beagle/beagle.c
+++ b/board/ti/beagle/beagle.c
@@ -309,8 +309,15 @@ int misc_init_r(void)
setenv(expansion_config.env_var, expansion_config.env_setting);
twl4030_power_init();
- twl4030_led_init(TWL4030_LED_LEDEN_LEDAON | TWL4030_LED_LEDEN_LEDBON);
-
+ switch (get_board_revision()) {
+ case REVISION_C4:
+ case REVISION_XM_C:
+ twl4030_led_init(TWL4030_LED_LEDEN_LEDAON | TWL4030_LED_LEDEN_LEDBON);
+ break;
+ default:
+ twl4030_led_init(TWL4030_LED_LEDEN_LEDBON);
+ break;
+ }
/* Set GPIO states before they are made outputs */
writel(GPIO23 | GPIO10 | GPIO8 | GPIO2 | GPIO1,
&gpio6_base->setdataout);
--
1.6.6.1

View File

@@ -1,32 +0,0 @@
From 9ae080a8b4f2a580c2bf3fb790fb141e1e618ef7 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Fri, 17 Jun 2011 09:26:17 +0200
Subject: [PATCH 10/30] beagleboard: turn off clocks in ehci_stop
This fixes display problems in linux
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
board/ti/beagle/beagle.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
index a6ce5a8..a290f89 100644
--- a/board/ti/beagle/beagle.c
+++ b/board/ti/beagle/beagle.c
@@ -363,6 +363,12 @@ int ehci_hcd_stop(void)
pr_debug("Resetting OMAP3 EHCI\n");
omap_set_gpio_dataout(GPIO_PHY_RESET, 0);
writel(OMAP_UHH_SYSCONFIG_SOFTRESET, OMAP3_UHH_BASE + OMAP_UHH_SYSCONFIG);
+ /* disable USB clocks */
+ struct prcm *prcm_base = (struct prcm *)PRCM_BASE;
+ sr32(&prcm_base->iclken_usbhost, 0, 1, 0);
+ sr32(&prcm_base->fclken_usbhost, 0, 2, 0);
+ sr32(&prcm_base->iclken3_core, 2, 1, 0);
+ sr32(&prcm_base->fclken3_core, 2, 1, 0);
return 0;
}
--
1.6.6.1

View File

@@ -1,45 +0,0 @@
From c3d4be5f60700c3e30f00818211775a2c8398e2f Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Fri, 17 Jun 2011 09:31:09 +0200
Subject: [PATCH 11/30] beagleboard: enable networking
---
include/configs/omap3_beagle.h | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index d5f98da..2daf06d 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -129,6 +129,10 @@
#define CONFIG_CMD_USB
#define CONFIG_USB_EHCI
#define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3
+#define CONFIG_USB_HOST_ETHER
+#define CONFIG_USB_ETHER_SMSC95XX
+
+#define CONFIG_NET_MULTI
/* commands to include */
#include <config_cmd_default.h>
@@ -149,13 +153,15 @@
#define CONFIG_USB_STORAGE /* USB storage support */
#define CONFIG_CMD_NAND /* NAND support */
#define CONFIG_CMD_LED /* LED support */
+#define CONFIG_CMD_NET /* bootp, tftpboot, rarpboot */
+#define CONFIG_CMD_NFS /* NFS support */
+#define CONFIG_CMD_PING
+
#undef CONFIG_CMD_FLASH /* flinfo, erase, protect */
#undef CONFIG_CMD_FPGA /* FPGA configuration Support */
#undef CONFIG_CMD_IMI /* iminfo */
#undef CONFIG_CMD_IMLS /* List all found images */
-#undef CONFIG_CMD_NET /* bootp, tftpboot, rarpboot */
-#undef CONFIG_CMD_NFS /* NFS support */
#define CONFIG_SYS_NO_FLASH
#define CONFIG_HARD_I2C 1
--
1.6.6.1

View File

@@ -1,26 +0,0 @@
From 04a20a72599d016785d751381fb1ea5112fb0de8 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Fri, 17 Jun 2011 09:32:17 +0200
Subject: [PATCH 12/30] beagleboard: switch to ttyO2 as console
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap3_beagle.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 2daf06d..9a161cf 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -206,7 +206,7 @@
#define CONFIG_EXTRA_ENV_SETTINGS \
"loadaddr=0x82000000\0" \
"usbtty=cdc_acm\0" \
- "console=ttyS2,115200n8\0" \
+ "console=ttyO2,115200n8\0" \
"mpurate=auto\0" \
"buddy=none "\
"vram=12M\0" \
--
1.6.6.1

View File

@@ -1,27 +0,0 @@
From 91da655eb768b52d085fac42648e6bcf342a1f7f Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Fri, 17 Jun 2011 09:33:03 +0200
Subject: [PATCH 13/30] beagleboard: load kernel from MMC ext, not FAT
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap3_beagle.h | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 9a161cf..dbb77fb 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -246,7 +246,8 @@
"root=${ramroot} " \
"rootfstype=${ramrootfstype}\0" \
"loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \
- "loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
+ "loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
+ "loaduimage=ext2load mmc ${mmcdev}:2 ${loadaddr} /boot/uImage\0" \
"mmcboot=echo Booting from mmc ...; " \
"run mmcargs; " \
"bootm ${loadaddr}\0" \
--
1.6.6.1

View File

@@ -1,34 +0,0 @@
From b8f56a9f7ab18641dd0f4529333b00918d34c95d Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Fri, 17 Jun 2011 09:47:08 +0200
Subject: [PATCH 14/30] beagleboard: enable asix driver and dhcp
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap3_beagle.h | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index dbb77fb..49e9dd3 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -131,6 +131,7 @@
#define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3
#define CONFIG_USB_HOST_ETHER
#define CONFIG_USB_ETHER_SMSC95XX
+#define CONFIG_USB_ETHER_ASIX
#define CONFIG_NET_MULTI
@@ -156,7 +157,7 @@
#define CONFIG_CMD_NET /* bootp, tftpboot, rarpboot */
#define CONFIG_CMD_NFS /* NFS support */
#define CONFIG_CMD_PING
-
+#define CONFIG_CMD_DHCP
#undef CONFIG_CMD_FLASH /* flinfo, erase, protect */
#undef CONFIG_CMD_FPGA /* FPGA configuration Support */
--
1.6.6.1

View File

@@ -1,26 +0,0 @@
From 2a713d6b62248a18ee798d08bbc7850accfc2e83 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Fri, 17 Jun 2011 10:02:21 +0200
Subject: [PATCH 15/30] beagleboard: hardcode MAC for onboard SMSC and use uImage.beagle fot tftp
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap3_beagle.h | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 49e9dd3..894a071 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -207,6 +207,8 @@
#define CONFIG_EXTRA_ENV_SETTINGS \
"loadaddr=0x82000000\0" \
"usbtty=cdc_acm\0" \
+ "usbethaddr=de:ad:be:ef\0" \
+ "bootfile=uImage.beagle\0" \
"console=ttyO2,115200n8\0" \
"mpurate=auto\0" \
"buddy=none "\
--
1.6.6.1

View File

@@ -1,26 +0,0 @@
From ea8ed1da87f4612bdcbc611e6d4ccb9b7ea4d2ff Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Fri, 17 Jun 2011 10:03:06 +0200
Subject: [PATCH 16/30] beagleboard: decrease bootdelay to 2 seconds
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap3_beagle.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 894a071..5c32265 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -202,7 +202,7 @@
/* partition */
/* Environment information */
-#define CONFIG_BOOTDELAY 10
+#define CONFIG_BOOTDELAY 2
#define CONFIG_EXTRA_ENV_SETTINGS \
"loadaddr=0x82000000\0" \
--
1.6.6.1

View File

@@ -1,58 +0,0 @@
From 4099bd50da694cc35c489547ad0d8a30bd99006a Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Wed, 20 Apr 2011 08:54:16 -0500
Subject: [PATCH 17/30] USB: Remove __attribute__ ((packed)) for struct ehci_hccr and ehci_hcor
Remove __attribute__ ((packed)) to prevent byte access to soc
registers in some gcc versions.
Having patches to enable ehci for the BeagleBoard lying around for
several month, this one was the show-stopper.
Credits have to go to Laine Walker-Avina <lwalkera@ieee.org> for
finding the problem.
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Cc: Alexander Holler <holler@ahsoftware.de>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
---
Changes for v2:
* Original and v2 were provided by Alexander Holler.
* v1 was http://patchwork.ozlabs.org/patch/89358/
* v2 was http://patchwork.ozlabs.org/patch/89362/
Changes for v3:
* Switched to align(4), rather than remove the attribute, per suggestion
from Alexander.
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
drivers/usb/host/ehci.h | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/host/ehci.h b/drivers/usb/host/ehci.h
index 945ab64..3d0ad0c 100644
--- a/drivers/usb/host/ehci.h
+++ b/drivers/usb/host/ehci.h
@@ -55,7 +55,7 @@ struct ehci_hccr {
#define HCS_N_PORTS(p) (((p) >> 0) & 0xf)
uint32_t cr_hccparams;
uint8_t cr_hcsp_portrt[8];
-} __attribute__ ((packed));
+} __attribute__ ((packed, aligned(4)));
struct ehci_hcor {
uint32_t or_usbcmd;
@@ -85,7 +85,7 @@ struct ehci_hcor {
#define FLAG_CF (1 << 0) /* true: we'll support "high speed" */
uint32_t or_portsc[CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS];
uint32_t or_systune;
-} __attribute__ ((packed));
+} __attribute__ ((packed, aligned(4)));
#define USBMODE 0x68 /* USB Device mode */
#define USBMODE_SDIS (1 << 3) /* Stream disable */
--
1.6.6.1

View File

@@ -1,29 +0,0 @@
From 7378bf55a895a957a5ea31c5fac5b53a844778d2 Mon Sep 17 00:00:00 2001
From: Jason Cooper <u-boot@lakedaemon.net>
Date: Tue, 14 Jun 2011 05:58:12 +0000
Subject: [PATCH 18/30] usb: Some EHCI chipsets are slow to respond.
This fixes 'EHCI timed out on TD...' on the dreamplug board.
Signed-off-by: Jason Cooper <u-boot@lakedaemon.net>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/usb.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/include/usb.h b/include/usb.h
index 53603a5..168e2b2 100644
--- a/include/usb.h
+++ b/include/usb.h
@@ -46,7 +46,7 @@
* This is the timeout to allow for submitting an urb in ms. We allow more
* time for a BULK device to react - some are slow.
*/
-#define USB_TIMEOUT_MS(pipe) (usb_pipebulk(pipe) ? 5000 : 100)
+#define USB_TIMEOUT_MS(pipe) (usb_pipebulk(pipe) ? 5000 : 500)
/* device request (setup) */
struct devrequest {
--
1.6.6.1

View File

@@ -1,349 +0,0 @@
From e6e189b6062f7af6b993420b9de9656e36739e66 Mon Sep 17 00:00:00 2001
From: Syed Mohammed Khasim <khasim@ti.com>
Date: Tue, 12 Jan 2010 23:57:28 +0530
Subject: [PATCH 19/30] OMAP3: Add DSS driver for OMAP3
Supports dynamic panel configuration
Supports dynamic tv standard selection
Adds support for DSS register access through generic APIs
Incorporated DSS register access using structures.
Previous discussions are here
http://www.mail-archive.com/u-boot@lists.denx.de/msg27150.html
---
v2 updates:
* Enable panel output for BeagleBoard
* BeagleBoard: Update DVI-D orange screen frequencies for xM
v3 updates:
* Remove non-platform (OMAP3) updates
Signed-off-by: Syed Mohammed Khasim <khasim@ti.com>
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
arch/arm/include/asm/arch-omap3/dss.h | 173 +++++++++++++++++++++++++++++++++
drivers/video/omap3_dss.c | 130 +++++++++++++++++++++++++
2 files changed, 303 insertions(+), 0 deletions(-)
create mode 100644 arch/arm/include/asm/arch-omap3/dss.h
create mode 100644 drivers/video/omap3_dss.c
diff --git a/arch/arm/include/asm/arch-omap3/dss.h b/arch/arm/include/asm/arch-omap3/dss.h
new file mode 100644
index 0000000..e5e3b0d
--- /dev/null
+++ b/arch/arm/include/asm/arch-omap3/dss.h
@@ -0,0 +1,173 @@
+/*
+ * (C) Copyright 2010
+ * Texas Instruments, <www.ti.com>
+ * Syed Mohammed Khasim <khasim@ti.com>
+ *
+ * Referred to Linux DSS driver files for OMAP3
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation's version 2 of
+ * the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#ifndef DSS_H
+#define DSS_H
+
+/*
+ * DSS Base Registers
+ */
+#define OMAP3_DSS_BASE 0x48050040
+#define OMAP3_DISPC_BASE 0x48050440
+#define OMAP3_VENC_BASE 0x48050C00
+
+/* DSS Registers */
+struct dss_regs {
+ u32 control; /* 0x40 */
+ u32 sdi_control; /* 0x44 */
+ u32 pll_control; /* 0x48 */
+};
+
+/* DISPC Registers */
+struct dispc_regs {
+ u32 control; /* 0x40 */
+ u32 config; /* 0x44 */
+ u32 reserve_2; /* 0x48 */
+ u32 default_color0; /* 0x4C */
+ u32 default_color1; /* 0x50 */
+ u32 trans_color0; /* 0x54 */
+ u32 trans_color1; /* 0x58 */
+ u32 line_status; /* 0x5C */
+ u32 line_number; /* 0x60 */
+ u32 timing_h; /* 0x64 */
+ u32 timing_v; /* 0x68 */
+ u32 pol_freq; /* 0x6C */
+ u32 divisor; /* 0x70 */
+ u32 global_alpha; /* 0x74 */
+ u32 size_dig; /* 0x78 */
+ u32 size_lcd; /* 0x7C */
+};
+
+/* VENC Registers */
+struct venc_regs {
+ u32 rev_id; /* 0x00 */
+ u32 status; /* 0x04 */
+ u32 f_control; /* 0x08 */
+ u32 reserve_1; /* 0x0C */
+ u32 vidout_ctrl; /* 0x10 */
+ u32 sync_ctrl; /* 0x14 */
+ u32 reserve_2; /* 0x18 */
+ u32 llen; /* 0x1C */
+ u32 flens; /* 0x20 */
+ u32 hfltr_ctrl; /* 0x24 */
+ u32 cc_carr_wss_carr; /* 0x28 */
+ u32 c_phase; /* 0x2C */
+ u32 gain_u; /* 0x30 */
+ u32 gain_v; /* 0x34 */
+ u32 gain_y; /* 0x38 */
+ u32 black_level; /* 0x3C */
+ u32 blank_level; /* 0x40 */
+ u32 x_color; /* 0x44 */
+ u32 m_control; /* 0x48 */
+ u32 bstamp_wss_data; /* 0x4C */
+ u32 s_carr; /* 0x50 */
+ u32 line21; /* 0x54 */
+ u32 ln_sel; /* 0x58 */
+ u32 l21__wc_ctl; /* 0x5C */
+ u32 htrigger_vtrigger; /* 0x60 */
+ u32 savid__eavid; /* 0x64 */
+ u32 flen__fal; /* 0x68 */
+ u32 lal__phase_reset; /* 0x6C */
+ u32 hs_int_start_stop_x; /* 0x70 */
+ u32 hs_ext_start_stop_x; /* 0x74 */
+ u32 vs_int_start_x; /* 0x78 */
+ u32 vs_int_stop_x__vs_int_start_y; /* 0x7C */
+ u32 vs_int_stop_y__vs_ext_start_x; /* 0x80 */
+ u32 vs_ext_stop_x__vs_ext_start_y; /* 0x84 */
+ u32 vs_ext_stop_y; /* 0x88 */
+ u32 reserve_3; /* 0x8C */
+ u32 avid_start_stop_x; /* 0x90 */
+ u32 avid_start_stop_y; /* 0x94 */
+ u32 reserve_4; /* 0x98 */
+ u32 reserve_5; /* 0x9C */
+ u32 fid_int_start_x__fid_int_start_y; /* 0xA0 */
+ u32 fid_int_offset_y__fid_ext_start_x; /* 0xA4 */
+ u32 fid_ext_start_y__fid_ext_offset_y; /* 0xA8 */
+ u32 reserve_6; /* 0xAC */
+ u32 tvdetgp_int_start_stop_x; /* 0xB0 */
+ u32 tvdetgp_int_start_stop_y; /* 0xB4 */
+ u32 gen_ctrl; /* 0xB8 */
+ u32 reserve_7; /* 0xBC */
+ u32 reserve_8; /* 0xC0 */
+ u32 output_control; /* 0xC4 */
+ u32 dac_b__dac_c; /* 0xC8 */
+ u32 height_width; /* 0xCC */
+};
+
+/* Few Register Offsets */
+#define FRAME_MODE_SHIFT 1
+#define TFTSTN_SHIFT 3
+#define DATALINES_SHIFT 8
+
+/* Enabling Display controller */
+#define LCD_ENABLE 1
+#define DIG_ENABLE (1 << 1)
+#define GO_LCD (1 << 5)
+#define GO_DIG (1 << 6)
+#define GP_OUT0 (1 << 15)
+#define GP_OUT1 (1 << 16)
+
+#define DISPC_ENABLE (LCD_ENABLE | \
+ DIG_ENABLE | \
+ GO_LCD | \
+ GO_DIG | \
+ GP_OUT0| \
+ GP_OUT1)
+
+/* Configure VENC DSS Params */
+#define VENC_CLK_ENABLE (1 << 3)
+#define DAC_DEMEN (1 << 4)
+#define DAC_POWERDN (1 << 5)
+#define VENC_OUT_SEL (1 << 6)
+#define DIG_LPP_SHIFT 16
+#define VENC_DSS_CONFIG (VENC_CLK_ENABLE | \
+ DAC_DEMEN | \
+ DAC_POWERDN | \
+ VENC_OUT_SEL)
+/*
+ * Panel Configuration
+ */
+struct panel_config {
+ u32 timing_h;
+ u32 timing_v;
+ u32 pol_freq;
+ u32 divisor;
+ u32 lcd_size;
+ u32 panel_type;
+ u32 data_lines;
+ u32 load_mode;
+ u32 panel_color;
+};
+
+/*
+ * Generic DSS Functions
+ */
+void omap3_dss_venc_config(const struct venc_regs *venc_cfg,
+ u32 height, u32 width);
+void omap3_dss_panel_config(const struct panel_config *panel_cfg);
+void omap3_dss_enable(void);
+
+#endif /* DSS_H */
diff --git a/drivers/video/omap3_dss.c b/drivers/video/omap3_dss.c
new file mode 100644
index 0000000..69c705a
--- /dev/null
+++ b/drivers/video/omap3_dss.c
@@ -0,0 +1,130 @@
+/*
+ * (C) Copyright 2010
+ * Texas Instruments, <www.ti.com>
+ * Syed Mohammed Khasim <khasim@ti.com>
+ *
+ * Referred to Linux DSS driver files for OMAP3
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation's version 2 of
+ * the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#include <common.h>
+#include <asm/io.h>
+#include <asm/arch/dss.h>
+
+/*
+ * Configure VENC for a given Mode (NTSC / PAL)
+ */
+void omap3_dss_venc_config(const struct venc_regs *venc_cfg,
+ u32 height, u32 width)
+{
+ struct venc_regs *venc = (struct venc_regs *) OMAP3_VENC_BASE;
+ struct dss_regs *dss = (struct dss_regs *) OMAP3_DSS_BASE;
+ struct dispc_regs *dispc = (struct dispc_regs *) OMAP3_DISPC_BASE;
+
+ writel(venc_cfg->status, &venc->status);
+ writel(venc_cfg->f_control, &venc->f_control);
+ writel(venc_cfg->vidout_ctrl, &venc->vidout_ctrl);
+ writel(venc_cfg->sync_ctrl, &venc->sync_ctrl);
+ writel(venc_cfg->llen, &venc->llen);
+ writel(venc_cfg->flens, &venc->flens);
+ writel(venc_cfg->hfltr_ctrl, &venc->hfltr_ctrl);
+ writel(venc_cfg->cc_carr_wss_carr, &venc->cc_carr_wss_carr);
+ writel(venc_cfg->c_phase, &venc->c_phase);
+ writel(venc_cfg->gain_u, &venc->gain_u);
+ writel(venc_cfg->gain_v, &venc->gain_v);
+ writel(venc_cfg->gain_y, &venc->gain_y);
+ writel(venc_cfg->black_level, &venc->black_level);
+ writel(venc_cfg->blank_level, &venc->blank_level);
+ writel(venc_cfg->x_color, &venc->x_color);
+ writel(venc_cfg->m_control, &venc->m_control);
+ writel(venc_cfg->bstamp_wss_data, &venc->bstamp_wss_data);
+ writel(venc_cfg->s_carr, &venc->s_carr);
+ writel(venc_cfg->line21, &venc->line21);
+ writel(venc_cfg->ln_sel, &venc->ln_sel);
+ writel(venc_cfg->l21__wc_ctl, &venc->l21__wc_ctl);
+ writel(venc_cfg->htrigger_vtrigger, &venc->htrigger_vtrigger);
+ writel(venc_cfg->savid__eavid, &venc->savid__eavid);
+ writel(venc_cfg->flen__fal, &venc->flen__fal);
+ writel(venc_cfg->lal__phase_reset, &venc->lal__phase_reset);
+ writel(venc_cfg->hs_int_start_stop_x,
+ &venc->hs_int_start_stop_x);
+ writel(venc_cfg->hs_ext_start_stop_x,
+ &venc->hs_ext_start_stop_x);
+ writel(venc_cfg->vs_int_start_x, &venc->vs_int_start_x);
+ writel(venc_cfg->vs_int_stop_x__vs_int_start_y,
+ &venc->vs_int_stop_x__vs_int_start_y);
+ writel(venc_cfg->vs_int_stop_y__vs_ext_start_x,
+ &venc->vs_int_stop_y__vs_ext_start_x);
+ writel(venc_cfg->vs_ext_stop_x__vs_ext_start_y,
+ &venc->vs_ext_stop_x__vs_ext_start_y);
+ writel(venc_cfg->vs_ext_stop_y, &venc->vs_ext_stop_y);
+ writel(venc_cfg->avid_start_stop_x, &venc->avid_start_stop_x);
+ writel(venc_cfg->avid_start_stop_y, &venc->avid_start_stop_y);
+ writel(venc_cfg->fid_int_start_x__fid_int_start_y,
+ &venc->fid_int_start_x__fid_int_start_y);
+ writel(venc_cfg->fid_int_offset_y__fid_ext_start_x,
+ &venc->fid_int_offset_y__fid_ext_start_x);
+ writel(venc_cfg->fid_ext_start_y__fid_ext_offset_y,
+ &venc->fid_ext_start_y__fid_ext_offset_y);
+ writel(venc_cfg->tvdetgp_int_start_stop_x,
+ &venc->tvdetgp_int_start_stop_x);
+ writel(venc_cfg->tvdetgp_int_start_stop_y,
+ &venc->tvdetgp_int_start_stop_y);
+ writel(venc_cfg->gen_ctrl, &venc->gen_ctrl);
+ writel(venc_cfg->output_control, &venc->output_control);
+ writel(venc_cfg->dac_b__dac_c, &venc->dac_b__dac_c);
+
+ /* Configure DSS for VENC Settings */
+ writel(VENC_DSS_CONFIG, &dss->control);
+
+ /* Configure height and width for Digital out */
+ writel(((height << DIG_LPP_SHIFT) | width), &dispc->size_dig);
+}
+
+/*
+ * Configure Panel Specific Parameters
+ */
+void omap3_dss_panel_config(const struct panel_config *panel_cfg)
+{
+ struct dispc_regs *dispc = (struct dispc_regs *) OMAP3_DISPC_BASE;
+
+ writel(panel_cfg->timing_h, &dispc->timing_h);
+ writel(panel_cfg->timing_v, &dispc->timing_v);
+ writel(panel_cfg->pol_freq, &dispc->pol_freq);
+ writel(panel_cfg->divisor, &dispc->divisor);
+ writel(panel_cfg->lcd_size, &dispc->size_lcd);
+ writel((panel_cfg->load_mode << FRAME_MODE_SHIFT), &dispc->config);
+ writel(((panel_cfg->panel_type << TFTSTN_SHIFT) |
+ (panel_cfg->data_lines << DATALINES_SHIFT)), &dispc->control);
+ writel(panel_cfg->panel_color, &dispc->default_color0);
+}
+
+/*
+ * Enable LCD and DIGITAL OUT in DSS
+ */
+void omap3_dss_enable(void)
+{
+ struct dispc_regs *dispc = (struct dispc_regs *) OMAP3_DISPC_BASE;
+ u32 l = 0;
+
+ l = readl(&dispc->control);
+ l |= DISPC_ENABLE;
+ writel(l, &dispc->control);
+}
--
1.6.6.1

View File

@@ -1,30 +0,0 @@
From ce6813c7f4006331dd661cd25178bb258d1e9469 Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Tue, 19 Apr 2011 14:00:34 -0500
Subject: [PATCH 20/30] video: DSS makefile update
Adding the OMAP3 DSS video driver to the Makefile. The patch applied to
u-boot-ti didn't include this for some reason.
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
drivers/video/Makefile | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index 086dc05..226684a 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -41,6 +41,8 @@ COBJS-$(CONFIG_SED156X) += sed156x.o
COBJS-$(CONFIG_VIDEO_SM501) += sm501.o
COBJS-$(CONFIG_VIDEO_SMI_LYNXEM) += smiLynxEM.o videomodes.o
COBJS-$(CONFIG_VIDEO_VCXK) += bus_vcxk.o
+COBJS-$(CONFIG_VIDEO_OMAP3) += omap3_dss.o
+COBJS-y += videomodes.o
COBJS := $(COBJS-y)
SRCS := $(COBJS:.o=.c)
--
1.6.6.1

View File

@@ -1,170 +0,0 @@
From ebabfd9f1e6f712aafc2bba5ddfae530be4119ee Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Tue, 19 Apr 2011 14:01:13 -0500
Subject: [PATCH 21/30] BeagleBoard: Configure DVI/S-video
Based on patches from Syed Mohammed Khasim (khasim@ti.com).
Configures the output of the BeagleBoard DVI to be orange.
Configures the output of the BeagleBoard S-Video to be a colorbar.
---
Updates for this version
* Rebased on u-boot-ti.
v3
* Rebased again.
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
board/ti/beagle/beagle.c | 24 +++++++++++++
board/ti/beagle/beagle.h | 86 ++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 110 insertions(+), 0 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
index a290f89..39d9038 100644
--- a/board/ti/beagle/beagle.c
+++ b/board/ti/beagle/beagle.c
@@ -164,6 +164,28 @@ unsigned int get_expansion_id(void)
}
/*
+ * Configure DSS to display background color on DVID
+ * Configure VENC to display color bar on S-Video
+ */
+void display_init(void)
+{
+ omap3_dss_venc_config(&venc_config_std_tv, VENC_HEIGHT, VENC_WIDTH);
+ switch (get_board_revision()) {
+ case REVISION_AXBX:
+ case REVISION_CX:
+ case REVISION_C4:
+ omap3_dss_panel_config(&dvid_cfg);
+ break;
+ case REVISION_XM_A:
+ case REVISION_XM_B:
+ case REVISION_XM_C:
+ default:
+ omap3_dss_panel_config(&dvid_cfg_xm);
+ break;
+ }
+}
+
+/*
* Routine: misc_init_r
* Description: Configure board specific parts
*/
@@ -330,6 +352,8 @@ int misc_init_r(void)
GPIO15 | GPIO14 | GPIO13 | GPIO12), &gpio5_base->oe);
dieid_num_r();
+ display_init();
+ omap3_dss_enable();
return 0;
}
diff --git a/board/ti/beagle/beagle.h b/board/ti/beagle/beagle.h
index 04247cd..18bfaa8 100644
--- a/board/ti/beagle/beagle.h
+++ b/board/ti/beagle/beagle.h
@@ -23,6 +23,8 @@
#ifndef _BEAGLE_H_
#define _BEAGLE_H_
+#include <asm/arch/dss.h>
+
const omap3_sysinfo sysinfo = {
DDR_STACKED,
"OMAP3 Beagle board",
@@ -472,4 +474,88 @@ const omap3_sysinfo sysinfo = {
MUX_VAL(CP(MMC2_DAT6), (IDIS | PTU | EN | M4)) /*GPIO_138 BT_EN*/\
MUX_VAL(CP(MMC2_DAT7), (IDIS | PTU | EN | M4)) /*GPIO_139 WLAN_EN*/
+/*
+ * Display Configuration
+ */
+
+#define DVI_BEAGLE_ORANGE_COL 0x00FF8000
+#define VENC_HEIGHT 0x00ef
+#define VENC_WIDTH 0x027f
+
+/*
+ * Configure VENC in DSS for Beagle to generate Color Bar
+ *
+ * Kindly refer to OMAP TRM for definition of these values.
+ */
+static const struct venc_regs venc_config_std_tv = {
+ .status = 0x0000001B,
+ .f_control = 0x00000040,
+ .vidout_ctrl = 0x00000000,
+ .sync_ctrl = 0x00008000,
+ .llen = 0x00008359,
+ .flens = 0x0000020C,
+ .hfltr_ctrl = 0x00000000,
+ .cc_carr_wss_carr = 0x043F2631,
+ .c_phase = 0x00000024,
+ .gain_u = 0x00000130,
+ .gain_v = 0x00000198,
+ .gain_y = 0x000001C0,
+ .black_level = 0x0000006A,
+ .blank_level = 0x0000005C,
+ .x_color = 0x00000000,
+ .m_control = 0x00000001,
+ .bstamp_wss_data = 0x0000003F,
+ .s_carr = 0x21F07C1F,
+ .line21 = 0x00000000,
+ .ln_sel = 0x00000015,
+ .l21__wc_ctl = 0x00001400,
+ .htrigger_vtrigger = 0x00000000,
+ .savid__eavid = 0x069300F4,
+ .flen__fal = 0x0016020C,
+ .lal__phase_reset = 0x00060107,
+ .hs_int_start_stop_x = 0x008D034E,
+ .hs_ext_start_stop_x = 0x000F0359,
+ .vs_int_start_x = 0x01A00000,
+ .vs_int_stop_x__vs_int_start_y = 0x020501A0,
+ .vs_int_stop_y__vs_ext_start_x = 0x01AC0024,
+ .vs_ext_stop_x__vs_ext_start_y = 0x020D01AC,
+ .vs_ext_stop_y = 0x00000006,
+ .avid_start_stop_x = 0x03480079,
+ .avid_start_stop_y = 0x02040024,
+ .fid_int_start_x__fid_int_start_y = 0x0001008A,
+ .fid_int_offset_y__fid_ext_start_x = 0x01AC0106,
+ .fid_ext_start_y__fid_ext_offset_y = 0x01060006,
+ .tvdetgp_int_start_stop_x = 0x00140001,
+ .tvdetgp_int_start_stop_y = 0x00010001,
+ .gen_ctrl = 0x00FF0000,
+ .output_control = 0x0000000D,
+ .dac_b__dac_c = 0x00000000
+};
+
+/*
+ * Configure Timings for DVI D
+ */
+static const struct panel_config dvid_cfg = {
+ .timing_h = 0x0ff03f31, /* Horizantal timing */
+ .timing_v = 0x01400504, /* Vertical timing */
+ .pol_freq = 0x00007028, /* Pol Freq */
+ .divisor = 0x00010006, /* 72Mhz Pixel Clock */
+ .lcd_size = 0x02ff03ff, /* 1024x768 */
+ .panel_type = 0x01, /* TFT */
+ .data_lines = 0x03, /* 24 Bit RGB */
+ .load_mode = 0x02, /* Frame Mode */
+ .panel_color = DVI_BEAGLE_ORANGE_COL /* ORANGE */
+};
+
+static const struct panel_config dvid_cfg_xm = {
+ .timing_h = 0x1a4024c9, /* Horizantal timing */
+ .timing_v = 0x02c00509, /* Vertical timing */
+ .pol_freq = 0x00007028, /* Pol Freq */
+ .divisor = 0x00010001, /* 96MHz Pixel Clock */
+ .lcd_size = 0x02ff03ff, /* 1024x768 */
+ .panel_type = 0x01, /* TFT */
+ .data_lines = 0x03, /* 24 Bit RGB */
+ .load_mode = 0x02, /* Frame Mode */
+ .panel_color = DVI_BEAGLE_ORANGE_COL /* ORANGE */
+};
#endif
--
1.6.6.1

View File

@@ -1,25 +0,0 @@
From 79b347db36d583b0fde360baa780877b3a7ae754 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Tue, 21 Jun 2011 22:18:01 +0200
Subject: [PATCH 22/30] BeagleBoard: config: enable DSS
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap3_beagle.h | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 5c32265..6c842ad 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -172,6 +172,7 @@
#define CONFIG_SYS_I2C_BUS_SELECT 1
#define CONFIG_I2C_MULTI_BUS 1
#define CONFIG_DRIVER_OMAP34XX_I2C 1
+#define CONFIG_VIDEO_OMAP3 /* DSS Support */
/*
* TWL4030
--
1.6.6.1

View File

@@ -1,107 +0,0 @@
From b6082310a74ef48b8c2c4c67092896563141a4ad Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Wed, 21 Jul 2010 07:41:25 -0500
Subject: [PATCH 23/30] BeagleBoard: Added userbutton command
Based on commit f1099c7c43caf5bac3bf6a65aa266fade4747072
Author: Greg Turner <gregturner@ti.com>
Date: Tue May 25 09:19:06 2010 -0500
New u-boot command for status of USER button on BeagleBoard-xM
Modified bootcmd to check the staus at boot time and set
filename of the boot script.
* Moved to a BeagleBoard specific file.
* Removed changes to default boot command from adding userbutton
command.
* Made to handle pre-xM boards.
* Flipped polarity of the return value to avoid confusion. Success (0)
is when the button is pressed. Failure (1) is when the button is NOT
pressed.
* Used latest revision getting function.
* Used latest macros for board revision.
--
v2 update:
* Added xM-C revision definition (optional, since it was default)
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
board/ti/beagle/beagle.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 56 insertions(+), 0 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
index 39d9038..4798194 100644
--- a/board/ti/beagle/beagle.c
+++ b/board/ti/beagle/beagle.c
@@ -50,6 +50,7 @@ extern struct ehci_hccr *hccr;
extern volatile struct ehci_hcor *hcor;
#endif
#include "beagle.h"
+#include <command.h>
#define pr_debug(fmt, args...) debug(fmt, ##args)
@@ -477,3 +478,58 @@ int ehci_hcd_init(void)
}
#endif /* CONFIG_USB_EHCI */
+
+/*
+ * This command returns the status of the user button on beagle xM
+ * Input - none
+ * Returns - 1 if button is held down
+ * 0 if button is not held down
+ */
+int do_userbutton (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
+{
+ int button = 0;
+ int gpio;
+
+ /*
+ * pass address parameter as argv[0] (aka command name),
+ * and all remaining args
+ */
+ switch (get_board_revision()) {
+ case REVISION_AXBX:
+ case REVISION_CX:
+ case REVISION_C4:
+ gpio = 7;
+ break;
+ case REVISION_XM_A:
+ case REVISION_XM_B:
+ case REVISION_XM_C:
+ default:
+ gpio = 4;
+ break;
+ }
+ omap_request_gpio(gpio);
+ omap_set_gpio_direction(gpio, 1);
+ printf("The user button is currently ");
+ if(omap_get_gpio_datain(gpio))
+ {
+ button = 1;
+ printf("PRESSED.\n");
+ }
+ else
+ {
+ button = 0;
+ printf("NOT pressed.\n");
+ }
+
+ omap_free_gpio(gpio);
+
+ return !button;
+}
+
+/* -------------------------------------------------------------------- */
+
+U_BOOT_CMD(
+ userbutton, CONFIG_SYS_MAXARGS, 1, do_userbutton,
+ "Return the status of the BeagleBoard USER button",
+ ""
+);
--
1.6.6.1

View File

@@ -1,44 +0,0 @@
From 657f4308df123f3d2bd82c87bf667dd529d0f7c6 Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Tue, 8 Mar 2011 20:42:01 -0600
Subject: [PATCH 24/30] Corrected LED name match finding avoiding extraneous Usage printouts
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
common/cmd_led.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/common/cmd_led.c b/common/cmd_led.c
index c53195f..8b46848 100644
--- a/common/cmd_led.c
+++ b/common/cmd_led.c
@@ -83,7 +83,7 @@ int str_onoff (char *var)
int do_led (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
- int state, i;
+ int state, i, match = 0;
/* Validate arguments */
if ((argc != 3)) {
@@ -98,6 +98,7 @@ int do_led (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
for (i = 0; led_commands[i].string; i++) {
if ((strcmp("all", argv[1]) == 0) ||
(strcmp(led_commands[i].string, argv[1]) == 0)) {
+ match = 1;
if (led_commands[i].on) {
if (state) {
led_commands[i].on();
@@ -112,7 +113,7 @@ int do_led (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
}
/* If we ran out of matches, print Usage */
- if (!led_commands[i].string && !(strcmp("all", argv[1]) == 0)) {
+ if (!match) {
return cmd_usage(cmdtp);
}
--
1.6.6.1

View File

@@ -1,31 +0,0 @@
From c510bdc2684b5a755c4526071f1f3ca726ac1d1d Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Tue, 19 Apr 2011 10:55:26 -0500
Subject: [PATCH 25/30] BeagleBoard: fix LED 0/1 in driver
Fixed USR0/USR1 to be LED 0/1 respectively
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
board/ti/beagle/led.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/board/ti/beagle/led.c b/board/ti/beagle/led.c
index 08f95a0..d3de51f 100644
--- a/board/ti/beagle/led.c
+++ b/board/ti/beagle/led.c
@@ -27,8 +27,8 @@
static unsigned int saved_state[2] = {STATUS_LED_OFF, STATUS_LED_OFF};
/* GPIO pins for the LEDs */
-#define BEAGLE_LED_USR0 149
-#define BEAGLE_LED_USR1 150
+#define BEAGLE_LED_USR0 150
+#define BEAGLE_LED_USR1 149
#ifdef STATUS_LED_GREEN
void green_LED_off (void)
--
1.6.6.1

View File

@@ -1,29 +0,0 @@
From 6aac1cb7f47d7126be80df2e06042d37f1affce2 Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Wed, 20 Apr 2011 18:11:38 -0500
Subject: [PATCH 26/30] led: added cmd_led to Makefile
Addition of cmd_led into the Makefile wasn't included in the patch
applied to u-boot-ti.
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
common/Makefile | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/common/Makefile b/common/Makefile
index 224b7cc..7445ccc 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -107,6 +107,7 @@ COBJS-$(CONFIG_CMD_ITEST) += cmd_itest.o
COBJS-$(CONFIG_CMD_JFFS2) += cmd_jffs2.o
COBJS-$(CONFIG_CMD_CRAMFS) += cmd_cramfs.o
COBJS-$(CONFIG_CMD_LDRINFO) += cmd_ldrinfo.o
+COBJS-$(CONFIG_CMD_LED) += cmd_led.o
COBJS-$(CONFIG_CMD_LICENSE) += cmd_license.o
COBJS-y += cmd_load.o
COBJS-$(CONFIG_LOGBUFFER) += cmd_log.o
--
1.6.6.1

View File

@@ -1,36 +0,0 @@
From 48393aa0119882009df057c974f0dec6051eff79 Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Wed, 20 Apr 2011 18:13:49 -0500
Subject: [PATCH 27/30] led: correct off/on locations in structure
Although the initialization should probably be done with names, the
existing implementation has these structures filled in the opposite
order.
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
--
v2 changes:
* Corrected comment as well.
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
common/cmd_led.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/common/cmd_led.c b/common/cmd_led.c
index 8b46848..d14dd5a 100644
--- a/common/cmd_led.c
+++ b/common/cmd_led.c
@@ -34,8 +34,8 @@
struct led_tbl_s {
char *string; /* String for use in the command */
led_id_t mask; /* Mask used for calling __led_set() */
- void (*on)(void); /* Optional fucntion for turning LED on */
- void (*off)(void); /* Optional fucntion for turning LED on */
+ void (*off)(void); /* Optional function for turning LED off */
+ void (*on)(void); /* Optional function for turning LED on */
};
typedef struct led_tbl_s led_tbl_t;
--
1.6.6.1

View File

@@ -1,36 +0,0 @@
From 747f8f93a4e1d461340ddc04d3843d58565bab30 Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Tue, 19 Apr 2011 11:58:54 -0500
Subject: [PATCH 28/30] BeagleBoard: config: make mtest run
Utilize the alternate mtest and define a valid region.
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap3_beagle.h | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 6c842ad..3bbc235 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -292,10 +292,11 @@
/* Boot Argument Buffer Size */
#define CONFIG_SYS_BARGSIZE (CONFIG_SYS_CBSIZE)
-#define CONFIG_SYS_MEMTEST_START (OMAP34XX_SDRC_CS0) /* memtest */
- /* works on */
-#define CONFIG_SYS_MEMTEST_END (OMAP34XX_SDRC_CS0 + \
- 0x01F00000) /* 31MB */
+#define CONFIG_SYS_ALT_MEMTEST 1
+#define CONFIG_SYS_MEMTEST_START (0x82000000) /* memtest */
+ /* defaults */
+#define CONFIG_SYS_MEMTEST_END (0x87FFFFFF) /* 128MB */
+#define CONFIG_SYS_MEMTEST_SCRATCH (0x81000000) /* dummy address */
#define CONFIG_SYS_LOAD_ADDR (OMAP34XX_SDRC_CS0) /* default */
/* load address */
--
1.6.6.1

View File

@@ -1,42 +0,0 @@
From c75471405166cba2327680cc4e4d204f05007c54 Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Tue, 19 Apr 2011 11:50:55 -0500
Subject: [PATCH 29/30] BeagleBoard: config: increase command-line functionality
Enable the expression evaluator.
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap3_beagle.h | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 3bbc235..55973fb 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -158,6 +158,7 @@
#define CONFIG_CMD_NFS /* NFS support */
#define CONFIG_CMD_PING
#define CONFIG_CMD_DHCP
+#define CONFIG_CMD_SETEXPR /* Evaluate expressions */
#undef CONFIG_CMD_FLASH /* flinfo, erase, protect */
#undef CONFIG_CMD_FPGA /* FPGA configuration Support */
@@ -284,11 +285,11 @@
#define CONFIG_SYS_HUSH_PARSER /* use "hush" command parser */
#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
#define CONFIG_SYS_PROMPT "OMAP3 beagleboard.org # "
-#define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */
+#define CONFIG_SYS_CBSIZE 512 /* Console I/O Buffer Size */
/* Print Buffer Size */
#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
sizeof(CONFIG_SYS_PROMPT) + 16)
-#define CONFIG_SYS_MAXARGS 16 /* max number of command args */
+#define CONFIG_SYS_MAXARGS 32 /* max number of command args */
/* Boot Argument Buffer Size */
#define CONFIG_SYS_BARGSIZE (CONFIG_SYS_CBSIZE)
--
1.6.6.1

View File

@@ -1,51 +0,0 @@
From 0e384ea7bc94d8626c0280f7c0151f99fbc83008 Mon Sep 17 00:00:00 2001
From: Jason Kridner <jkridner@beagleboard.org>
Date: Tue, 19 Apr 2011 12:09:18 -0500
Subject: [PATCH 30/30] BeagleBoard: config: add optargs/buddy/camera
buddy and camera are used to configure peripherals in the kernel at boot
time that cannot easily be detected by the kernel.
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap3_beagle.h | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 55973fb..024cb9a 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -214,6 +214,8 @@
"console=ttyO2,115200n8\0" \
"mpurate=auto\0" \
"buddy=none "\
+ "optargs=\0" \
+ "camera=none\0" \
"vram=12M\0" \
"dvimode=1024x768MR-16@60\0" \
"defaultdisplay=dvi\0" \
@@ -223,16 +225,20 @@
"nandroot=/dev/mtdblock4 rw\0" \
"nandrootfstype=jffs2\0" \
"mmcargs=setenv bootargs console=${console} " \
+ "${optargs} " \
"mpurate=${mpurate} " \
"buddy=${buddy} "\
+ "camera=${camera} "\
"vram=${vram} " \
"omapfb.mode=dvi:${dvimode} " \
"omapdss.def_disp=${defaultdisplay} " \
"root=${mmcroot} " \
"rootfstype=${mmcrootfstype}\0" \
"nandargs=setenv bootargs console=${console} " \
+ "${optargs} " \
"mpurate=${mpurate} " \
"buddy=${buddy} "\
+ "camera=${camera} "\
"vram=${vram} " \
"omapfb.mode=dvi:${dvimode} " \
"omapdss.def_disp=${defaultdisplay} " \
--
1.6.6.1

View File

@@ -1,306 +0,0 @@
From b2395bf32d0475dd4a729155e94e5d1605c54362 Mon Sep 17 00:00:00 2001
From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
Date: Mon, 9 May 2011 18:04:49 -0300
Subject: [PATCH 31/35] omap4: add support for gpios
Copied from omap3.
Signed-off-by: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
arch/arm/cpu/armv7/omap4/Makefile | 1 +
arch/arm/cpu/armv7/omap4/gpio.c | 169 ++++++++++++++++++++++++++++++++
arch/arm/include/asm/arch-omap4/gpio.h | 93 +++++++++++++++++
3 files changed, 263 insertions(+), 0 deletions(-)
create mode 100644 arch/arm/cpu/armv7/omap4/gpio.c
create mode 100644 arch/arm/include/asm/arch-omap4/gpio.h
diff --git a/arch/arm/cpu/armv7/omap4/Makefile b/arch/arm/cpu/armv7/omap4/Makefile
index 987dc9d..c39693a 100644
--- a/arch/arm/cpu/armv7/omap4/Makefile
+++ b/arch/arm/cpu/armv7/omap4/Makefile
@@ -29,6 +29,7 @@ SOBJS += lowlevel_init.o
COBJS += board.o
COBJS += mem.o
+COBJS += gpio.o
COBJS += sys_info.o
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
diff --git a/arch/arm/cpu/armv7/omap4/gpio.c b/arch/arm/cpu/armv7/omap4/gpio.c
new file mode 100644
index 0000000..40f1d5e
--- /dev/null
+++ b/arch/arm/cpu/armv7/omap4/gpio.c
@@ -0,0 +1,169 @@
+/*
+ * Lifted from arch/arm/cpu/armv7/omap3/gpio.c
+ *
+ * Original Copyright (c) 2009 Wind River Systems, Inc.
+ * Tom Rix <Tom.Rix@windriver.com>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ * This work is derived from the linux 2.6.27 kernel source
+ * To fetch, use the kernel repository
+ * git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
+ * Use the v2.6.27 tag.
+ *
+ * Below is the original's header including its copyright
+ *
+ * linux/arch/arm/plat-omap/gpio.c
+ *
+ * Support functions for OMAP GPIO
+ *
+ * Copyright (C) 2003-2005 Nokia Corporation
+ * Written by Juha Yrjölä <juha.yrjola@nokia.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+#include <common.h>
+#include <asm/arch/gpio.h>
+#include <asm/io.h>
+#include <asm/errno.h>
+
+/*
+ * OMAP44XX specific GPIO registers
+ */
+#define OMAP44XX_GPIO1_BASE 0x4a310000
+#define OMAP44XX_GPIO2_BASE 0x48055000
+#define OMAP44XX_GPIO3_BASE 0x48057000
+#define OMAP44XX_GPIO4_BASE 0x48059000
+#define OMAP44XX_GPIO5_BASE 0x4805B000
+#define OMAP44XX_GPIO6_BASE 0x4805D000
+
+static const struct gpio_bank gpio_bank_44xx[6] = {
+ { (void *)OMAP44XX_GPIO1_BASE },
+ { (void *)OMAP44XX_GPIO2_BASE },
+ { (void *)OMAP44XX_GPIO3_BASE },
+ { (void *)OMAP44XX_GPIO4_BASE },
+ { (void *)OMAP44XX_GPIO5_BASE },
+ { (void *)OMAP44XX_GPIO6_BASE },
+};
+
+static struct gpio_bank *gpio_bank = &gpio_bank_44xx[0];
+
+static inline struct gpio_bank *get_gpio_bank(int gpio)
+{
+ return &gpio_bank[gpio >> 5];
+}
+
+static inline int get_gpio_index(int gpio)
+{
+ return gpio & 0x1f;
+}
+
+static inline int gpio_valid(int gpio)
+{
+ if (gpio < 0)
+ return -1;
+ if (gpio < 192)
+ return 0;
+ return -1;
+}
+
+static int check_gpio(int gpio)
+{
+ if (gpio_valid(gpio) < 0) {
+ printf("ERROR : check_gpio: invalid GPIO %d\n", gpio);
+ return -1;
+ }
+ return 0;
+}
+
+static void _set_gpio_direction(struct gpio_bank *bank, int gpio, int is_input)
+{
+ void *reg;
+ u32 l;
+
+ reg = bank->base + OMAP4_GPIO_OE;
+ l = __raw_readl(reg);
+ if (is_input)
+ l |= 1 << gpio;
+ else
+ l &= ~(1 << gpio);
+ __raw_writel(l, reg);
+}
+
+void omap_set_gpio_direction(int gpio, int is_input)
+{
+ struct gpio_bank *bank;
+
+ if (check_gpio(gpio) < 0)
+ return;
+ bank = get_gpio_bank(gpio);
+ _set_gpio_direction(bank, get_gpio_index(gpio), is_input);
+}
+
+static void _set_gpio_dataout(struct gpio_bank *bank, int gpio, int enable)
+{
+ if (enable)
+ __raw_writel(1 << gpio, bank->base + OMAP4_GPIO_SETDATAOUT);
+ else
+ __raw_writel(1 << gpio, bank->base + OMAP4_GPIO_CLEARDATAOUT);
+}
+
+void omap_set_gpio_dataout(int gpio, int enable)
+{
+ struct gpio_bank *bank;
+
+ if (check_gpio(gpio) < 0)
+ return;
+ bank = get_gpio_bank(gpio);
+ _set_gpio_dataout(bank, get_gpio_index(gpio), enable);
+}
+
+int omap_get_gpio_datain(int gpio)
+{
+ struct gpio_bank *bank;
+
+ if (check_gpio(gpio) < 0)
+ return -EINVAL;
+ bank = get_gpio_bank(gpio);
+ return (__raw_readl(bank->base + OMAP4_GPIO_DATAIN)
+ & (1 << get_gpio_index(gpio))) != 0;
+}
+
+static void _reset_gpio(struct gpio_bank *bank, int gpio)
+{
+ _set_gpio_direction(bank, get_gpio_index(gpio), 1);
+}
+
+int omap_request_gpio(int gpio)
+{
+ if (check_gpio(gpio) < 0)
+ return -EINVAL;
+
+ return 0;
+}
+
+void omap_free_gpio(int gpio)
+{
+ struct gpio_bank *bank;
+
+ if (check_gpio(gpio) < 0)
+ return;
+ bank = get_gpio_bank(gpio);
+
+ _reset_gpio(bank, gpio);
+}
diff --git a/arch/arm/include/asm/arch-omap4/gpio.h b/arch/arm/include/asm/arch-omap4/gpio.h
new file mode 100644
index 0000000..d4dbea4
--- /dev/null
+++ b/arch/arm/include/asm/arch-omap4/gpio.h
@@ -0,0 +1,93 @@
+/*
+ * Copyright (c) 2009 Wind River Systems, Inc.
+ * Tom Rix <Tom.Rix@windriver.com>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ * This work is derived from the linux 2.6.27 kernel source
+ * To fetch, use the kernel repository
+ * git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
+ * Use the v2.6.27 tag.
+ *
+ * Below is the original's header including its copyright
+ *
+ * linux/arch/arm/plat-omap/gpio.c
+ *
+ * Support functions for OMAP GPIO
+ *
+ * Copyright (C) 2003-2005 Nokia Corporation
+ * Written by Juha Yrjölä <juha.yrjola@nokia.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+#ifndef _GPIO_H
+#define _GPIO_H
+
+#define OMAP4_GPIO_REVISION 0x0000
+#define OMAP4_GPIO_SYSCONFIG 0x0010
+#define OMAP4_GPIO_EOI 0x0020
+#define OMAP4_GPIO_IRQSTATUSRAW0 0x0024
+#define OMAP4_GPIO_IRQSTATUSRAW1 0x0028
+#define OMAP4_GPIO_IRQSTATUS0 0x002c
+#define OMAP4_GPIO_IRQSTATUS1 0x0030
+#define OMAP4_GPIO_IRQSTATUSSET0 0x0034
+#define OMAP4_GPIO_IRQSTATUSSET1 0x0038
+#define OMAP4_GPIO_IRQSTATUSCLR0 0x003c
+#define OMAP4_GPIO_IRQSTATUSCLR1 0x0040
+#define OMAP4_GPIO_IRQWAKEN0 0x0044
+#define OMAP4_GPIO_IRQWAKEN1 0x0048
+#define OMAP4_GPIO_SYSSTATUS 0x0114
+#define OMAP4_GPIO_IRQENABLE1 0x011c
+#define OMAP4_GPIO_WAKE_EN 0x0120
+#define OMAP4_GPIO_IRQSTATUS2 0x0128
+#define OMAP4_GPIO_IRQENABLE2 0x012c
+#define OMAP4_GPIO_CTRL 0x0130
+#define OMAP4_GPIO_OE 0x0134
+#define OMAP4_GPIO_DATAIN 0x0138
+#define OMAP4_GPIO_DATAOUT 0x013c
+#define OMAP4_GPIO_LEVELDETECT0 0x0140
+#define OMAP4_GPIO_LEVELDETECT1 0x0144
+#define OMAP4_GPIO_RISINGDETECT 0x0148
+#define OMAP4_GPIO_FALLINGDETECT 0x014c
+#define OMAP4_GPIO_DEBOUNCENABLE 0x0150
+#define OMAP4_GPIO_DEBOUNCINGTIME 0x0154
+#define OMAP4_GPIO_CLEARIRQENABLE1 0x0160
+#define OMAP4_GPIO_SETIRQENABLE1 0x0164
+#define OMAP4_GPIO_CLEARWKUENA 0x0180
+#define OMAP4_GPIO_SETWKUENA 0x0184
+#define OMAP4_GPIO_CLEARDATAOUT 0x0190
+#define OMAP4_GPIO_SETDATAOUT 0x0194
+
+struct gpio_bank {
+ void *base;
+};
+
+/* This is the interface */
+
+/* Request a gpio before using it */
+int omap_request_gpio(int gpio);
+/* Reset and free a gpio after using it */
+void omap_free_gpio(int gpio);
+/* Sets the gpio as input or output */
+void omap_set_gpio_direction(int gpio, int is_input);
+/* Set or clear a gpio output */
+void omap_set_gpio_dataout(int gpio, int enable);
+/* Get the value of a gpio input */
+int omap_get_gpio_datain(int gpio);
+
+#endif /* _GPIO_H_ */
--
1.6.6.1

View File

@@ -1,322 +0,0 @@
From a2536d64065297279726a71e0af04a5f677f675c Mon Sep 17 00:00:00 2001
From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
Date: Mon, 9 May 2011 23:04:50 +0200
Subject: [PATCH 32/35] omap4: add support for EHCI
As board may need some specific support, implement inner functions
to be called by the boards implementaions of ehci_hcd_start,
ehci_hcd_stop.
Signed-off-by: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
arch/arm/include/asm/arch-omap4/ehci.h | 8 +
drivers/usb/host/Makefile | 1 +
drivers/usb/host/ehci-omap4.c | 268 ++++++++++++++++++++++++++++++++
3 files changed, 277 insertions(+), 0 deletions(-)
create mode 100644 arch/arm/include/asm/arch-omap4/ehci.h
create mode 100644 drivers/usb/host/ehci-omap4.c
diff --git a/arch/arm/include/asm/arch-omap4/ehci.h b/arch/arm/include/asm/arch-omap4/ehci.h
new file mode 100644
index 0000000..fc84f6a
--- /dev/null
+++ b/arch/arm/include/asm/arch-omap4/ehci.h
@@ -0,0 +1,8 @@
+#ifndef EHCI_H
+#define EHCI_H
+
+int omap4_ehci_hcd_init(void);
+
+int omap4_ehci_hcd_stop(void);
+
+#endif /* EHCI_H */
diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile
index 51b2494..5a5b971 100644
--- a/drivers/usb/host/Makefile
+++ b/drivers/usb/host/Makefile
@@ -46,6 +46,7 @@ COBJS-$(CONFIG_USB_EHCI_IXP4XX) += ehci-ixp.o
COBJS-$(CONFIG_USB_EHCI_KIRKWOOD) += ehci-kirkwood.o
COBJS-$(CONFIG_USB_EHCI_PCI) += ehci-pci.o
COBJS-$(CONFIG_USB_EHCI_VCT) += ehci-vct.o
+COBJS-$(CONFIG_USB_EHCI_OMAP4) += ehci-omap4.o
COBJS := $(COBJS-y)
SRCS := $(COBJS:.o=.c)
diff --git a/drivers/usb/host/ehci-omap4.c b/drivers/usb/host/ehci-omap4.c
new file mode 100644
index 0000000..19cd286
--- /dev/null
+++ b/drivers/usb/host/ehci-omap4.c
@@ -0,0 +1,268 @@
+/*
+ * OMAP4 EHCI port, copied from linux/drivers/usb/host/ehci-omap.c
+ *
+ * Copyright (C) 2007-2010 Texas Instruments, Inc.
+ * Author: Vikram Pandita <vikram.pandita@ti.com>
+ * Author: Anand Gadiyar <gadiyar@ti.com>
+ */
+
+#include <common.h>
+#include <usb.h>
+#include <errno.h>
+#include <asm/io.h>
+#include <asm/arch/gpio.h>
+#include <asm/arch/omap4.h>
+#include <asm/arch/sys_proto.h>
+
+#include "ehci.h"
+#include "ehci-core.h"
+
+#define EHCI_BASE (OMAP44XX_L4_CORE_BASE + 0x64C00)
+#define UHH_BASE (OMAP44XX_L4_CORE_BASE + 0x64000)
+#define TLL_BASE (OMAP44XX_L4_CORE_BASE + 0x62000)
+
+/* ULPI */
+#define ULPI_SET(a) (a + 1)
+#define ULPI_CLR(a) (a + 2)
+
+#define ULPI_FUNC_CTRL 0x04
+
+#define ULPI_FUNC_CTRL_RESET (1 << 5)
+
+/* TLL Register Set */
+#define OMAP_USBTLL_REVISION (0x00)
+#define OMAP_USBTLL_SYSCONFIG (0x10)
+#define OMAP_USBTLL_SYSCONFIG_CACTIVITY (1 << 8)
+#define OMAP_USBTLL_SYSCONFIG_SIDLEMODE (1 << 3)
+#define OMAP_USBTLL_SYSCONFIG_ENAWAKEUP (1 << 2)
+#define OMAP_USBTLL_SYSCONFIG_SOFTRESET (1 << 1)
+#define OMAP_USBTLL_SYSCONFIG_AUTOIDLE (1 << 0)
+
+#define OMAP_USBTLL_SYSSTATUS (0x14)
+#define OMAP_USBTLL_SYSSTATUS_RESETDONE (1 << 0)
+
+#define OMAP_USBTLL_IRQSTATUS (0x18)
+#define OMAP_USBTLL_IRQENABLE (0x1C)
+
+#define OMAP_TLL_SHARED_CONF (0x30)
+#define OMAP_TLL_SHARED_CONF_USB_90D_DDR_EN (1 << 6)
+#define OMAP_TLL_SHARED_CONF_USB_180D_SDR_EN (1 << 5)
+#define OMAP_TLL_SHARED_CONF_USB_DIVRATION (1 << 2)
+#define OMAP_TLL_SHARED_CONF_FCLK_REQ (1 << 1)
+#define OMAP_TLL_SHARED_CONF_FCLK_IS_ON (1 << 0)
+
+#define OMAP_TLL_CHANNEL_CONF(num) (0x040 + 0x004 * num)
+#define OMAP_TLL_CHANNEL_CONF_ULPINOBITSTUFF (1 << 11)
+#define OMAP_TLL_CHANNEL_CONF_ULPI_ULPIAUTOIDLE (1 << 10)
+#define OMAP_TLL_CHANNEL_CONF_UTMIAUTOIDLE (1 << 9)
+#define OMAP_TLL_CHANNEL_CONF_ULPIDDRMODE (1 << 8)
+#define OMAP_TLL_CHANNEL_CONF_CHANEN (1 << 0)
+
+#define OMAP_TLL_ULPI_FUNCTION_CTRL(num) (0x804 + 0x100 * num)
+#define OMAP_TLL_ULPI_INTERFACE_CTRL(num) (0x807 + 0x100 * num)
+#define OMAP_TLL_ULPI_OTG_CTRL(num) (0x80A + 0x100 * num)
+#define OMAP_TLL_ULPI_INT_EN_RISE(num) (0x80D + 0x100 * num)
+#define OMAP_TLL_ULPI_INT_EN_FALL(num) (0x810 + 0x100 * num)
+#define OMAP_TLL_ULPI_INT_STATUS(num) (0x813 + 0x100 * num)
+#define OMAP_TLL_ULPI_INT_LATCH(num) (0x814 + 0x100 * num)
+#define OMAP_TLL_ULPI_DEBUG(num) (0x815 + 0x100 * num)
+#define OMAP_TLL_ULPI_SCRATCH_REGISTER(num) (0x816 + 0x100 * num)
+
+#define OMAP_TLL_CHANNEL_COUNT 3
+#define OMAP_TLL_CHANNEL_1_EN_MASK (1 << 1)
+#define OMAP_TLL_CHANNEL_2_EN_MASK (1 << 2)
+#define OMAP_TLL_CHANNEL_3_EN_MASK (1 << 4)
+
+/* UHH Register Set */
+#define OMAP_UHH_REVISION (0x00)
+#define OMAP_UHH_SYSCONFIG (0x10)
+#define OMAP_UHH_SYSCONFIG_MIDLEMODE (1 << 12)
+#define OMAP_UHH_SYSCONFIG_CACTIVITY (1 << 8)
+#define OMAP_UHH_SYSCONFIG_SIDLEMODE (1 << 3)
+#define OMAP_UHH_SYSCONFIG_ENAWAKEUP (1 << 2)
+#define OMAP_UHH_SYSCONFIG_SOFTRESET (1 << 1)
+#define OMAP_UHH_SYSCONFIG_AUTOIDLE (1 << 0)
+
+#define OMAP_UHH_SYSSTATUS (0x14)
+#define OMAP_UHH_HOSTCONFIG (0x40)
+#define OMAP_UHH_HOSTCONFIG_ULPI_BYPASS (1 << 0)
+#define OMAP_UHH_HOSTCONFIG_ULPI_P1_BYPASS (1 << 0)
+#define OMAP_UHH_HOSTCONFIG_ULPI_P2_BYPASS (1 << 11)
+#define OMAP_UHH_HOSTCONFIG_ULPI_P3_BYPASS (1 << 12)
+#define OMAP_UHH_HOSTCONFIG_INCR4_BURST_EN (1 << 2)
+#define OMAP_UHH_HOSTCONFIG_INCR8_BURST_EN (1 << 3)
+#define OMAP_UHH_HOSTCONFIG_INCR16_BURST_EN (1 << 4)
+#define OMAP_UHH_HOSTCONFIG_INCRX_ALIGN_EN (1 << 5)
+#define OMAP_UHH_HOSTCONFIG_P1_CONNECT_STATUS (1 << 8)
+#define OMAP_UHH_HOSTCONFIG_P2_CONNECT_STATUS (1 << 9)
+#define OMAP_UHH_HOSTCONFIG_P3_CONNECT_STATUS (1 << 10)
+
+/* OMAP4-specific defines */
+#define OMAP4_UHH_SYSCONFIG_IDLEMODE_CLEAR (3 << 2)
+#define OMAP4_UHH_SYSCONFIG_NOIDLE (1 << 2)
+
+#define OMAP4_UHH_SYSCONFIG_STDBYMODE_CLEAR (3 << 4)
+#define OMAP4_UHH_SYSCONFIG_NOSTDBY (1 << 4)
+#define OMAP4_UHH_SYSCONFIG_SOFTRESET (1 << 0)
+
+#define OMAP4_P1_MODE_CLEAR (3 << 16)
+#define OMAP4_P1_MODE_TLL (1 << 16)
+#define OMAP4_P1_MODE_HSIC (3 << 16)
+#define OMAP4_P2_MODE_CLEAR (3 << 18)
+#define OMAP4_P2_MODE_TLL (1 << 18)
+#define OMAP4_P2_MODE_HSIC (3 << 18)
+
+#define OMAP_REV2_TLL_CHANNEL_COUNT 2
+
+#define OMAP_UHH_DEBUG_CSR (0x44)
+
+/* EHCI Register Set */
+#define EHCI_INSNREG04 (0xA0)
+#define EHCI_INSNREG04_DISABLE_UNSUSPEND (1 << 5)
+#define EHCI_INSNREG05_ULPI (0xA4)
+#define EHCI_INSNREG05_ULPI_CONTROL_SHIFT 31
+#define EHCI_INSNREG05_ULPI_PORTSEL_SHIFT 24
+#define EHCI_INSNREG05_ULPI_OPSEL_SHIFT 22
+#define EHCI_INSNREG05_ULPI_REGADD_SHIFT 16
+#define EHCI_INSNREG05_ULPI_EXTREGADD_SHIFT 8
+#define EHCI_INSNREG05_ULPI_WRDATA_SHIFT 0
+
+int omap4_ehci_hcd_init(void)
+{
+ unsigned long base = get_timer(0);
+ unsigned reg = 0, port = 0;
+ int rc;
+
+ /* USB host, with clock from external phy as port 1 UTMI clock */
+ sr32((void *)0x4A009358, 0, 32, 0x01000002);
+
+ /* FSUSB clk */
+ sr32((void *)0x4a0093d0, 0, 32, 0x2);
+
+ /* USB TLL clock */
+ sr32((void *)0x4a009368, 0, 32, 0x1);
+
+ /* enable the 32K, 48M optional clocks and enable the module */
+ sr32((void *)0x4a0093e0, 0, 32, 0x301);
+
+ /* perform TLL soft reset, and wait until reset is complete */
+ writel(OMAP_USBTLL_SYSCONFIG_SOFTRESET,
+ TLL_BASE + OMAP_USBTLL_SYSCONFIG);
+
+ /* Wait for TLL reset to complete */
+ while (!(readl(TLL_BASE + OMAP_USBTLL_SYSSTATUS)
+ & OMAP_USBTLL_SYSSTATUS_RESETDONE))
+ if (get_timer(base) > CONFIG_SYS_HZ) {
+ printf("OMAP4 EHCI error: timeout resetting TLL\n");
+ return -1;
+ }
+
+ writel(OMAP_USBTLL_SYSCONFIG_ENAWAKEUP |
+ OMAP_USBTLL_SYSCONFIG_SIDLEMODE |
+ OMAP_USBTLL_SYSCONFIG_CACTIVITY,
+ TLL_BASE + OMAP_USBTLL_SYSCONFIG);
+
+ /* Put UHH in NoIdle/NoStandby mode */
+ reg = readl(UHH_BASE + OMAP_UHH_SYSCONFIG);
+ reg &= ~OMAP4_UHH_SYSCONFIG_IDLEMODE_CLEAR;
+ reg |= OMAP4_UHH_SYSCONFIG_NOIDLE;
+ reg &= ~OMAP4_UHH_SYSCONFIG_STDBYMODE_CLEAR;
+ reg |= OMAP4_UHH_SYSCONFIG_NOSTDBY;
+ writel(reg, UHH_BASE + OMAP_UHH_SYSCONFIG);
+
+ reg = readl(UHH_BASE + OMAP_UHH_HOSTCONFIG);
+
+ /* setup ULPI bypass and burst configurations */
+ reg |= (OMAP_UHH_HOSTCONFIG_INCR4_BURST_EN
+ | OMAP_UHH_HOSTCONFIG_INCR8_BURST_EN
+ | OMAP_UHH_HOSTCONFIG_INCR16_BURST_EN);
+ reg &= ~OMAP_UHH_HOSTCONFIG_INCRX_ALIGN_EN;
+
+ /* Clear port mode fields for PHY mode*/
+ reg &= ~OMAP4_P1_MODE_CLEAR;
+ reg &= ~OMAP4_P2_MODE_CLEAR;
+ writel(reg, UHH_BASE + OMAP_UHH_HOSTCONFIG);
+
+ /*
+ * An undocumented "feature" in the OMAP3 EHCI controller,
+ * causes suspended ports to be taken out of suspend when
+ * the USBCMD.Run/Stop bit is cleared (for example when
+ * we do ehci_bus_suspend).
+ * This breaks suspend-resume if the root-hub is allowed
+ * to suspend. Writing 1 to this undocumented register bit
+ * disables this feature and restores normal behavior.
+ */
+ writel(EHCI_INSNREG04_DISABLE_UNSUSPEND, EHCI_BASE + EHCI_INSNREG04);
+
+ reg = ULPI_FUNC_CTRL_RESET
+ /* FUNCTION_CTRL_SET register */
+ | (ULPI_SET(ULPI_FUNC_CTRL) << EHCI_INSNREG05_ULPI_REGADD_SHIFT)
+ /* Write */
+ | (2 << EHCI_INSNREG05_ULPI_OPSEL_SHIFT)
+ /* PORTn */
+ | ((port + 1) << EHCI_INSNREG05_ULPI_PORTSEL_SHIFT)
+ /* start ULPI access*/
+ | (1 << EHCI_INSNREG05_ULPI_CONTROL_SHIFT);
+
+ base = get_timer(0);
+
+ writel(reg, EHCI_BASE + EHCI_INSNREG05_ULPI);
+
+ /* Wait for ULPI access completion */
+ while ((readl(EHCI_BASE + EHCI_INSNREG05_ULPI)
+ & (1 << EHCI_INSNREG05_ULPI_CONTROL_SHIFT)))
+ if (get_timer(base) > CONFIG_SYS_HZ) {
+ printf("OMAP4 EHCI error: timeout resetting phy\n");
+ return -1;
+ }
+
+ hccr = (struct ehci_hccr *)(EHCI_BASE);
+ hcor = (struct ehci_hcor *)((uint32_t) hccr
+ + HC_LENGTH(ehci_readl(&hccr->cr_capbase)));
+ return 0;
+}
+
+int omap4_ehci_hcd_stop(void)
+{
+ unsigned base = get_timer(0);
+
+ writel(OMAP4_UHH_SYSCONFIG_SOFTRESET, UHH_BASE + OMAP_UHH_SYSCONFIG);
+
+#if 0
+ /* We get timeout here */
+ while (!(readl(UHH_BASE + OMAP_UHH_SYSSTATUS) & (1 << 0)))
+ if (get_timer(base) > CONFIG_SYS_HZ) {
+ printf("OMAP4 EHCI error: reset UHH 0 timeout\n");
+ return -ETIMEDOUT;
+ }
+
+ while (!(readl(UHH_BASE + OMAP_UHH_SYSSTATUS) & (1 << 1)))
+ if (get_timer(base) > CONFIG_SYS_HZ) {
+ printf("OMAP4 EHCI error: reset UHH 1 timeout\n");
+ return -ETIMEDOUT;
+ }
+
+ while (!(readl(UHH_BASE + OMAP_UHH_SYSSTATUS) & (1 << 2)))
+ if (get_timer(base) > CONFIG_SYS_HZ) {
+ printf("OMAP4 EHCI error: reset UHH 2 timeout\n");
+ return -ETIMEDOUT;
+ }
+#endif
+
+
+ writel((1 << 1), TLL_BASE + OMAP_USBTLL_SYSCONFIG);
+
+ while (!(readl(TLL_BASE + OMAP_USBTLL_SYSSTATUS) & (1 << 0)))
+ if (get_timer(base) > CONFIG_SYS_HZ) {
+ printf("OMAP4 EHCI error: reset TLL timeout\n");
+ return -ETIMEDOUT;
+ }
+
+ /* Disable clocks */
+ sr32((void *)0x4a0093e0, 0, 32, 0);
+ sr32((void *)0x4a009368, 0, 32, 0);
+ sr32((void *)0x4a0093d0, 0, 32, 0);
+ sr32((void *)0x4A009358, 0, 32, 0);
+
+ return 0;
+}
--
1.6.6.1

View File

@@ -1,97 +0,0 @@
From 0d730b18792cdbd31ec47bd7b5793b26f884c796 Mon Sep 17 00:00:00 2001
From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
Date: Mon, 9 May 2011 23:04:51 +0200
Subject: [PATCH 33/35] omap4_panda: add support for EHCI
Signed-off-by: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
board/ti/panda/Makefile | 4 ++-
board/ti/panda/ehci-panda.c | 59 +++++++++++++++++++++++++++++++++++++++++++
2 files changed, 62 insertions(+), 1 deletions(-)
create mode 100644 board/ti/panda/ehci-panda.c
diff --git a/board/ti/panda/Makefile b/board/ti/panda/Makefile
index 2186403..253567c 100644
--- a/board/ti/panda/Makefile
+++ b/board/ti/panda/Makefile
@@ -25,7 +25,9 @@ include $(TOPDIR)/config.mk
LIB = $(obj)lib$(BOARD).o
-COBJS := panda.o
+COBJS-$(CONFIG_USB_EHCI) += ehci-panda.o
+
+COBJS := $(COBJS-y) panda.o
SRCS := $(COBJS:.o=.c)
OBJS := $(addprefix $(obj),$(COBJS))
diff --git a/board/ti/panda/ehci-panda.c b/board/ti/panda/ehci-panda.c
new file mode 100644
index 0000000..b1e247c
--- /dev/null
+++ b/board/ti/panda/ehci-panda.c
@@ -0,0 +1,59 @@
+/*
+ * OMAP4 EHCI port, copied from linux/drivers/usb/host/ehci-omap.c
+ *
+ * Copyright (C) 2007-2010 Texas Instruments, Inc.
+ * Author: Vikram Pandita <vikram.pandita@ti.com>
+ * Author: Anand Gadiyar <gadiyar@ti.com>
+ */
+
+#include <asm/arch/gpio.h>
+#include <asm/arch/ehci.h>
+
+#define GPIO_HUB_POWER 1
+#define GPIO_HUB_NRESET 62
+
+int ehci_hcd_init(void)
+{
+ unsigned long base = get_timer(0);
+ unsigned reg = 0, port = 0;
+ int rc;
+
+ /* disable the power to the usb hub prior to init */
+ rc = omap_request_gpio(GPIO_HUB_POWER);
+ if (rc < 0) {
+ printf("Could not request gpio %d\n", GPIO_HUB_POWER);
+ return rc;
+ }
+
+ rc = omap_request_gpio(GPIO_HUB_NRESET);
+ if (rc < 0) {
+ printf("Could not request gpio %d\n", GPIO_HUB_NRESET);
+ omap_free_gpio(GPIO_HUB_POWER);
+ return rc;
+ }
+
+ omap_set_gpio_direction(GPIO_HUB_POWER, 0);
+ omap_set_gpio_dataout(GPIO_HUB_POWER, 0);
+ omap_set_gpio_direction(GPIO_HUB_NRESET, 0);
+ omap_set_gpio_dataout(GPIO_HUB_NRESET, 0);
+ omap_set_gpio_dataout(GPIO_HUB_NRESET, 1);
+
+ rc = omap4_ehci_hcd_init();
+
+ if (rc < 0)
+ return rc;
+
+ omap_set_gpio_dataout(GPIO_HUB_POWER, 1);
+
+ return 0;
+}
+
+int ehci_hcd_stop(void)
+{
+ omap4_ehci_hcd_stop();
+
+ omap_set_gpio_dataout(GPIO_HUB_POWER, 0);
+ omap_set_gpio_dataout(GPIO_HUB_NRESET, 0);
+ omap_free_gpio(GPIO_HUB_POWER);
+ omap_free_gpio(GPIO_HUB_NRESET);
+}
--
1.6.6.1

View File

@@ -1,66 +0,0 @@
From 1005120d214c98fde62dba9365e24519de001f50 Mon Sep 17 00:00:00 2001
From: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
Date: Thu, 19 May 2011 10:17:15 -0300
Subject: [PATCH 34/35] omap4_panda: adding support for smsc and tftp boot
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap4_panda.h | 20 +++++++++++++++++++-
1 files changed, 19 insertions(+), 1 deletions(-)
diff --git a/include/configs/omap4_panda.h b/include/configs/omap4_panda.h
index b4e7f41..0fcdf46 100644
--- a/include/configs/omap4_panda.h
+++ b/include/configs/omap4_panda.h
@@ -120,6 +120,19 @@
#define CONFIG_USB_DEVICE 1
#define CONFIG_USB_TTY 1
#define CONFIG_SYS_CONSOLE_IS_IN_ENV 1
+#define CONFIG_CMD_USB 1
+#define CONFIG_USB_STORAGE 1
+#define CONFIG_USB_HOST_ETHER 1
+#define CONFIG_USB_EHCI 1
+#define CONFIG_USB_EHCI_OMAP4 1
+#define CONFIG_USB_HOST 1
+#define CONFIG_USB_ETHER_SMSC95XX 1
+
+/* Ethernet */
+#define CONFIG_NET_MULTI 1
+#define CONFIG_CMD_PING 1
+#define CONFIG_CMD_DHCP 1
+#define CONFIG_BOOTFILE "uImage"
/* Flash */
#define CONFIG_SYS_NO_FLASH 1
@@ -134,7 +147,6 @@
#define CONFIG_CMD_MMC /* MMC support */
/* Disabled commands */
-#undef CONFIG_CMD_NET
#undef CONFIG_CMD_NFS
#undef CONFIG_CMD_FPGA /* FPGA configuration Support */
#undef CONFIG_CMD_IMLS /* List all found images */
@@ -152,6 +164,8 @@
"console=ttyS2,115200n8\0" \
"usbtty=cdc_acm\0" \
"vram=16M\0" \
+ "usbethaddr=00:02:03:04:05:06\0" \
+ "hostname=panda\0" \
"mmcdev=0\0" \
"mmcroot=/dev/mmcblk0p2 rw\0" \
"mmcrootfstype=ext3 rootwait\0" \
@@ -176,6 +190,10 @@
"run mmcboot; " \
"fi; " \
"fi; " \
+ "fi; " \
+ "if usb start; then " \
+ "bootp; "\
+ "source ${loadaddr};" \
"fi"
#define CONFIG_AUTO_COMPLETE 1
--
1.6.6.1

View File

@@ -1,26 +0,0 @@
From b2ed58548de12a9bd9b23f51ade86793ae44b74f Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Mon, 11 Jul 2011 09:47:17 +0200
Subject: [PATCH 35/35] omap4_panda: use uImage.panda for tftp
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
include/configs/omap4_panda.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/include/configs/omap4_panda.h b/include/configs/omap4_panda.h
index 0fcdf46..454a6b0 100644
--- a/include/configs/omap4_panda.h
+++ b/include/configs/omap4_panda.h
@@ -132,7 +132,7 @@
#define CONFIG_NET_MULTI 1
#define CONFIG_CMD_PING 1
#define CONFIG_CMD_DHCP 1
-#define CONFIG_BOOTFILE "uImage"
+#define CONFIG_BOOTFILE "uImage.panda"
/* Flash */
#define CONFIG_SYS_NO_FLASH 1
--
1.6.6.1

View File

@@ -1,6 +0,0 @@
# Configuration file for fw_(printenv/saveenv) utility.
# Up to two entries are valid, in this case the redundand
# environment sector is assumed present.
# MTD device name Device offset Env. size Flash sector size
/dev/mtd2 0x0000 0x20000 0x20000

View File

@@ -1,25 +0,0 @@
From eb13d25ad907314a5dd712ad7de59ca260968e61 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Sat, 8 Jan 2011 19:17:24 +0100
Subject: [PATCH 10/10] touchbook-config.patch
---
board/omap3/beagle/beagle.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/board/omap3/beagle/beagle.c b/board/omap3/beagle/beagle.c
index d5ec63e..cc6e20d 100644
--- a/board/omap3/beagle/beagle.c
+++ b/board/omap3/beagle/beagle.c
@@ -186,7 +186,7 @@ int board_init(void)
gpmc_init(); /* in SRAM or SDRAM, finish GPMC */
/* board id for Linux */
- gd->bd->bi_arch_number = MACH_TYPE_OMAP3_BEAGLE;
+ gd->bd->bi_arch_number = 2393;
/* boot param addr */
gd->bd->bi_boot_params = (OMAP34XX_SDRC_CS0 + 0x100);
--
1.6.6.1

View File

@@ -1,17 +0,0 @@
require u-boot.inc
FILESPATHPKG =. "u-boot-psp-git:"
COMPATIBLE_MACHINE = "am387x-evm|am389x-evm|c6a814x-evm|c6a816x-evm|dm814x-evm"
SRC_URI = "git://arago-project.org/git/projects/u-boot-omap3.git;branch=${BRANCH};protocol=git"
BRANCH_ti814x = "ti81xx-master"
SRCREV_pn-${PN}_ti814x = "5fcf46a405fe8e8a59a04d3cebdafd39ac0c4bd0"
LIC_FILES_CHKSUM_pn-${PN}_ti814x = "file://COPYING;md5=4c6cde5df68eff615d36789dc18edd3b"
BRANCH_ti816x = "ti81xx-master"
SRCREV_pn-${PN}_ti816x = "5fcf46a405fe8e8a59a04d3cebdafd39ac0c4bd0"
LIC_FILES_CHKSUM_pn-${PN}_ti816x = "file://COPYING;md5=4c6cde5df68eff615d36789dc18edd3b"
S = "${WORKDIR}/git"

Some files were not shown because too many files have changed in this diff Show More