Project

General

Profile

Time drift

Added by Bindu Jagannatha over 9 years ago

Hello,

We bought a MityARM335x dev kit months ago. We have noticed that the time on the board (both software and hardware clocks) drifts by about 1 hour per day. Is this a common problem? Did we get a defective board? Are there any known workarounds for this?

I believe this is a hardware issue, so I am posting it here.

Thanks,
Bindu


Replies (11)

RE: Time drift - Added by Michael Williamson over 9 years ago

Hi,

What do you mean by "hardware and software" clocks. Are you using the RTC or just the system clock? Can you dump your clock tree?

Are you running a heavy processor load or kernel module that may be blocking interrupts?

Normally, if the ethernet and/or USB is working, the 24 MHz clock feeding the AM335x is OK. Are you using these peripherals?

-Mike

RE: Time drift - Added by Bindu Jagannatha over 9 years ago

When we boot into Linux and use the "date" (system clock) and "hwclock" (RTC I assume) commands to set/ask for time, we notice that the time changes by an hour / day (from what the actual time should be). So, for example, if we set both those clocks to 1 pm today, and then check at 1 pm tomorrow, the board will claim its time is 12 pm.

We are using the default filesystem and kernel that came with the dev board. Board is indeed connected to the internet, not using anything on the USB ports. Though for our final application, the board will not be connected to the internet.

Thanks,
Bindu

RE: Time drift - Added by Bindu Jagannatha over 9 years ago

Here is our clock tree (in /sys/kernel/debug/clock/summary):

