am33x-cm3: add FW for suspend/resume

Without this firmware, the beaglebone won't be able to suspend/resume
correctly.

[Peter: tweak Config.in, rename init script, wrap long lines]
Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Anders Darander 2013-05-14 10:09:51 +00:00 committed by Peter Korsgaard
parent 0012b7dcdb
commit 97fbd80efe
4 changed files with 44 additions and 0 deletions

View file

@ -213,6 +213,7 @@ endmenu
menu "Hardware handling"
menu "Misc devices firmwares"
source "package/am33x-cm3/Config.in"
source "package/b43-firmware/Config.in"
source "package/firmware-imx/Config.in"
source "package/linux-firmware/Config.in"

View file

@ -0,0 +1,7 @@
config BR2_PACKAGE_AM33X_CM3
bool "am33x-cm3"
depends on BR2_arm # only relevant for TI am335x
help
Cortex-M3 binary blob for suspend-resume on am335x
http://arago-project.org/git/projects/am33x-cm3.git

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

@ -0,0 +1,30 @@
#############################################################
#
# am33x-cm3
#
#############################################################
AM33X_CM3_VERSION = AM335xPSP_04.06.00.10-rc1
AM33X_CM3_SITE = http://arago-project.org/git/projects/am33x-cm3.git
AM33X_CM3_SITE_METHOD = git
AM33X_CM3_LICENSE = TI Publicly Available Software License
AM33X_CM3_LICENSE_FILES = License.txt
# The build command below will use the standard cross-compiler (normally
# build for Cortex-A8, to build the FW for the Cortex-M3.
define AM33X_CM3_BUILD_CMDS
$(MAKE) CC="$(TARGET_CC)" CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) all
endef
# Not all of the firmware files are used
define AM33X_CM3_INSTALL_TARGET_CMDS
$(INSTALL) -m 0644 -D $(@D)/bin/am335x-pm-firmware.bin \
$(TARGET_DIR)/lib/firmware/am335x-pm-firmware.bin
endef
define AM33X_CM3_INSTALL_INIT_SYSV
$(INSTALL) -m 0755 -D package/am33x-cm3/S93-am335x-pm-firmware-load \
$(TARGET_DIR)/etc/init.d/S93-am335x-pm-firmware-load
endef
$(eval $(generic-package))