Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6b617e22 authored by Feng Tang's avatar Feng Tang Committed by Thomas Gleixner
Browse files

x86/platform: Add a wallclock_init func to x86_init.timers ops



Some wall clock devices use MMIO based HW register, this new
function will give them a chance to do some initialization work
before their get/set_time service get called, which is usually
in early kernel boot phase.

Signed-off-by: default avatarFeng Tang <feng.tang@intel.com>
Signed-off-by: default avatarJacob Pan <jacob.jun.pan@linux.intel.com>
Signed-off-by: default avatarAlan Cox <alan@linux.intel.com>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent 991cfffa
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -83,11 +83,13 @@ struct x86_init_paging {
 *				boot cpu
 * @tsc_pre_init:		platform function called before TSC init
 * @timer_init:			initialize the platform timer (default PIT/HPET)
 * @wallclock_init:		init the wallclock device
 */
struct x86_init_timers {
	void (*setup_percpu_clockev)(void);
	void (*tsc_pre_init)(void);
	void (*timer_init)(void);
	void (*wallclock_init)(void);
};

/**
+2 −0
Original line number Diff line number Diff line
@@ -1059,6 +1059,8 @@ void __init setup_arch(char **cmdline_p)
#endif
	x86_init.oem.banner();

	x86_init.timers.wallclock_init();

	mcheck_init();

	local_irq_save(flags);
+1 −0
Original line number Diff line number Diff line
@@ -70,6 +70,7 @@ struct x86_init_ops x86_init __initdata = {
		.setup_percpu_clockev	= setup_boot_APIC_clock,
		.tsc_pre_init		= x86_init_noop,
		.timer_init		= hpet_time_init,
		.wallclock_init		= x86_init_noop,
	},

	.iommu = {