stm32flash under FreeBSD?

Ian Lepore ian at FreeBSD.org
Wed Sep 18 17:03:10 UTC 2013


On Wed, 2013-09-18 at 10:12 +0200, Torfinn Ingolfsen wrote:
> I compiled stm32flash[1] under FreeBSD 8.4-STABLE:
> tingo at kg-core1$ uname -a
> FreeBSD kg-core1.kg4.no 8.4-STABLE FreeBSD 8.4-STABLE #0 r253646: Thu Jul 25 10:12:31 UTC 2013
>      root at kg-core1.kg4.no:/usr/obj/usr/src/sys/GENERIC  amd64
> 
> The resulting binary appears to work:
> tingo at kg-core1$ ./stm32flash
> stm32flash - http://stm32flash.googlecode.com/
> 
> ERROR: Device not specified
> Usage: ./stm32flash [-bvngfhc] [-[rw] filename] /dev/ttyS0
>     -b rate        Baud rate (default 57600)
>     -r filename    Read flash to file
>     -w filename    Write flash to file
>     -u        Disable the flash write-protection
>     -e n        Only erase n pages before writing the flash
>     -v        Verify writes
>     -n count    Retry failed writes up to count times (default 10)
>     -g address    Start execution at specified address (0 = flash start)
>     -f        Force binary parser
>     -h        Show this help
>     -c        Resume the connection (don't send initial INIT)
>             *Baud rate must be kept the same as the first init*
>             This is useful if the reset fails
> 
> I have an STM32 board connected to cuaU0/ttyU0:
> tingo at kg-core1$ ls -l /dev/cuaU* /dev/ttyU*
> crw-rw----  1 uucp  operator    0, 159 Aug 18 17:26 /dev/cuaU0
> crw-rw----  1 uucp  operator    0, 160 Aug 18 17:26 /dev/cuaU0.init
> crw-rw----  1 uucp  operator    0, 161 Aug 18 17:26 /dev/cuaU0.lock
> crw-rw----  1 root  operator    0, 156 Aug 18 17:26 /dev/ttyU0
> crw-rw----  1 root  operator    0, 157 Aug 18 17:26 /dev/ttyU0.init
> crw-rw----  1 root  operator    0, 158 Aug 18 17:26 /dev/ttyU0.lock
> 
> and my user has access:
> tingo at kg-core1$ id
> uid=1001(tingo) gid=1001(users) groups=1001(users),0(wheel),5(operator)
> 
> Still it doesn't work:
> tingo at kg-core1$ ./stm32flash /dev/cuaU0
> stm32flash - http://stm32flash.googlecode.com/
> 
> /dev/cuaU0: No such file or directory
> tingo at kg-core1$ ./stm32flash /dev/ttyU0
> stm32flash - http://stm32flash.googlecode.com/
> 
> /dev/ttyU0: No such file or directory
> 
> t doesn't work as root either, so it doesn't look like a permissions problem.
> 
> BTW, stm32flash with the same board and cable works nicely under Linux. Any hints on what could be wrong? 
> 
> References:
> 1) http://code.google.com/p/stm32flash/

With a quick glance at the stm32flash source I'm not seeing anything
unusual about the way it handles the serial port.  It might be useful to
try "truss ./stm32flash /dev/cuaU0" and see what call it fails on and
what the call args are.

-- Ian




More information about the freebsd-arm mailing list