"Porting" a watchdog timer to linux 5 - init_timer fail

Good day,

I have a watchdog timer that fails to compile with the latest distribution. It fails on "implicit declaration of function 'init_timer'"

I beleive that the timer stuff was changed ..

Can someone help me to "port" this driver?Its about 200 lines of code. I am willing to pay.

example of function:

static void wdt_start( void )
{
    spin_lock( &dev_lock );
    if( WDT_DISABLED == tmr_en ) {
	    init_timer(&timer);
	    timer.function = (void *)wdt_keep_alive;
	    timer.expires  = jiffies + ( WDT_TMR_FREQ * period );
	    add_timer(&timer);
	    tmr_en = WDT_ENABLED;
	    tmr_cnt = WDT_CNT_RELOAD;
	    REG_SET_BIT( RALINK_PIO_BASE+0x20, WDT_PIN );
	}
	spin_unlock( &dev_lock );
}

Without it my router reboots every 30 secs...

Thank you in advance