분류 전체보기
-
[리눅스 커널] Interrupt - High-level flow irq handlerLinux/kernel 2023. 12. 27. 13:42
글의 참고 - https://linux-kernel-labs.github.io/refs/heads/master/lectures/interrupts.html - https://docs.kernel.org/core-api/genericirq.html - http://www.wowotech.net/irq_subsystem/High_level_irq_event_handler.html 글의 전제 - 밑줄로 작성된 글은 강조 표시를 의미한다. - 그림 출처는 항시 그림 아래에 표시했다. 글의 내용 - Overview " peripherals 이 interrupt 를 발생시키면, 대략적인 interrupt handling flow 는 다음과 같다. 참고로, 이 글에서는 주로 (3) 단계에 대해 다룰 것이다. 1. i..
-
[리눅스 커널] interrupt - IRQ numberLinux/kernel 2023. 12. 27. 01:45
글의 참고 - https://docs.kernel.org/core-api/genericirq.html - https://docs.kernel.org/core-api/irq/concepts.html - https://www.kernel.org/doc/html/next/core-api/irq/irq-domain.html - http://www.wowotech.net/irq_subsystem/interrupt_descriptor.html - https://lwn.net/Articles/380931/ - https://linux-kernel-labs.github.io/refs/heads/master/lectures/interrupts.html - https://stackoverflow.com/questions/..
-
[리눅스 커널] Interrupt - GICv2 part 2Linux/kernel 2023. 12. 24. 14:47
글의 참고 - DEN0013D_cortex_a_series_PG.pdf - (Interrupt Hanling - 12.2 The Generic Interrupt Controller p12-7) - CoreLink GIC-400 Generic Interrupt Controller Technical Reference Manual - ARM Generic Interrupt Controller Architecture Specification Version 2.0 - https://zhuanlan.zhihu.com/p/586238925 - http://www.wowotech.net/irq_subsystem/gic_driver.html - https://www.elecfans.com/d/2260663.html - ..
-
[전자공학] GPIO mode공학/전자공학 2023. 12. 17. 00:46
글의 참고 - https://wiki.st.com/stm32mcu/wiki/Getting_started_with_GPIO#bs-sidebar-toc - https://blog.stratifylabs.dev/device/2013-10-21-Understanding-Microcontroller-Pin-Input-Output-Modes/ - https://elinux.org/images/b/b6/Pin_Control_Subsystem_Overview.pdf - https://embetronicx.com/tutorials/tech_devices/understanding-the-microcontroller-gpio-gpio-working-explained/ - https://suketushah.medium.com..
-
[컴퓨터구조] SoC공학/컴퓨터구조 2023. 12. 10. 19:48
글의 참고 - Cortex-A9 Technical Reference Manual - Cortex-A9 MPCore Technical Reference Manual 글의 전제 - 밑줄로 작성된 글은 강조 표시를 의미한다. - 그림 출처는 항시 그림 아래에 표시했다. 글의 내용 - Overview " `Cortex-A9 Technical Reference Manual` 문서에서는 Cortex-A9 Processor 를 설계하는데 2 가지 방법을 제시한다. 1. Uni-processor 2. Multi-Core processor(최대 4개 까지 가능) " 아래 구조를 보면 알 수 있겠지만, Cortex-A9 이라는 것은 하나의 Processor 를 의미한다. 즉, Cortex-A9 자체가 SoC 는 아니다. ..
-
[리눅스 커널] DMA - cache consistencyLinux/kernel 2023. 12. 6. 12:37
글의 참고 - https://zhuanlan.zhihu.com/p/109919756 - https://zhuanlan.zhihu.com/p/508439396 - https://zhuanlan.zhihu.com/p/515450647 - http://15418.courses.cs.cmu.edu/spring2013/article/21 - https://blog.csdn.net/Adrian503/article/details/115536886 글의 전제 - 밑줄로 작성된 글은 강조 표시를 의미한다. - 그림 출처는 항시 그림 아래에 표시했다. 글의 내용 - Overview " DMA 와 Cache 의 관계는 뭘까? 이걸 이해하기 위해서는 예를 하나 들어보자. 일반적으로, CPU 에 수정된 데이터들은 메모리가 아닌..
-
[리눅스 커널] pinctrl - overviewLinux/kernel 2023. 12. 4. 01:11
글의 참고 - http://www.wowotech.net/gpio_subsystem/io-port-control.html 글의 전제 - 밑줄로 작성된 글은 강조 표시를 의미한다. - 그림 출처는 항시 그림 아래에 표시했다. 글의 내용 - Overview " embedded system engineer 로서 처음 일을 시작했을 때, 맡는 작업들은 대개 GPIO, button, LED 컨트롤 같은 작업들이다. 이러한 작업들의 공통점은 `쉬워보인다` 는 점이다. 물론, 앞에 언급된 디바이스들에 대한 드라이버가 이미 작성되어 있다면 `쉽다` 라는 표현이 맞을것이다. 그러나, 디바이스 드라이버를 작성해야 한다면 그게 어떤 OS 라 할지라도 혹은 bare metal 및 firmware 라면 얘기가 달라진다. 리눅스..
-
[리눅스 커널] DMA - overviewLinux/kernel 2023. 12. 1. 21:33
글의 참고 - Linux Device Drivers, Third Edition - https://docs.kernel.org/core-api/dma-api-howto.html - https://www.jianshu.com/p/e1b622234d13 - http://www.wowotech.net/linux_kenrel/dma_engine_overview.html - https://www.bilibili.com/read/cv21554003/ - http://www.wowotech.net/linux_kenrel/dma_engine_api.html - http://www.wowotech.net/memory_management/DMA-Mapping-api.html - https://blog.csdn.net/wei..