We have developed a custom carrier board for the Xavier Industrial Module. There is a coin-cell battery which is connected to the VCC_RTC (L53) pin of the module.
The problem is as following: The time of the module is always being reseted after power-up. It seems that there is a problem with the VCC_RTC circuit or settings.
Is there any option on the device-tree or configuration files for the battery?
JetPack version is 5.1.2.
What can be the reason of this problem?
What’s your Jetpack version in use?
I could not find this pin in pinmux spreadsheet.
Is this pin controlled by SW?
Could you try using scope to check the behavior of this pin during power-up?
JetPack version is 5.1.2.
Yes, this pin is not listed in pinmux. It is defined in the document Jetson_AGX_Xavier_Series_OEM_Product_Design_Guide_DG-09840-001_v2.6.pdf at Chapter 5, Table 5-1.
We hope that there is a RTC in the AGX XAVIER Industrial module. And it should track the time as long as there is battery voltage on the pin (VCC_RTC).
May be the pin is not controlled by SW but RTC settings may be changed from device-tree or related configuration files.
There is a coin-battery connected to this pin, so there is always 3V during power-up.
Please share the result of the following command on your board.
$ ls -al /dev/rtc
and also the full dmesg for further check.
ls -al /dev/rtc results as following:
lrwxrwxrwx 1 root root 4 Mar 15 15:04 /dev/rtc → rtc1
The full dmesg is as following.
full_dmesg_output_rtc_error.txt (96.8 KB)
[ 2.867751] tegra_rtc c2a0000.rtc: registered as rtc1
[ 2.870486] tegra_rtc c2a0000.rtc: setting system clock to 1970-01-01T00:00:33 UTC (33)
It seems you should use rtc0 for RTC.
Please add the following kernel config and update the kernel.
Can you explain the steps of updating the kernel? Where is the kernel configuration files in file system?
You can find kernel source and documentation via your L4T release (which is just Ubuntu plus NVIDIA drivers). Check that with “
head -n 1 /etc/nv_tegra_release”. Then go here:
In the documentation you’ll be interested in Kernel Customization.
In the downloadable sources, that package contains another package which is the kernel source (it’s just tar archives, not a real package).
That documentation is quite good at cross compiling from your Linux PC. You can find some other links too for tools and setup. However, I’d ask on this forum first before installing. Installation instructions in that documentation is more set up for flashing to contain your new kernel, but you usually won’t need to actually flash.
Please refer to Kernel Customization — Jetson Linux Developer Guide documentation (nvidia.com) for details
Thank you for the documetations links. I am at the step 4 of Kernel Customization(4. Build the kernel:). I think that kernel configuration files should be edited before the build. In which file should I add CONFIG_RTC_HCTOSYS_DEVICE=“rtc0” configuration?
Note: What is tihe difference with Kernel Build and Real-time Kernel Build?
Any time you build the
make target “
tegra_defconfig” you’ve set the base config, and the file “
.config” is generated. You don’t need to edit that file directly (and unless you are absolutely certain nothing you change has any dependencies, you should not touch the generated file), you can use a
make target such as “
nconfig” (a lot of people use “
menuconfig” which is almost exactly the same as
nconfig has a symbol search).
Please note that during a kernel build, if you specify a separate temporary file output location with the “
O=/some/where”, then this is where the
.config goes. All steps would need to use that same “
O=”, including configuration steps such as
nconfig you could search for symbols using “
rtc_hctosys_device” (it is case insensitive and can find partial string matches).
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.