Artwork

Контент предоставлен Adafruit Industries. Весь контент подкастов, включая выпуски, графику и описания подкастов, загружается и предоставляется непосредственно Adafruit Industries или его партнером по платформе подкастов. Если вы считаете, что кто-то использует вашу работу, защищенную авторским правом, без вашего разрешения, вы можете выполнить процедуру, описанную здесь https://ru.player.fm/legal.
Player FM - приложение для подкастов
Работайте офлайн с приложением Player FM !

Deep Dive w/Scott: SVD and Interrupts

2:01:19
 
Поделиться
 

Manage episode 304200672 series 1242341
Контент предоставлен Adafruit Industries. Весь контент подкастов, включая выпуски, графику и описания подкастов, загружается и предоставляется непосредственно Adafruit Industries или его партнером по платформе подкастов. Если вы считаете, что кто-то использует вашу работу, защищенную авторским правом, без вашего разрешения, вы можете выполнить процедуру, описанную здесь https://ru.player.fm/legal.
Scott covers progress on the Cortex A work for Raspberry Pi. He's been working on expanding the system view description (SVD) files and learning all about the Generic Interrupt Controller (GIC400 / GICv2). He'll also answer any questions folks have. Visit the Adafruit shop online - http://www.adafruit.com Chat with me and lot of others on the Adafruit Discord at https://adafru.it/discord. Deep Dive happens every week. Normally Fridays at 2pm Pacific but occasionally shifted to Thursday at 2pm. Typically goes for two hours or more. Questions are welcome. 0:00 Getting started 0:02:00 Hello and Housekeeping 0:04:42 Unexpected Makers Feather S2 - https://unexpectedmaker.com/ 0:05:30 Today’s topic deep dive Raspberry Pi 0:06:30 Educational/Work Background summary 0:10:20 Getting started in Board Design - KiCad, Oshpark - https://www.kicad.org/ 0:12:00 Working on google maps, reasons for leaving 0:13:35 What was the most important thing learned at Google? 0:14:45 Getting started with surface mount 0:16:15 Flux and soldering, Pin Headers - https://www.adafruit.com/product/2830 0:20:30 Adafruit Collin's Lab soldering videos - https://www.youtube.com/playlist?list=PLjF7R1fz_OOXyxiYQWEX4OZga9c7jrw5q 0:21:05 Hand soldering, vs. SMD for dotstars 0:22:17 Looking at the ‘new’ Pi Development board 40-Pin / external JTAG / SWD adapter - https://oshpark.com/shared_projects/fBq76nP9 0:24:22 Raspberry Pi CM4 0:25:37 USB to UART external board 0:26:45 External connector and chickadee logo ( on oshpark ) 0:29:35 Oshpark, PCB shopper (dot com) 0:31:00 Chickadee.tech web page and After Dark theme 0:32:12 Two weeks of progress on RPi 0:32:32 Troubleshooting 4 layer boards 0:33:25 adafruit/samd-peripherals github page - SAMD21 / SAMD51 0:33:52 adafruit / Broadcom peripherals page - https://github.com/adafruit/broadcom-peripherals 0:35:55 Recap system on chips ( SAM D21 block diagram ) 0:38:00 .SVD ( arm ) vs flash.xml ? 0:38:46 Memory Mapped I/O and Product (memory) Mapping 0:40:40 SVD file used for debugging and generate C code 0:42:00 RPi Desktop/workspace setup explained 0:44:00 Debug output and open OCD 0:44:35 Gdbstub PyCortexMDebug - https://github.com/bnahill/PyCortexMDebug 0:46:30 “svd” commands 0:50:24 Using KDE console terminal for tiling “management” 0:51:00 IRQ’s and interrupts 0:53:24 Need USB Interrupts to get TinyUSB to work 0:54:00 PPI vs SPI 0:57:28 Would interrupts drive support to multicore 0:58:55 Do we need delays to support interrupts? (no) 1:00:50 Can you have delays in an interrupt? ( don’t want to ) 1:02:10 SVDcon (sp) converted table 1:02:39 Python generated jinja macros (svd tool) 1:07:50 GPIO alternate functions - moving to get interrupts working 1:08:40 USB initialization need to be powered on ( see vcmailbox ? ) 1:09:40 How does the interrupt handler work - assembly code 1:10:10 saving and restoring state in interrupts (macro) 1:11:30 handling invalid interrupt entries 1:12:25 CPU exception top level code 1:13:14 handle IRQ 1:14:15 svd USB_OTG_GLOBAL / examine the registers 1:17:02 next thing down the line, the interrupt controller 1:20:30 Lady Ada on the screen! 1:32:23 - after some good advice, goodbye 1:35:20 ARM provided svd conv (sp) 1:38:52 GIC 400 1:40:53 the GIC 400 overview diagram 1:43:20 Interrupt “1023” magic number - in a spurious interrupt 1:46:42 Interrupt handling state machine diagram Figure 3-1 1:47:55 Distributor register descriptions - GICD_ITARGETS 1:49:00 Old show notes - https://github.com/adafruit/deep-dive-notes/ 1:51:16 Reviewing interrupt priority fields 1:54:20 interrupts are all zero 1:55:00 Try setting priority to one, as an experiment 1:57:00 restart with new code - gdb says in fifo-read 1:58:34 Wrap-up 1:59:25 Next week next Friday 2:00:09 cat-cam ----------------------------------------- LIVE CHAT IS HERE! http://adafru.it/discord Adafruit on Instagram: https://www.instagram.com/adafruit Subscribe to Adafruit on YouTube: http://adafru.it/subscribe New tutorials on the Adafruit Learning System: http://learn.adafruit.com/ -----------------------------------------
  continue reading

