atsam: Add support for CAN on atsame70 (#6366)

Signed-off-by: Luke Vuksta <wulfstawulfsta@gmail.com>
This commit is contained in:
Luke V
2023-10-19 13:01:59 -04:00
committed by GitHub
parent b1f597c550
commit dd01e99c59
6 changed files with 359 additions and 5 deletions

View File

@@ -5,6 +5,7 @@
// This file may be distributed under the terms of the GNU GPLv3 license.
#include "generic/irq.h" // irq_disable
#include "generic/canserial.h" // canserial_set_uuid
#include "generic/usb_cdc.h" // usb_fill_serial
#include "generic/usbstd.h" // usb_string_descriptor
#include "internal.h" // EFC0
@@ -61,7 +62,7 @@ read_chip_id(uint32_t *id)
void
chipid_init(void)
{
if (!CONFIG_USB_SERIAL_NUMBER_CHIPID)
if (!CONFIG_USB_SERIAL_NUMBER_CHIPID && !CONFIG_CANBUS)
return;
uint32_t id[4];
@@ -69,6 +70,10 @@ chipid_init(void)
read_chip_id(id);
irq_enable();
usb_fill_serial(&cdc_chipid.desc, ARRAY_SIZE(cdc_chipid.data), id);
if (CONFIG_USB_SERIAL_NUMBER_CHIPID)
usb_fill_serial(&cdc_chipid.desc, ARRAY_SIZE(cdc_chipid.data), id);
if (CONFIG_CANBUS)
canserial_set_uuid((void*)id, CHIP_UID_LEN);
}
DECL_INIT(chipid_init);