/* Delay for 2s after last reset per IEEE 1394 clause 8.2.1. */
        if (card->reset_jiffies != 0 &&
-           time_is_after_jiffies(card->reset_jiffies + 2 * HZ)) {
+           time_before64(get_jiffies_64(), card->reset_jiffies + 2 * HZ)) {
                if (!schedule_delayed_work(&card->br_work, 2 * HZ))
                        fw_card_put(card);
                return;
        irm_id   = card->irm_node->node_id;
        local_id = card->local_node->node_id;
 
-       grace = time_after(jiffies, card->reset_jiffies + DIV_ROUND_UP(HZ, 8));
+       grace = time_after64(get_jiffies_64(),
+                            card->reset_jiffies + DIV_ROUND_UP(HZ, 8));
 
        if ((is_next_generation(generation, card->bm_generation) &&
             !card->bm_abdicate) ||
 
        todo = r->todo;
        /* Allow 1000ms grace period for other reallocations. */
        if (todo == ISO_RES_ALLOC &&
-           time_is_after_jiffies(client->device->card->reset_jiffies + HZ)) {
+           time_before64(get_jiffies_64(),
+                         client->device->card->reset_jiffies + HZ)) {
                schedule_iso_resource(r, DIV_ROUND_UP(HZ, 3));
                skip = true;
        } else {
 
                container_of(work, struct fw_device, work.work);
        int minor = MINOR(device->device.devt);
 
-       if (time_is_after_jiffies(device->card->reset_jiffies + SHUTDOWN_DELAY)
+       if (time_before64(get_jiffies_64(),
+                         device->card->reset_jiffies + SHUTDOWN_DELAY)
            && !list_empty(&device->card->link)) {
                schedule_delayed_work(&device->work, SHUTDOWN_DELAY);
                return;
 
         */
        smp_wmb();
        card->generation = generation;
-       card->reset_jiffies = jiffies;
+       card->reset_jiffies = get_jiffies_64();
        card->bm_node_id  = 0xffff;
        card->bm_abdicate = bm_abdicate;
        fw_schedule_bm_work(card, 0);
 
        int current_tlabel;
        u64 tlabel_mask;
        struct list_head transaction_list;
-       unsigned long reset_jiffies;
+       u64 reset_jiffies;
 
        u32 split_timeout_hi;
        u32 split_timeout_lo;