samd21,samd51: fix usbcdc initialization when -serial=uart (#2631)

machine/samd21,samd51: fix usbcdc initialization when -serial=uart by using machine.USB.Configured()
Этот коммит содержится в:
sago35 2022-03-10 20:32:19 +09:00 коммит произвёл GitHub
родитель ccbe03795a
коммит a1b4eafa07
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
4 изменённых файлов: 22 добавлений и 0 удалений

Просмотреть файл

@ -1742,6 +1742,7 @@ type USBCDC struct {
waitTxc bool
waitTxcRetryCount uint8
sent bool
configured bool
}
var (
@ -1923,6 +1924,13 @@ func (usbcdc *USBCDC) Configure(config UARTConfig) {
// enable IRQ
intr := interrupt.New(sam.IRQ_USB, handleUSB)
intr.Enable()
usbcdc.configured = true
}
// Configured returns whether usbcdc is configured or not.
func (usbcdc *USBCDC) Configured() bool {
return usbcdc.configured
}
func handlePadCalibration() {

Просмотреть файл

@ -1965,6 +1965,7 @@ type USBCDC struct {
waitTxc bool
waitTxcRetryCount uint8
sent bool
configured bool
}
var (
@ -2149,6 +2150,13 @@ func (usbcdc *USBCDC) Configure(config UARTConfig) {
interrupt.New(sam.IRQ_USB_SOF_HSOF, handleUSBIRQ).Enable()
interrupt.New(sam.IRQ_USB_TRCPT0, handleUSBIRQ).Enable()
interrupt.New(sam.IRQ_USB_TRCPT1, handleUSBIRQ).Enable()
usbcdc.configured = true
}
// Configured returns whether usbcdc is configured or not.
func (usbcdc *USBCDC) Configured() bool {
return usbcdc.configured
}
func handlePadCalibration() {

Просмотреть файл

@ -30,6 +30,9 @@ func init() {
// connect to USB CDC interface
machine.Serial.Configure(machine.UARTConfig{})
if !machine.USB.Configured() {
machine.USB.Configure(machine.UARTConfig{})
}
}
func putchar(c byte) {

Просмотреть файл

@ -30,6 +30,9 @@ func init() {
// connect to USB CDC interface
machine.Serial.Configure(machine.UARTConfig{})
if !machine.USB.Configured() {
machine.USB.Configure(machine.UARTConfig{})
}
}
func putchar(c byte) {