clock-name parent-name rate use-count
ehrpwm2_tbclk none 0 1
ehrpwm1_tbclk none 0 1
ehrpwm0_tbclk none 0 1
vtp_clk sys_clkin_ck 12000000 0
timer7_ick l4ls_gclk 100000000 1
timer6_ick l4ls_gclk 100000000 1
timer5_ick l4ls_gclk 100000000 1
timer4_ick l4ls_gclk 100000000 1
timer3_ick l4ls_gclk 100000000 1
timer2_ick l4ls_gclk 100000000 1
timer1_ick l4_wkup_gclk 100000000 1
timer0_ick l4_wkup_gclk 100000000 1
clkout2_ck sysclkout_pre_ck 32768 1
sysclkout_pre_ck clk_32768_ck 32768 1
gfx_ick gfx_l3_gclk 200000000 0
gfx_fclk gfx_fclk_clksel_ck 200000000 0
gfx_fclk_clksel_ck sysclk1_ck 200000000 0
mmc_clk per_192mhz_clk 96000000 0
lcd_gclk disp_pll_clk 300000000 1
gpio3_dbclk clkdiv32k_ick 32768 0
gpio2_dbclk clkdiv32k_ick 32768 0
gpio1_dbclk clkdiv32k_ick 32768 0
gpio0_dbclk gpio0_dbclk_mux_ck 32000 0
gpio0_dbclk_mux_ck clk_rc32k_ck 32000 0
cpsw_cpts_rft_clk dpll_core_m5_ck 250000000 0
cpsw_5mhz_clk cpsw_50mhz_clk 5000000 0
cpsw_50mhz_clk sysclk2_ck 50000000 0
cpsw_125mhz_gclk sysclk2_ck 125000000 1
cpsw_250mhz_clk sysclk2_ck 250000000 0
sysclk_div_ck dpll_core_m4_ck 200000000 0
clk_24mhz per_192mhz_clk 24000000 1
debug_clka_gclk sysclk1_ck 200000000 0
l4ls_gclk core_100mhz_ck 100000000 29
l4fw_gclk core_100mhz_ck 100000000 1
l3s_gclk core_100mhz_ck 100000000 4
l4hs_gclk sysclk1_ck 200000000 1
l4_wkup_gclk sysclk1_ck 100000000 6
gfx_l3_gclk sysclk1_ck 200000000 0
l3_gclk sysclk1_ck 200000000 7
l4_rtc_gclk sysclk1_ck 100000000 0
l4_wkup_aon_gclk sysclk1_ck 200000000 2
l3_aon_gclk sysclk1_ck 200000000 1
wkup_m3_fck l4_wkup_aon_gclk 200000000 1
wdt1_fck clk_rc32k_ck 32000 0
wdt1_ick l4_wkup_gclk 100000000 0
wdt0_fck clk_rc32k_ck 32000 0
wdt0_ick l4_wkup_gclk 100000000 0
usbotg_fck usb_pll_clk 960000000 1
usbotg_ick l3s_gclk 100000000 1
uart6_ick l4ls_gclk 100000000 1
uart5_ick l4ls_gclk 100000000 1
uart4_ick l4ls_gclk 100000000 1
uart3_ick l4ls_gclk 100000000 1
uart2_ick l4ls_gclk 100000000 1
uart1_ick l4_wkup_gclk 100000000 1
uart6_fck per_192mhz_clk 48000000 1
uart5_fck per_192mhz_clk 48000000 1
uart4_fck per_192mhz_clk 48000000 1
uart3_fck per_192mhz_clk 48000000 1
uart2_fck per_192mhz_clk 48000000 1
uart1_fck per_192mhz_clk 48000000 1
tptc2_ick l3_gclk 200000000 1
tptc1_ick l3_gclk 200000000 1
tptc0_ick l3_gclk 200000000 1
tpcc_ick l3_gclk 200000000 1
lcdc_ick sysclk1_ck 200000000 0
timer7_fck sys_clkin_ck 24000000 0
timer6_fck sys_clkin_ck 24000000 1
timer5_fck sys_clkin_ck 24000000 1
timer4_fck sys_clkin_ck 24000000 0
timer3_fck sys_clkin_ck 24000000 0
timer2_fck sys_clkin_ck 24000000 1
timer1_fck clk_32768_ck 32768 1
timer0_fck clk_rc32k_ck 32000 0
spinlock_fck l4ls_gclk 100000000 0
spi1_ick l4ls_gclk 100000000 1
spi0_ick l4ls_gclk 100000000 1
spi1_fck per_192mhz_clk 48000000 0
spi0_fck per_192mhz_clk 48000000 0
smartreflex1_ick l4_wkup_gclk 100000000 0
smartreflex1_fck sys_clkin_ck 24000000 0
smartreflex0_ick l4_wkup_gclk 100000000 0
smartreflex0_fck sys_clkin_ck 24000000 0
sha0_fck l3_gclk 200000000 0
rtc_ick l4_rtc_gclk 100000000 0
rtc_fck clk_32768_ck 32768 2
rng_fck l4ls_gclk 100000000 0
pka_fck l4ls_gclk 100000000 0
ocpwp_fck l4ls_gclk 100000000 0
ocmcram_ick l3_gclk 200000000 1
mmu_fck gfx_l3_gclk 200000000 0
mmc2_fck mmc_clk 96000000 0
mmc1_fck mmc_clk 96000000 0
mmc0_fck mmc_clk 96000000 0
mmc2_ick l4ls_gclk 100000000 1
mmc1_ick l4ls_gclk 100000000 1
mmc0_ick l4ls_gclk 100000000 1
mlb_fck sysclk_div_ck 200000000 0
mcasp1_fck sys_clkin_ck 24000000 1
mcasp1_ick l3s_gclk 100000000 1
mcasp0_fck sys_clkin_ck 24000000 0
mcasp0_ick l3s_gclk 100000000 1
mailbox0_fck l4ls_gclk 100000000 1
lcdc_fck lcd_gclk 300000000 1
l4ls_ick l4ls_gclk 100000000 1
l4fw_ick core_100mhz_ck 100000000 1
l4wkup_ick l4_wkup_aon_gclk 200000000 1
l4hs_ick l4hs_gclk 200000000 1
ieee5000_fck l3s_gclk 100000000 0
pruss_iep_gclk l3_gclk 200000000 0
pruss_uart_gclk per_192mhz_clk 192000000 0
pruss_ocp_gclk l3_gclk 200000000 0
i2c3_ick l4ls_gclk 100000000 0
i2c3_fck per_192mhz_clk 48000000 0
i2c2_ick l4ls_gclk 100000000 0
i2c2_fck per_192mhz_clk 48000000 0
i2c1_ick l4_wkup_gclk 100000000 0
i2c1_fck per_192mhz_clk 48000000 0
gpmc_fck l3s_gclk 100000000 1
gpio3_ick l4ls_gclk 100000000 1
gpio2_ick l4ls_gclk 100000000 1
gpio1_ick l4ls_gclk 100000000 1
gpio0_ick l4_wkup_gclk 100000000 1
epwmss2_fck l4ls_gclk 100000000 0
epwmss1_fck l4ls_gclk 100000000 0
epwmss0_fck l4ls_gclk 100000000 0
elm_fck l4ls_gclk 100000000 1
debugss_ick l3_aon_gclk 200000000 1
dcan1_ick l4ls_gclk 100000000 1
dcan0_ick l4ls_gclk 100000000 1
dcan1_fck sys_clkin_ck 24000000 1
dcan0_fck sys_clkin_ck 24000000 1
cpgmac0_ick cpsw_125mhz_gclk 125000000 3
control_fck l4_wkup_gclk 100000000 1
clkdiv32k_ick clk_24mhz 32768 1
cefuse_iclk l4_cefsue_gclk 100000000 0
cefuse_fck sys_clkin_ck 24000000 0
l4_cefsue_gclk core_100mhz_ck 100000000 0
aes0_fck l3_gclk 200000000 0
adc_tsc_ick l4_wkup_gclk 100000000 1
adc_tsc_fck sys_clkin_ck 24000000 0
l3_instr_ick l3_gclk 200000000 1
l3_ick l3_gclk 200000000 1
core_100mhz_ck sysclk1_ck 100000000 4
usb_pll_clk dpll_per_ck 960000000 1
per_192mhz_clk dpll_per_m2_ck 192000000 7
dpll_per_m2_ck dpll_per_ck 192000000 1
dpll_per_ck sys_clkin_ck 960000000 2
disp_pll_clk dpll_disp_m2_ck 300000000 1
dpll_disp_m2_ck dpll_disp_ck 300000000 1
dpll_disp_ck sys_clkin_ck 300000000 1
emif_fw_fck l4fw_gclk 100000000 1
emif_fck ddr_pll_clk 151500000 1
ddr_pll_clk dpll_ddr_m2_ck 303000000 1
dpll_ddr_m2_ck dpll_ddr_ck 303000000 1
dpll_ddr_ck sys_clkin_ck 303000000 1
mpu_fck dpll_mpu_m2_ck 720000000 2
dpll_mpu_m2_ck dpll_mpu_ck 720000000 1
dpll_mpu_ck sys_clkin_ck 720000000 1
clk_32khz_timer clk_32khz_ck 32768 0
core_clk_out dpll_core_m4_ck 200000000 0
sysclk2_ck dpll_core_m5_ck 250000000 1
sysclk1_ck dpll_core_m4_ck 200000000 6
dpll_core_m6_ck dpll_core_x2_ck 2000000000 0
dpll_core_m5_ck dpll_core_x2_ck 250000000 1
dpll_core_m4_ck dpll_core_x2_ck 200000000 1
dpll_core_x2_ck dpll_core_ck 2000000000 2
dpll_core_ck sys_clkin_ck 1000000000 1
tclkin_ck none 12000000 0
sys_clkin_ck virt_24m_ck 24000000 11
virt_26m_ck none 26000000 0
virt_25m_ck none 25000000 0
virt_24m_ck none 24000000 1
virt_19_2m_ck none 19200000 0
clk_rc32k_ck none 32000 0
clk_32khz_ck clkdiv32k_ick 32768 0
clk_32768_ck none 32768 3

