Remove USB/serial support: network-only protocol, drop tinyusb and PICOBOOT
This commit is contained in:
@@ -23,14 +23,12 @@ type target struct {
|
||||
}
|
||||
|
||||
type targetFlags struct {
|
||||
usb string
|
||||
udp string
|
||||
iface string
|
||||
}
|
||||
|
||||
func addTargetFlags(fs *flag.FlagSet) *targetFlags {
|
||||
tf := &targetFlags{}
|
||||
fs.StringVar(&tf.usb, "usb", "", "comma-separated USB serial devices")
|
||||
fs.StringVar(&tf.udp, "udp", "", "comma-separated UDP IP addresses")
|
||||
fs.StringVar(&tf.iface, "iface", "", "network interface for multicast discovery")
|
||||
return tf
|
||||
@@ -39,17 +37,6 @@ func addTargetFlags(fs *flag.FlagSet) *targetFlags {
|
||||
func (tf *targetFlags) connect(timeout time.Duration) ([]target, error) {
|
||||
var targets []target
|
||||
|
||||
if tf.usb != "" {
|
||||
for _, dev := range strings.Split(tf.usb, ",") {
|
||||
dev = strings.TrimSpace(dev)
|
||||
c, err := client.NewSerial(dev, timeout)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("usb %s: %w", dev, err)
|
||||
}
|
||||
targets = append(targets, target{dev, c})
|
||||
}
|
||||
}
|
||||
|
||||
if tf.udp != "" {
|
||||
for _, addr := range strings.Split(tf.udp, ",") {
|
||||
addr = strings.TrimSpace(addr)
|
||||
@@ -84,21 +71,6 @@ func (tf *targetFlags) connect(timeout time.Duration) ([]target, error) {
|
||||
}
|
||||
}
|
||||
|
||||
if tf.usb == "" && tf.udp == "" && tf.iface == "" {
|
||||
devs, err := client.ListSerial()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
for _, dev := range devs {
|
||||
c, err := client.NewSerial(dev, timeout)
|
||||
if err != nil {
|
||||
slog.Warn("connect error", "dev", dev, "err", err)
|
||||
continue
|
||||
}
|
||||
targets = append(targets, target{dev, c})
|
||||
}
|
||||
}
|
||||
|
||||
if len(targets) == 0 {
|
||||
return nil, fmt.Errorf("no devices found")
|
||||
}
|
||||
@@ -113,7 +85,7 @@ func closeTargets(targets []target) {
|
||||
|
||||
func main() {
|
||||
if len(os.Args) < 2 {
|
||||
fmt.Fprintf(os.Stderr, "usage: picomap <command> [args...]\n\ncommands:\n info\n flash-status\n load\n log\n reboot\n picoboot\n test\n")
|
||||
fmt.Fprintf(os.Stderr, "usage: picomap <command> [args...]\n\ncommands:\n info\n flash-status\n load\n log\n reboot\n test\n")
|
||||
os.Exit(1)
|
||||
}
|
||||
cmd := os.Args[1]
|
||||
@@ -131,12 +103,10 @@ func main() {
|
||||
err = cmdLog(args)
|
||||
case "reboot":
|
||||
err = cmdReboot(args)
|
||||
case "picoboot":
|
||||
err = cmdPICOBOOT(args)
|
||||
case "test":
|
||||
err = cmdTestGroup(args)
|
||||
default:
|
||||
fmt.Fprintf(os.Stderr, "usage: picomap <command> [args...]\n\ncommands:\n info\n flash-status\n load\n log\n reboot\n picoboot\n test\n")
|
||||
fmt.Fprintf(os.Stderr, "usage: picomap <command> [args...]\n\ncommands:\n info\n flash-status\n load\n log\n reboot\n test\n")
|
||||
os.Exit(1)
|
||||
}
|
||||
if err != nil {
|
||||
@@ -253,27 +223,6 @@ func cmdReboot(args []string) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func cmdPICOBOOT(args []string) error {
|
||||
fs := flag.NewFlagSet("picoboot", flag.ExitOnError)
|
||||
tf := addTargetFlags(fs)
|
||||
fs.Parse(args)
|
||||
|
||||
targets, err := tf.connect(500 * time.Millisecond)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer closeTargets(targets)
|
||||
|
||||
for _, t := range targets {
|
||||
if err := t.client.PICOBOOT(); err != nil {
|
||||
slog.Error("picoboot error", "via", t.name, "err", err)
|
||||
continue
|
||||
}
|
||||
slog.Info("picoboot", "via", t.name)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func boardSerial(id [8]byte) string {
|
||||
return fmt.Sprintf("%02X%02X%02X%02X%02X%02X%02X%02X",
|
||||
id[0], id[1], id[2], id[3], id[4], id[5], id[6], id[7])
|
||||
|
||||
Reference in New Issue
Block a user