diff options
Diffstat (limited to 'meta-ampere/meta-jade')
-rw-r--r-- | meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils.bbappend | 2 | ||||
-rw-r--r-- | meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils/ampere_driver_binder.sh | 29 |
2 files changed, 31 insertions, 0 deletions
diff --git a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils.bbappend b/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils.bbappend index d3f4f1a021..e3a63f1d64 100644 --- a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils.bbappend +++ b/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils.bbappend @@ -6,6 +6,7 @@ SRC_URI:append = " \ file://ampere_power_util.sh \ file://ampere_firmware_upgrade.sh \ file://ampere_flash_bios.sh \ + file://ampere_driver_binder.sh \ " do_install:append() { @@ -15,4 +16,5 @@ do_install:append() { install -m 0755 ${WORKDIR}/ampere_power_util.sh ${D}/${sbindir}/ install -m 0755 ${WORKDIR}/ampere_firmware_upgrade.sh ${D}/${sbindir}/ install -m 0755 ${WORKDIR}/ampere_flash_bios.sh ${D}/${sbindir}/ + install -m 0755 ${WORKDIR}/ampere_driver_binder.sh ${D}/${sbindir}/ } diff --git a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils/ampere_driver_binder.sh b/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils/ampere_driver_binder.sh new file mode 100644 index 0000000000..d41901968a --- /dev/null +++ b/meta-ampere/meta-jade/recipes-ampere/platform/ampere-utils/ampere_driver_binder.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +DELAY_BEFORE_BIND=5000000 +# Each driver include driver name and driver path +declare -a DRIVER_NAMEs=("2-004f" + "2-004e" + ) +# Driver path should include / at the end +declare -a DRIVER_PATHs=("/sys/bus/i2c/drivers/smpro-core/" + "/sys/bus/i2c/drivers/smpro-core/" + ) + +# get length of an array +arraylength=${#DRIVER_NAMEs[@]} + +usleep $DELAY_BEFORE_BIND +# use for loop to read all values and indexes +for (( i=0; i<"${arraylength}"; i++ )); +do + bindFile="${DRIVER_PATHs[$i]}bind" + driverDir="${DRIVER_PATHs[$i]}${DRIVER_NAMEs[$i]}" + if [ -d "$driverDir" ]; then + echo "Driver ${DRIVER_NAMEs[$i]} is already bound." + continue; + fi + echo "${DRIVER_NAMEs[$i]}" > "$bindFile" +done + +exit 0 |