summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: e4c9c07)
raw | patch | inline | side by side (parent: e4c9c07)
author | Jai Luthra <j-luthra@ti.com> | |
Wed, 16 Feb 2022 15:01:56 +0000 (20:31 +0530) | ||
committer | Jai Luthra <j-luthra@ti.com> | |
Wed, 16 Feb 2022 15:01:56 +0000 (20:31 +0530) |
* Update documentation to reflect both phidget and RPS as options
* Add switch_type config to select power toggle mechanism: [phidget, rps]
* Add rps_dev config to select UART device of the rps
* Default to phidget if unspecified, for backcompat with older configs
Signed-off-by: Jai Luthra <j-luthra@ti.com>
* Add switch_type config to select power toggle mechanism: [phidget, rps]
* Add rps_dev config to select UART device of the rps
* Default to phidget if unspecified, for backcompat with older configs
Signed-off-by: Jai Luthra <j-luthra@ti.com>
k3-bootswitch/README.rst | patch | blob | history | |
k3-bootswitch/dfu-boot.sh | patch | blob | history | |
k3-bootswitch/k3bootswitch.conf | patch | blob | history |
index fee5328735135d609e5bc3881a47dbf827ddfd78..21d684600beb346ba47d5514b3d8b03e45d553cb 100644 (file)
--- a/k3-bootswitch/README.rst
+++ b/k3-bootswitch/README.rst
DFU boot is only supported from this port.
* UART cable should be connected from the main_uart to Linux PC
* Default switch settings should be for DFU boot mode
-* Power supply to the board should be connected via phidget USB relay
+* Power supply to the board should be connected via phidget USB relay,
+ or a UART Remote Power Switch.
Switch settings for DFU boot mode
* am65xx-evm settings => SW2 = 0000 0000 00 SW3 = 0001 0000 00 SW4 = 11
* am64xx-evm settings => SW2 = 1100 1010 SW3 = 0011 0000
-Phidget setup
--------------
+Power toggling setup
+--------------------
-This script uses phidget to control power for restarting the boards.
+This script uses phidget or RPS to control power for restarting the boards.
Since everyone has different configuration, the script parses the data from a
config file. You can copy the template as follows and then customize as required.
for main uart. (The one where all u-boot/SBL/kernel logs appear)
* Update the **switch** variable to reflect the correct switch number which
controls the power via phidget
-* If you have a different mechanism to power the board, write your own implementation
- for **toggle_power** function instead of the default phidget commands
-
-Limitatinos
+* Update the **switch_type** variable to select the mechanism for toggling
+ power of the board (phidget/rps)
+* If using RPS instead of phidget, also update the **rps_dev** variable with
+ the UART device of RPS.
+* If you have a different mechanism to power the board, write your own
+ implementation and update **toggle_util** variable in the script.
+
+Limitations
-----------
* Do not use this mechanism to measure any boot time numbers
index 248c5b913ca614b951a8782d015822d62ff9fef1..8614acbe67a81b59107eb8598d8e6d839edf1fea 100755 (executable)
import sys;
config = configparser.ConfigParser();
config.read('$configfile');
-print (config.get('$section','$param'));
+print (config['$section'].get('$param',''));
"
}
switch=`read_config $board switch`
ipaddr=`read_config core ipaddr`
+ switch_type=`read_config core switch_type`
+
+ # Select toggle utility (phidget or rps)
+ case $switch_type in
+ rps)
+ rps_dev=`read_config core rps_dev`
+ if [ -z "$rps_dev" ]; then
+ >&2 echo " >>>> ERROR: RPS uart device is missing in the config"
+ >&2 echo " >>>> Refer to the readme and set rps_dev = /dev/ttyUSB*"
+ exit 1
+ fi
+ toggle_util="$SCRIPTPATH/rps/rps.sh $rps_dev"
+ ;;
+ phidget | *)
+ toggle_util=phidget-switch
+ ;;
+ esac
}
toggle_power()
{
switch=$1
- echo " >>>> Toggling phidget..."
- (phidget-switch $switch 0 && sleep 1 && phidget-switch $switch 1 && sleep 0.1) >/dev/null 2>&1
+ echo " >>>> Toggling power..."
+ ($toggle_util $switch 0 && sleep 1 && $toggle_util $switch 1 && sleep 0.1) >/dev/null 2>&1
if [ $? -ne 0 ]; then
- echo -n "ERROR: phidget not found, Reboot manually and press enter.. "
+ echo -n "ERROR: toggle utility '$toggle_util' not found, Reboot manually and press enter.. "
read DUMMY
fi
}
index 59f3527deca840361d6ff0f0ce5cbded0db22dd2..5790c75329bb6f93d524f3cf18ac3d2238743674 100644 (file)
[core]
ipaddr = 10.24.xx.xxx
+ # Default switch type is Phidget
+ switch_type = phidget
+ # To use RPS comment the above, and uncomment the following
+ # with correct UART device
+ #switch_type = rps
+ #rps_dev = /dev/ttyUSB4
[j721e-evm]
switch = 0