Jetson Nano direct hardware register access.
This is a library for accessing peripherals to the ARM A57 core. There are two methods of doing this.
-
The first method is using the file system method (/sys/class/gpio). This method isn't fast, and not the focus of this repository but, I will link sources to it because it is fairly uncomplicated and could be usefull to someone in the future. The following links are regarding this method:
-
The second method is via the directly accessing the registers. This method is faster because it skips the file system access overhead, but is much more involved. This method is the primary focus of this repository. The following are links which I deemed useful in this endevor:
- Direct register access via C++ post
- How to configure the device tree stuff
- DRA code examples from Valentis on github
- DRA code examples from Jwatte on github
- Updated way of modifying the DTB using a python script
- Jetson nano platform adatpation and bring up guide
- Where is the jetson nano tehcnical reference manual with registers?
- Jetson nano platform adaptation and bring uo - pinmux changes and other things
jetsonNanoRegisterAccess. Copyright (C) Matthew Hardenburgh 2021. All rights reserved. mdhardenburgh@protonmail.com
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.
As stated in the section titled "licensing" above, this software is provided without any warranty. In addition, the public interfaces may change without warning at any time. This means I am not responsible for permentently bricking your jetson, getting you fired or causing a thermonuclear apocolypse. While I have done my best to release a product that is of quality, it falls to be YOUR reseponsiblity to vet the code's suitability and verify its operation.