4296 эпизодов

Artwork
iconПоделиться
 
Manage episode 304200672 series 1242341
Контент предоставлен Adafruit Industries. Весь контент подкастов, включая выпуски, графику и описания подкастов, загружается и предоставляется непосредственно Adafruit Industries или его партнером по платформе подкастов. Если вы считаете, что кто-то использует вашу работу, защищенную авторским правом, без вашего разрешения, вы можете выполнить процедуру, описанную здесь https://ru.player.fm/legal.
Scott covers progress on the Cortex A work for Raspberry Pi. He's been working on expanding the system view description (SVD) files and learning all about the Generic Interrupt Controller (GIC400 / GICv2). He'll also answer any questions folks have. Visit the Adafruit shop online - http://www.adafruit.com Chat with me and lot of others on the Adafruit Discord at https://adafru.it/discord. Deep Dive happens every week. Normally Fridays at 2pm Pacific but occasionally shifted to Thursday at 2pm. Typically goes for two hours or more. Questions are welcome. 0:00 Getting started 0:02:00 Hello and Housekeeping 0:04:42 Unexpected Makers Feather S2 - https://unexpectedmaker.com/ 0:05:30 Today’s topic deep dive Raspberry Pi 0:06:30 Educational/Work Background summary 0:10:20 Getting started in Board Design - KiCad, Oshpark - https://www.kicad.org/ 0:12:00 Working on google maps, reasons for leaving 0:13:35 What was the most important thing learned at Google? 0:14:45 Getting started with surface mount 0:16:15 Flux and soldering, Pin Headers - https://www.adafruit.com/product/2830 0:20:30 Adafruit Collin's Lab soldering videos - https://www.youtube.com/playlist?list=PLjF7R1fz_OOXyxiYQWEX4OZga9c7jrw5q 0:21:05 Hand soldering, vs. SMD for dotstars 0:22:17 Looking at the ‘new’ Pi Development board 40-Pin / external JTAG / SWD adapter - https://oshpark.com/shared_projects/fBq76nP9 0:24:22 Raspberry Pi CM4 0:25:37 USB to UART external board 0:26:45 External connector and chickadee logo ( on oshpark ) 0:29:35 Oshpark, PCB shopper (dot com) 0:31:00 Chickadee.tech web page and After Dark theme 0:32:12 Two weeks of progress on RPi 0:32:32 Troubleshooting 4 layer boards 0:33:25 adafruit/samd-peripherals github page - SAMD21 / SAMD51 0:33:52 adafruit / Broadcom peripherals page - https://github.com/adafruit/broadcom-peripherals 0:35:55 Recap system on chips ( SAM D21 block diagram ) 0:38:00 .SVD ( arm ) vs flash.xml ? 0:38:46 Memory Mapped I/O and Product (memory) Mapping 0:40:40 SVD file used for debugging and generate C code 0:42:00 RPi Desktop/workspace setup explained 0:44:00 Debug output and open OCD 0:44:35 Gdbstub PyCortexMDebug - https://github.com/bnahill/PyCortexMDebug 0:46:30 “svd” commands 0:50:24 Using KDE console terminal for tiling “management” 0:51:00 IRQ’s and interrupts 0:53:24 Need USB Interrupts to get TinyUSB to work 0:54:00 PPI vs SPI 0:57:28 Would interrupts drive support to multicore 0:58:55 Do we need delays to support interrupts? (no) 1:00:50 Can you have delays in an interrupt? ( don’t want to ) 1:02:10 SVDcon (sp) converted table 1:02:39 Python generated jinja macros (svd tool) 1:07:50 GPIO alternate functions - moving to get interrupts working 1:08:40 USB initialization need to be powered on ( see vcmailbox ? ) 1:09:40 How does the interrupt handler work - assembly code 1:10:10 saving and restoring state in interrupts (macro) 1:11:30 handling invalid interrupt entries 1:12:25 CPU exception top level code 1:13:14 handle IRQ 1:14:15 svd USB_OTG_GLOBAL / examine the registers 1:17:02 next thing down the line, the interrupt controller 1:20:30 Lady Ada on the screen! 1:32:23 - after some good advice, goodbye 1:35:20 ARM provided svd conv (sp) 1:38:52 GIC 400 1:40:53 the GIC 400 overview diagram 1:43:20 Interrupt “1023” magic number - in a spurious interrupt 1:46:42 Interrupt handling state machine diagram Figure 3-1 1:47:55 Distributor register descriptions - GICD_ITARGETS 1:49:00 Old show notes - https://github.com/adafruit/deep-dive-notes/ 1:51:16 Reviewing interrupt priority fields 1:54:20 interrupts are all zero 1:55:00 Try setting priority to one, as an experiment 1:57:00 restart with new code - gdb says in fifo-read 1:58:34 Wrap-up 1:59:25 Next week next Friday 2:00:09 cat-cam ----------------------------------------- LIVE CHAT IS HERE! http://adafru.it/discord Adafruit on Instagram: https://www.instagram.com/adafruit Subscribe to Adafruit on YouTube: http://adafru.it/subscribe New tutorials on the Adafruit Learning System: http://learn.adafruit.com/ -----------------------------------------
  continue reading

4296 эпизодов

Όλα τα επεισόδια

×
 
Loading …

Добро пожаловать в Player FM!

Player FM сканирует Интернет в поисках высококачественных подкастов, чтобы вы могли наслаждаться ими прямо сейчас. Это лучшее приложение для подкастов, которое работает на Android, iPhone и веб-странице. Зарегистрируйтесь, чтобы синхронизировать подписки на разных устройствах.

 

Краткое руководство