gxp_timer
gxp_timer->counter = base + GXP_TIMER_CNT_OFS;
gxp_timer->control = base + GXP_TIMER_CTRL_OFS;
gxp_timer->evt.name = node->name;
gxp_timer->evt.rating = 300;
gxp_timer->evt.features = CLOCK_EVT_FEAT_ONESHOT;
gxp_timer->evt.set_next_event = gxp_time_set_next_event;
gxp_timer->evt.cpumask = cpumask_of(0);
clockevents_config_and_register(&gxp_timer->evt, TIMER0_FREQ,
node->name, gxp_timer);
kfree(gxp_timer);
if (!gxp_timer) {
gxp_watchdog_device->dev.platform_data = gxp_timer->counter;
static struct gxp_timer *gxp_timer;
static inline struct gxp_timer *to_gxp_timer(struct clock_event_device *evt_dev)
return container_of(evt_dev, struct gxp_timer, evt);
struct gxp_timer *timer = to_gxp_timer(evt_dev);
struct gxp_timer *timer = (struct gxp_timer *)dev_id;
gxp_timer = kzalloc_obj(*gxp_timer);
if (!gxp_timer) {