RE: Time drift - Added by Jonathan Cormier over 9 years ago

What version of the kernel came with your devkit? Could you post a boot log?

Particularly I want to know if your kernel is new enough to have this fix. http://support.criticallink.com/gitweb/?p=linux-mityarm-335x.git;a=commit;h=7fae5333c42f18eabe686673fc846272860e2b4e

RE: Time drift - Added by Bindu Jagannatha over 9 years ago

We used the pre-build kernel image that came with the board. The kernel that in the Virtual Machine/home/mitydsp/project/linux-mityarm-335x is already updated through git. I will post the boot log below. Is this fix need us to rebuild the kernel image?

RE: Time drift - Added by Bindu Jagannatha over 9 years ago

NAND read: device 0 offset 0x340000, size 0x500000
Skipping bad block 0x00780000
5242880 bytes read: OK
  1. Booting kernel from Legacy Image at 80007fc0 ...
    Image Name: Linux-3.2.0+
    Image Type: ARM Linux Kernel Image (uncompressed)
    Data Size: 3635848 Bytes = 3.5 MiB
    Load Address: 80008000
    Entry Point: 80008000
    Verifying Checksum ... OK
    XIP Kernel Image ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[ 0.000000] Linux version 3.2.0+ (mitydsp@mitydsp-dev) (gcc version 4.5.3 20110311 (prerelease) (GCC) ) #119 Thu Jul 25 13:02:37 EDT 2013
[ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine: mityarm335x
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] AM335X ES1.0 (sgx neon )
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048
[ 0.000000] Kernel command line: console=ttyO0,115200n8 noinitrd root=/dev/nfs rootwait nfsroot=192.17.52.99:/media/LAICE/MityARM_335x/mityVM_share/targep
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Memory: 512MB = 512MB total
[ 0.000000] Memory: 511308k/511308k available, 12980k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xe0800000 - 0xff000000 ( 488 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] modules : 0xbf000000 - 0xc0000000 ( 16 MB)
[ 0.000000] .text : 0xc0008000 - 0xc072d000 (7316 kB)
[ 0.000000] .init : 0xc072d000 - 0xc076c000 ( 252 kB)
[ 0.000000] .data : 0xc076c000 - 0xc0802300 ( 601 kB)
[ 0.000000] .bss : 0xc0802324 - 0xc083efb4 ( 244 kB)
[ 0.000000] NR_IRQS:396
[ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
[ 0.000000] Total of 128 interrupts on 1 active controller
[ 0.000000] OMAP clockevent source: GPTIMER2 at 24000000 Hz
[ 0.000000] OMAP clocksource: GPTIMER1 at 32768 Hz
[ 0.000000] sched_clock: 32 bits at 32kHz, resolution 30517ns, wraps every 131071999ms
[ 0.000000] Console: colour dummy device 80x30
[ 0.000122] Calibrating delay loop... 718.02 BogoMIPS (lpj=3590144)
[ 0.056549] pid_max: default: 32768 minimum: 301
[ 0.056671] Security Framework initialized
[ 0.056762] Mount-cache hash table entries: 512
[ 0.057128] CPU: Testing write buffer coherency: ok
[ 0.076354] omap_hwmod: gfx: failed to hardreset
[ 0.091949] omap_hwmod: pruss: failed to hardreset
[ 0.093231] print_constraints: dummy:
[ 0.093566] NET: Registered protocol family 16
[ 0.095703] OMAP GPIO hardware version 0.1
[ 0.098175] omap_mux_init: Add partition: #1: core, flags: 0
[ 0.100585] omap_i2c.3: alias fck already exists
[ 0.100830] omap_i2c.2: alias fck already exists
[ 0.102142] Registering mcspi 1 [2]
[ 0.102172] omap2_mcspi.1: alias fck already exists
[ 0.102355] Registering mcspi 2 [2]
[ 0.102386] omap2_mcspi.2: alias fck already exists
[ 0.102661] edma.0: alias fck already exists
[ 0.102691] edma.0: alias fck already exists
[ 0.102691] edma.0: alias fck already exists
[ 0.105834] baseboard_init [MityARM-335x DevKit]...
[ 0.106170] omap_hsmmc.0: alias fck already exists
[ 0.106597] omap_hsmmc.2: alias fck already exists
[ 0.107391] da8xx_lcdc.0: alias fck already exists
[ 0.107910] d_can.0: alias fck already exists
[ 0.108154] d_can.1: alias fck already exists
[ 0.108398] Configuring audio...
[ 0.108459] Registering mcasp1
[ 0.108489] davinci-mcasp.1: alias fck already exists
[ 0.108978] omap_i2c.1: alias fck already exists
[ 0.109191] WLAN GPIO Info.. IRQ = 186 WL_EN = 100 BT_EN = 22
[ 0.109191] Bluetooth not Enabled!
[ 0.109252] baseboard_setup_wlan: finished
[ 0.132873] bio: create slab <bio-0> at 0
[ 0.135009] SCSI subsystem initialized
[ 0.137176] usbcore: registered new interface driver usbfs
[ 0.137512] usbcore: registered new interface driver hub
[ 0.137695] usbcore: registered new device driver usb
[ 0.137847] musb-ti81xx musb-ti81xx: musb0, board_mode=0x3, plat_mode=0x3
[ 0.138153] musb-ti81xx musb-ti81xx: musb1, board_mode=0x3, plat_mode=0x0
[ 0.139251] omap_i2c omap_i2c.3: bus 3 rev2.4.0 at 100 kHz
[ 0.140167] tps65910 3-002d: JTAGREVNUM 0x1
[ 0.142486] print_constraints: VRTC:
[ 0.143890] print_constraints: VIO: at 1500 mV
[ 0.146118] print_constraints: VDD1: 600 <-
> 1500 mV at 1137 mV normal
[ 0.148345] print_constraints: VDD2: 600 <--> 1500 mV at 1137 mV normal
[ 0.149291] print_constraints: VDD3: 5000 mV
[ 0.150695] print_constraints: VDIG1: at 1800 mV
[ 0.152069] print_constraints: VDIG2: at 1800 mV
[ 0.153442] print_constraints: VPLL: at 1800 mV
[ 0.154846] print_constraints: VDAC: at 1800 mV
[ 0.156219] print_constraints: VAUX1: at 1800 mV
[ 0.157592] print_constraints: VAUX2: at 3300 mV
[ 0.158996] print_constraints: VAUX33: at 3300 mV
[ 0.160369] print_constraints: VMMC: at 3300 mV
[ 0.160888] tps65910 3-002d: No interrupt support, no core IRQ
[ 0.161041] omap_i2c omap_i2c.2: bus 2 rev2.4.0 at 100 kHz
[ 0.161651] omap_i2c omap_i2c.1: bus 1 rev2.4.0 at 100 kHz
[ 0.162750] Advanced Linux Sound Architecture Driver Version 1.0.24.
[ 0.164031] cfg80211: Calling CRDA to update world regulatory domain
[ 0.165130] Switching to clocksource gp timer
[ 0.180267] musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)
[ 0.180450] musb-hdrc musb-hdrc.0: dma type: pio
[ 0.181335] musb-hdrc musb-hdrc.0: USB OTG mode controller at e081c000 using PIO, IRQ 18
[ 0.181488] musb-hdrc musb-hdrc.1: dma type: pio
[ 0.181884] musb-hdrc musb-hdrc.1: MUSB HDRC host driver
[ 0.181945] musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus number 1
[ 0.182067] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 0.182067] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 0.182098] usb usb1: Product: MUSB HDRC host driver
[ 0.182098] usb usb1: Manufacturer: Linux 3.2.0+ musb-hcd
[ 0.182098] usb usb1: SerialNumber: musb-hdrc.1
[ 0.182861] hub 1-0:1.0: USB hub found
[ 0.182891] hub 1-0:1.0: 1 port detected
[ 0.183380] musb-hdrc musb-hdrc.1: USB OTG mode controller at e081e800 using PIO, IRQ 19
[ 0.183807] NET: Registered protocol family 2
[ 0.183990] IP route cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.184295] TCP established hash table entries: 16384 (order: 5, 131072 bytes)
[ 0.184570] TCP bind hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.184753] TCP: Hash tables configured (established 16384 bind 16384)
[ 0.184783] TCP reno registered
[ 0.184783] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.184814] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.184967] NET: Registered protocol family 1
[ 0.185333] RPC: Registered named UNIX socket transport module.
[ 0.185333] RPC: Registered udp transport module.
[ 0.185333] RPC: Registered tcp transport module.
[ 0.185363] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.185577] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.185791] omap-gpmc omap-gpmc: GPMC revision 6.0
[ 0.185791] Registering NAND on CS0
[ 0.204772] VFS: Disk quotas dquot_6.5.2
[ 0.204833] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.205413] msgmni has been set to 998
[ 0.206268] io scheduler noop registered
[ 0.206268] io scheduler deadline registered
[ 0.206329] io scheduler cfq registered (default)
[ 0.207275] _regulator_get: tps6116x supply vlcd not found, using dummy regulator
[ 0.210144] tps6116x tps6116x: registered backlight controller
[ 0.210693] DA8XX FB - no options passed
[ 0.210815] da8xx_lcdc da8xx_lcdc.0: GLCD: Found 800x600 panel
[ 0.211791] DA8XX FB: 1024 x 768 16 bpp
[ 0.226776] Console: switching to colour frame buffer device 128x48
[ 0.236785] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[ 0.238555] omap_uart.0: ttyO0 at MMIO 0x44e09000 (irq = 72) is a OMAP UART0
[ 0.960083] console [ttyO0] enabled
[ 0.964202] omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
[ 0.971771] omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
[ 0.979309] omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
[ 0.986755] omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
[ 0.994171] omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5
[ 1.010833] brd: module loaded
[ 1.018768] loop: module loaded
[ 1.022094] i2c-core: driver [tsl2550] using legacy suspend method
[ 1.028320] i2c-core: driver [tsl2550] using legacy resume method
[ 1.034484] at24 2-0050: 256 byte 24c02 EEPROM, read-only, 0 bytes/write
[ 1.046813] MityARM-335x: Factory Config Version Wrong (10002)
[ 1.054840] m25p80 spi2.0: m25p64-nonjedec (8192 Kbytes)
[ 1.060211] Creating 1 MTD partitions on "spi_flash":
[ 1.065277] 0x000000000000-0x000000800000 : "NOR User Defined"
[ 1.073059] omap2-nand driver initializing
[ 1.077514] ONFI flash detected
[ 1.080780] ONFI param page 0 valid
[ 1.084289] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xdc (Micron MT29F4G08ABAEAWP)
[ 1.092346] Creating 8 MTD partitions on "omap2-nand.0":
[ 1.097686] 0x000000000000-0x000000040000 : "SPL"
[ 1.103698] 0x000000040000-0x000000080000 : "SPL.backup1"
[ 1.110382] 0x000000080000-0x0000000c0000 : "SPL.backup2"
[ 1.117034] 0x0000000c0000-0x000000100000 : "SPL.backup3"
[ 1.123657] 0x000000100000-0x000000300000 : "U-Boot"
[ 1.130218] 0x000000300000-0x000000340000 : "U-Boot Env"
[ 1.136871] 0x000000340000-0x000000840000 : "Kernel"
[ 1.144073] 0x000000840000-0x000020000000 : "File System"
[ 1.251251] OneNAND driver initializing
[ 1.256530] CAN device driver interface
[ 1.260375] CAN bus driver for Bosch D_CAN controller 1.0
[ 1.266601] d_can d_can.0: device registered (irq=52, irq_obj=53)
[ 1.273315] d_can d_can.1: device registered (irq=55, irq_obj=56)
[ 1.325775] davinci_mdio davinci_mdio.0: davinci mdio revision 1.6
[ 1.331970] davinci_mdio davinci_mdio.0: detected phy mask fffffffd
[ 1.338653] am335x_vsc8601_phy_fixup 70421 here addr = 1
[ 1.344635] davinci_mdio.0: probed
[ 1.348083] davinci_mdio davinci_mdio.0: phy1: device 0:01, driver unknown
[ 1.355560] usbcore: registered new interface driver cdc_ether
[ 1.361602] usbcore: registered new interface driver cdc_subset
[ 1.367584] Initializing USB Mass Storage driver...
[ 1.372711] usbcore: registered new interface driver usb-storage
[ 1.378753] USB Mass Storage support registered.
[ 1.383422] gadget: using random self ethernet address
[ 1.388671] gadget: using random host ethernet address
[ 1.394470] usb0: MAC c2:ba:3d:30:e6:7f
[ 1.398315] usb0: HOST MAC ce:e2:dd:b5:1e:47
[ 1.402648] gadget: Ethernet Gadget, version: Memorial Day 2008
[ 1.408691] gadget: g_ether ready
[ 1.412109] musb-hdrc musb-hdrc.0: MUSB HDRC host driver
[ 1.417480] musb-hdrc musb-hdrc.0: new USB bus registered, assigned bus number 2
[ 1.424987] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[ 1.431793] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.439025] usb usb2: Product: MUSB HDRC host driver
[ 1.444000] usb usb2: Manufacturer: Linux 3.2.0+ musb-hcd
[ 1.449401] usb usb2: SerialNumber: musb-hdrc.0
[ 1.454711] hub 2-0:1.0: USB hub found
[ 1.458526] hub 2-0:1.0: 1 port detected
[ 1.463500] mousedev: PS/2 mouse device common for all mice
[ 1.470214] input: ti-tsc-adcc as /devices/platform/tsc/input/input0
[ 1.477661] omap_rtc omap_rtc: rtc core: registered omap_rtc as rtc0
[ 1.484069] omap_rtc: already running
[ 1.487945] i2c /dev entries driver
[ 1.492248] Linux media interface: v0.10
[ 1.496368] Linux video capture interface: v2.00
[ 1.501312] usbcore: registered new interface driver uvcvideo
[ 1.507110] USB Video Class driver (1.1.1)
[ 1.528381] lm75 1-0048: hwmon0: sensor 'lm75'
[ 1.534484] OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
[ 1.542724] cpuidle: using governor ladder
[ 1.547363] cpuidle: using governor menu
[ 1.624542] usbcore: registered new interface driver usbhid
[ 1.630157] usbhid: USB HID core driver
[ 1.634582] usbcore: registered new interface driver snd-usb-audio
[ 1.656036] tlv320aic26-codec spi1.1: Probing AIC26 SoC CODEC driver
[ 1.678222] asoc: tlv320aic26-hifi <-> davinci-mcasp.1 mapping ok
[ 1.685485] ALSA device list:
[ 1.688507] #0: MityARM-335X DevKit
[ 1.692169] oprofile: hardware counters not available
[ 1.697204] oprofile: using timer interrupt.
[ 1.701507] nf_conntrack version 0.5.0 (7989 buckets, 31956 max)
[ 1.708068] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 1.713500] TCP cubic registered
[ 1.716766] NET: Registered protocol family 17
[ 1.721221] can: controller area network core (rev 20090105 abi 8)
[ 1.727508] NET: Registered protocol family 29
[ 1.731994] can: raw protocol (rev 20090105)
[ 1.736267] can: broadcast manager protocol (rev 20090105 t)
[ 1.741973] lib80211: common routines for IEEE802.11 drivers
[ 1.747680] Registering the dns_resolver key type
[ 1.752502] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[ 1.760192] ThumbEE CPU extension supported.
[ 1.764526] mux: Failed to setup hwmod io irq -22
[ 1.769897] Power Management for AM33XX family
[ 1.774536] Trying to load am335x-pm-firmware.bin (60 secs timeout)
[ 1.780944] Copied the M3 firmware to UMEM
[ 1.785064] omap_hwmod: wkup_m3: wkup_m3: hwmod data error: OMAP4 does not support st_shift
[ 1.798797] Detected MACID=78:c5:e5:bc:50:3e
[ 1.804595] omap_rtc omap_rtc: setting system clock to 2014-07-10 12:55:57 UTC (1404996957)
[ 1.815521] PHY 0:00 not found
[ 1.818664] am335x_vsc8601_phy_fixup 70421 here addr = 1
[ 1.824707]
[ 1.824707] CPSW phy found : id is : 0x70421
[ 6.817169] PHY: 0:01 - Link is Up - 1000/Full
[ 6.846405] Sending DHCP requests ., OK
[ 7.366851] IP-Config: Got DHCP answer from 0.0.0.0, my address is 192.17.52.100
[ 7.374908] IP-Config: Complete:
[ 7.378173] device=eth0, addr=192.17.52.100, mask=255.255.255.0, gw=192.17.52.1,
[ 7.385772] host=192.17.52.100, domain=, nis-domain=(none),
[ 7.391784] bootserver=0.0.0.0, rootserver=192.17.52.99, rootpath=
[ 7.403686] VFS: Mounted root (nfs filesystem) on device 0:14.
[ 7.409942] Freeing init memory: 252K
INIT: version 2.86 booting
Please wait: booting...
Starting udev
[ 8.056030] udevd (816): /proc/816/oom_adj is deprecated, please use /proc/816/oom_score_adj instead.
[ 12.756866] alignment: ignoring faults is unsafe on this CPU. Defaulting to fixup mode.
Root filesystem already rw, not remounting
Caching udev devnodes
ALSA: Restoring mixer settings...
NOT configuring network interfaces: / is an NFS mount
Starting portmap daemon: portmap.
INIT: Entering runlevel: 5
Starting system message bus: dbus.
Starting Hardware abstraction layer hald
Starting Dropbear SSH server: dropbear.
Starting telnet daemon.
Starting network benchmark server: netserver.
creating NFS state directory: done
starting 8 nfsd kernel threads: done
starting mountd: done
starting statd: done
Starting syslogd/klogd: done
Starting thttpd.
Starting PVR
[ 15.961669] pvrsrvkm: disagrees about version of symbol module_layout
insmod: error inserting '/lib/modules/3.1.0/kernel/drivers/gpu/pvr/pvrsrvkm.ko': -1 Invalid module format
FATAL: Module omaplfb not found.
FATAL: Module bufferclass_ti not found.
BusyBox v1.13.2 (2011-12-15 15:46:39 CST) multi-call binary

