Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
[linux-2.6-microblaze.git] / drivers / scsi / hisi_sas / hisi_sas_v1_hw.c
index 00b5ee4..dc6eca8 100644 (file)
@@ -807,9 +807,9 @@ static void phy_hard_reset_v1_hw(struct hisi_hba *hisi_hba, int phy_no)
        start_phy_v1_hw(hisi_hba, phy_no);
 }
 
-static void start_phys_v1_hw(unsigned long data)
+static void start_phys_v1_hw(struct timer_list *t)
 {
-       struct hisi_hba *hisi_hba = (struct hisi_hba *)data;
+       struct hisi_hba *hisi_hba = from_timer(hisi_hba, t, timer);
        int i;
 
        for (i = 0; i < hisi_hba->n_phy; i++) {
@@ -828,7 +828,7 @@ static void phys_init_v1_hw(struct hisi_hba *hisi_hba)
                hisi_sas_phy_read32(hisi_hba, i, CHL_INT2_MSK);
        }
 
-       setup_timer(timer, start_phys_v1_hw, (unsigned long)hisi_hba);
+       timer_setup(timer, start_phys_v1_hw, 0);
        mod_timer(timer, jiffies + HZ);
 }