1

I'm trying to register an I2C RTC device on an x86 platform. I've disabled the PC-Style CMOS driver because I'm on an embedded platform and only my I2C RTC is properly backed up.

Now when I load the RV3028 kernel module, no /dev/rtc is registered. To see if the probe function of the module is called, I added some printk to the probe function, but no kernel messages appear when I load the module with modprobe.

On ARM platforms, I need to define devices in the devices tree, but there are no device trees for x86 platforms.

The RV3028 kernel module has no parameters to specify the bus number or the I2C address.

What is the correct way to register an I2C RTC on an X86 platform without device trees?

Davi Jones
  • 11
  • 1
  • Assuming you are running a > 5.1 kernel. Did you try building the driver in-kernel (v.g. not as a module). (if you disabled the PC-Style clock, I would anyway strongly recommend building your driver in-kernel) and BTW how is your device physically interfaced with the system ? Some smbus ? – MC68020 Jun 10 '22 at 11:33
  • Contin. : Did you ensure that drivers for that interface are appropriately loaded ? – MC68020 Jun 10 '22 at 11:38
  • @MC68020 I tried it both ways, as a module and already built in the kernel. The RTC device is connected via i2c-0. I can access its registers with i2get and i2cset. So the interface works. – Davi Jones Jun 10 '22 at 13:29

0 Answers0