Usage: mknod [OPTIONS] NAME TYPE MAJOR MINOR

Create a special file (block, character, or pipe)

Options:
-m Create the special file using the specified mode (default a=rw)
TYPEs include:
b: Make a block device
c or u: Make a character device
p: Make a named pipe (MAJOR and MINOR are ignored)

chmod: /dev/pvrsrvkm: No such file or directory
[ 16.102569] Unhandled fault: external abort on non-linefetch (0x1018) at 0x4013f014
Bus error
Starting Lighttpd Web Server: lighttpd.
2014-07-10 12:56:11: (log.c.166) server started
*******************************************************
NOTICE: This file system contains the followin GPLv3 packages:
binutils-dev
binutils-symlinks
binutils
gdbserver

If you do not wish to distribute GPLv3 components please remove
the above packages prior to distribution. This can be done using
the opkg remove command. i.e.:
opkg remove <package>
Where <package> is the name printed in the list above

NOTE: If the package is a dependency of another pa

,--. ,--.,--. ,--. ,---. ,------. ,--. ,--. | `.' |`--',-' '-.,--. ,--./ O \ | .--. '| `.' | | |'.'| |,--.'-. .-' \ ' /| .-. || '--'.'| |'.'| | | | | || | | | \ ' | | | || |\ \ | | |
`--' `--'`--' `--' .-' / `--' `--'`--' '--'`--' `--'
`---'
,----. ,----. ,-----.,--. ,--.
'.-. |'.-. || .--' \ `.' /
.' < .' < '--. `\ .' \
/'-' |/'-' |.--' / / .'. \
`----' `----' `----' '--' '--'

