나는() 및 ioremap() request_mem_region를 호출 드라이버 (D1) 및 ioremap() 같은 주소로를 호출 드라이버 (D2)를 쓰고 있어요에 호출합니다.
이 경우 어떻게됩니까?분할지도는 두 개의 리눅스 디바이스 드라이버
0
A
답변
0
두 드라이버가 예상대로 작동하지만 ioremap() 전에 request_mem_region()을 사용하여 다른 드라이버가 해당 실제 메모리 영역에 쓰기를하지 않도록하는 것이 좋습니다.
request_mem_region은 드라이버가 request_mem_region을 통해 같은 지역에 겹치는 전화를 다른 드라이버를 방지 할 I/O 주소의 범위를 사용하려고 커널을 알려줍니다.
이 메커니즘은 모든 종류의 매핑을 수행하지 않으며, 모든 커널 장치 드라이버가 훌륭해야한다는 사실에 의존하는 순수 예약 메커니즘이며 request_mem_region을 호출하고 반환 값을 확인해야하며 오류가 발생했습니다.
따라서 코드가 request_mem_region()없이 작동한다는 것은 완전히 논리적입니다.
관련 문제
- 1. 리눅스 디바이스 드라이버
- 2. 읽고 레지스터 리눅스 디바이스 드라이버
- 3. 바나나 파이와 디바이스 트리 용 리눅스 디바이스 드라이버
- 4. 리눅스 디바이스 드라이버 디버깅 용 GDB
- 5. 리눅스 디바이스 드라이버를위한 가장 쉬운 드라이버
- 6. 플랫폼 디바이스/드라이버 대 i2c 디바이스/드라이버
- 7. Linux 디바이스 드라이버 문자 디바이스 "서브 디렉토리"
- 8. Android 디바이스 드라이버 make node
- 9. 커널이나 디바이스 드라이버 프로그래밍
- 10. 지도 디바이스 드라이버 코드
- 11. 디바이스 드라이버 개발자가되는 법
- 12. 리눅스 디바이스 드라이버 프로그래밍에 대한 학술 프로젝트 제안
- 13. 이 가짜 문자 리눅스 디바이스 드라이버 작동하도록 도와주세요
- 14. 디바이스 드라이버 대/dev + glibc 인터페이스
- 15. Linux 디바이스 드라이버 기능 테스트
- 16. Linux 디바이스 드라이버 기본 사항
- 17. 리눅스 디바이스 드라이버의 레지스터 레벨 액세스
- 18. 리눅스 디바이스 드라이버에서 파일로 데이터 스트리밍
- 19. 리눅스 블록 디바이스 시뮬레이션 & 퓨즈
- 20. 리눅스 디바이스 드라이버에 간단한 프로그램
- 21. 리눅스 디바이스 드라이버 3 코드 컴파일 오류 및 리눅스 헤더 파일
- 22. 리눅스 장치 드라이버 프로그래머가되는 방법?
- 23. 리눅스 디바이스 드라이버의 I2C 주소 변경하기
- 24. 마이크로 컨트롤러 용 디바이스 드라이버 작성 (any)
- 25. Android 4.3 디바이스 드라이버 API 일치 오류
- 26. 리눅스 네트워크 드라이버 문제
- 27. 이해 리눅스 joydev 드라이버
- 28. 리눅스 네트워크 드라이버 --- net_device_ops
- 29. 리눅스 장치 드라이버 업데이트
- 30. 리눅스 네트워크 장치 드라이버
* "이 경우 어떻게됩니까?"* - 커널 규칙을 준수하지 않는 의도적으로 작성된 드라이버를 갖게됩니다. 그렇지 않으면 시스템이 예상대로 작동합니다. 코드 구조가 좋지 않습니다. 코드는 작동하지만 그것을 유지해야하는 사람들은 고통을 겪습니다. – sawdust