From fbab6c28e763dfd0aeb0765133ffc4ebc88d4fc9 Mon Sep 17 00:00:00 2001 From: maxgerhardt <maximilian.gerhardt@rub.de> Date: Sun, 18 Jun 2023 10:40:05 +0200 Subject: [PATCH] Add -c COM port argument --- minichlink/ardulink.c | 20 +++++++++--------- minichlink/minichlink.c | 42 ++++++++++++++++++++++++++++++++++---- minichlink/minichlink.exe | Bin 66560 -> 71680 bytes 3 files changed, 48 insertions(+), 14 deletions(-) diff --git a/minichlink/ardulink.c b/minichlink/ardulink.c index 96c0d93..82284c6 100644 --- a/minichlink/ardulink.c +++ b/minichlink/ardulink.c @@ -4,7 +4,7 @@ #include "serial_dev.h" #include "minichlink.h" -void * TryInit_Ardulink(void); +void * TryInit_Ardulink(const init_hints_t*); static int ArdulinkWriteReg32(void * dev, uint8_t reg_7_bit, uint32_t command); static int ArdulinkReadReg32(void * dev, uint8_t reg_7_bit, uint32_t * commandresp); @@ -91,7 +91,7 @@ int ArdulinkTargetReset(void * dev, int reset) { return 0; } -void * TryInit_Ardulink(void) +void * TryInit_Ardulink(const init_hints_t* hints) { ardulink_ctx_t *ctx; char first; @@ -102,14 +102,14 @@ void * TryInit_Ardulink(void) } const char* serial_to_open = NULL; - // This is extremely crude. We receive no parameters, yet we have - // to find the correct serial port for the programmer. - // since the init is executed before the command line parameters are parsed, - // we don't get the value of any "--serial-port=..." switch at all. - // We at least to make it usable by using an environment variable. - // Optimally, we would restructure the init function to include init hints - // or try to enumerate all existing serial ports for our Ardulink programmer. - if ((serial_to_open = getenv("MINICHLINK_SERIAL")) == NULL) { + // Get the serial port that shall be opened. + // First, if we have a directly set serial port hint, use that. + // Otherwise, use the environment variable MINICHLINK_SERIAL. + // If that also doesn't exist, fall back to the default serial. + if (hints && hints->serial_port != NULL) { + serial_to_open = hints->serial_port; + } + else if ((serial_to_open = getenv("MINICHLINK_SERIAL")) == NULL) { // fallback serial_to_open = DEFAULT_SERIAL_NAME; } diff --git a/minichlink/minichlink.c b/minichlink/minichlink.c index 24a8bfa..6636927 100644 --- a/minichlink/minichlink.c +++ b/minichlink/minichlink.c @@ -8,6 +8,7 @@ #include <stdio.h> #include <string.h> #include <stdlib.h> +#include <getopt.h> #include "minichlink.h" #include "../ch32v003fun/ch32v003fun.h" @@ -17,7 +18,6 @@ void Sleep(uint32_t dwMilliseconds); #include <unistd.h> #endif - static int64_t StringToMemoryAddress( const char * number ) __attribute__((used)); static void StaticUpdatePROGBUFRegs( void * dev ) __attribute__((used)); static int InternalUnlockBootloader( void * dev ) __attribute__((used)); @@ -26,7 +26,7 @@ int DefaultReadBinaryBlob( void * dev, uint32_t address_to_read_from, uint32_t r void TestFunction(void * v ); struct MiniChlinkFunctions MCF; -void * MiniCHLinkInitAsDLL( struct MiniChlinkFunctions ** MCFO ) +void * MiniCHLinkInitAsDLL( struct MiniChlinkFunctions ** MCFO, const init_hints_t* init_hints ) { void * dev = 0; if( (dev = TryInit_WCHLinkE()) ) @@ -45,7 +45,7 @@ void * MiniCHLinkInitAsDLL( struct MiniChlinkFunctions ** MCFO ) { fprintf( stderr, "Found B003Fun Bootloader\n" ); } - else if ((dev = TryInit_Ardulink())) + else if ((dev = TryInit_Ardulink(init_hints))) { fprintf( stderr, "Found Ardulink Programmer\n" ); } @@ -63,6 +63,26 @@ void * MiniCHLinkInitAsDLL( struct MiniChlinkFunctions ** MCFO ) return dev; } +void parse_possible_init_hints(int argc, char **argv, init_hints_t *hints) +{ + if (!hints) + return; + int c; + opterr = 0; + /* we're only interested in the value for the COM port, given in a -c parameter */ + while ((c = getopt(argc, argv, "c:")) != -1) + { + switch (c) + { + case 'c': + // we can use the pointer as-is because it points in our + // argv array and that is stable. + hints->serial_port = optarg; + break; + } + } +} + #if !defined( MINICHLINK_AS_LIBRARY ) && !defined( MINICHLINK_IMPORT ) int main( int argc, char ** argv ) { @@ -70,7 +90,10 @@ int main( int argc, char ** argv ) { goto help; } - void * dev = MiniCHLinkInitAsDLL( 0 ); + init_hints_t hints; + memset(&hints, 0, sizeof(hints)); + parse_possible_init_hints(argc, argv, &hints); + void * dev = MiniCHLinkInitAsDLL( 0, &hints ); if( !dev ) { fprintf( stderr, "Error: Could not initialize any supported programmers\n" ); @@ -148,6 +171,16 @@ keep_going: else goto unimplemented; break; + case 'c': + // COM port argument already parsed previously + // we still need to skip the next argument + iarg+=1; + if( iarg >= argc ) + { + fprintf( stderr, "-c argument (COM port) required 2 arguments\n" ); + goto unimplemented; + } + break; case 'u': if( MCF.Unbrick ) MCF.Unbrick( dev ); @@ -557,6 +590,7 @@ help: fprintf( stderr, " -5 Enable 5V\n" ); fprintf( stderr, " -t Disable 3.3V\n" ); fprintf( stderr, " -f Disable 5V\n" ); + fprintf( stderr, " -c [serial port for Ardulink, try /dev/ttyACM0 or COM11 etc]\n" ); fprintf( stderr, " -u Clear all code flash - by power off (also can unbrick)\n" ); fprintf( stderr, " -b Reboot out of Halt\n" ); fprintf( stderr, " -e Resume from halt\n" ); diff --git a/minichlink/minichlink.exe b/minichlink/minichlink.exe index ed694180a0929dbe7e886cae40bec8297efda795..04692974c75efa7a78c2f956226a31c8c3f24050 100644 GIT binary patch delta 31410 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 DI6T3& delta 26252 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 WTjRH;Y(?tyJ^%34P13E7bpBuZ0v<R3 -- GitLab