Critical Link LLC http://support.criticallink.com mityarm-335x ttyO0
Linux kernel verison Linux armv7l #119 Thu Jul 25 13:02:37 EDT 2013

mityarm-335x login:

RE: Time drift - Added by Jonathan Cormier over 9 years ago

I've attached the lastest uImage but yes you can build it if you would like. Instructions are here Linux_Kernel

This should be built from git commit: e53da3cda4dba6464b5b612e865c29e93144957f

uImage (3.54 MB) uImage

RE: Time drift - Added by Bindu Jagannatha over 9 years ago

Hey Jonathan,

Thanks again, we will definitely try this solution and let you know if it works. I would like to know what you think was the problem; it is still unclear to me if the clock on the processor chip is bad, or the kernel was causing unnecessary interrupts (like Michael Williamson was talking about?), or it is some totally different problem.

We first looked at this page before posting in the forum, but it doesn't mention anything about AM335x clock being 4% off: https://support.criticallink.com/redmine/projects/armc8-platforms/wiki/MityARM-335x_RTC_Information

Thank you,
Bindu

RE: Time drift - Added by Jonathan Cormier over 9 years ago

So if this is the problem I'm thinking of. It was discovered that when we changed to the 3.2 kernel we weren't setting up the RTC and by default the RTC was using its internal clock. This clock has a much higher error than the external crystal. So the change configures the RTC to use the external clock input.

RE: Time drift - Added by Bindu Jagannatha over 9 years ago

The clock is working now. Thank you.

But when we flash the nand, there is an error:
root@mityarm-335x:~# flash_erase /dev/mtd7 0 0
Erasing 256 Kibyte 400000 -- 80 % complete flash_erase: Skipping bad block at 00440000
Erasing 256 Kibyte
4c0000 -- 100 % complete

RE: Time drift - Added by Jonathan Cormier over 9 years ago

The skipping bad block is not an error but more of an info. Blocks can be marked bad from factory and during use. This is just telling you one was found and skipped over.

    (1-11/11)
    Go to top
    Add picture from clipboard (Maximum size: 1 GB)