diff options
author | Olof Johansson <olof@lixom.net> | 2013-01-14 13:20:02 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2013-01-14 13:20:02 -0500 |
commit | 8d84981e395850aab31c3f2ca7e2738e03f671d7 (patch) | |
tree | 933425fddb23d28be802277471df3fe3f6c2711d /drivers/scsi/pm8001 | |
parent | 00c82d64405631967dca3890a9ce80ab35d04cc7 (diff) | |
parent | 77cc982f6a3b33a5aa058ad3b20cda8866db2948 (diff) |
Merge branch 'clocksource/cleanup' into next/cleanup
Clockevent cleanup series from Shawn Guo.
Resolved move/change conflict in mach-pxa/time.c due to the sys_timer
cleanup.
* clocksource/cleanup:
clocksource: use clockevents_config_and_register() where possible
ARM: use clockevents_config_and_register() where possible
clockevents: export clockevents_config_and_register for module use
+ sync to Linux 3.8-rc3
Signed-off-by: Olof Johansson <olof@lixom.net>
Conflicts:
arch/arm/mach-pxa/time.c
Diffstat (limited to 'drivers/scsi/pm8001')
-rw-r--r-- | drivers/scsi/pm8001/pm8001_hwi.c | 36 | ||||
-rw-r--r-- | drivers/scsi/pm8001/pm8001_init.c | 28 |
2 files changed, 29 insertions, 35 deletions
diff --git a/drivers/scsi/pm8001/pm8001_hwi.c b/drivers/scsi/pm8001/pm8001_hwi.c index bf54aafc2d71..b8dd05074abb 100644 --- a/drivers/scsi/pm8001/pm8001_hwi.c +++ b/drivers/scsi/pm8001/pm8001_hwi.c | |||
@@ -47,7 +47,7 @@ | |||
47 | * read_main_config_table - read the configure table and save it. | 47 | * read_main_config_table - read the configure table and save it. |
48 | * @pm8001_ha: our hba card information | 48 | * @pm8001_ha: our hba card information |
49 | */ | 49 | */ |
50 | static void __devinit read_main_config_table(struct pm8001_hba_info *pm8001_ha) | 50 | static void read_main_config_table(struct pm8001_hba_info *pm8001_ha) |
51 | { | 51 | { |
52 | void __iomem *address = pm8001_ha->main_cfg_tbl_addr; | 52 | void __iomem *address = pm8001_ha->main_cfg_tbl_addr; |
53 | pm8001_ha->main_cfg_tbl.signature = pm8001_mr32(address, 0x00); | 53 | pm8001_ha->main_cfg_tbl.signature = pm8001_mr32(address, 0x00); |
@@ -83,8 +83,7 @@ static void __devinit read_main_config_table(struct pm8001_hba_info *pm8001_ha) | |||
83 | * read_general_status_table - read the general status table and save it. | 83 | * read_general_status_table - read the general status table and save it. |
84 | * @pm8001_ha: our hba card information | 84 | * @pm8001_ha: our hba card information |
85 | */ | 85 | */ |
86 | static void __devinit | 86 | static void read_general_status_table(struct pm8001_hba_info *pm8001_ha) |
87 | read_general_status_table(struct pm8001_hba_info *pm8001_ha) | ||
88 | { | 87 | { |
89 | void __iomem *address = pm8001_ha->general_stat_tbl_addr; | 88 | void __iomem *address = pm8001_ha->general_stat_tbl_addr; |
90 | pm8001_ha->gs_tbl.gst_len_mpistate = pm8001_mr32(address, 0x00); | 89 | pm8001_ha->gs_tbl.gst_len_mpistate = pm8001_mr32(address, 0x00); |
@@ -118,8 +117,7 @@ read_general_status_table(struct pm8001_hba_info *pm8001_ha) | |||
118 | * read_inbnd_queue_table - read the inbound queue table and save it. | 117 | * read_inbnd_queue_table - read the inbound queue table and save it. |
119 | * @pm8001_ha: our hba card information | 118 | * @pm8001_ha: our hba card information |
120 | */ | 119 | */ |
121 | static void __devinit | 120 | static void read_inbnd_queue_table(struct pm8001_hba_info *pm8001_ha) |
122 | read_inbnd_queue_table(struct pm8001_hba_info *pm8001_ha) | ||
123 | { | 121 | { |
124 | int inbQ_num = 1; | 122 | int inbQ_num = 1; |
125 | int i; | 123 | int i; |
@@ -137,8 +135,7 @@ read_inbnd_queue_table(struct pm8001_hba_info *pm8001_ha) | |||
137 | * read_outbnd_queue_table - read the outbound queue table and save it. | 135 | * read_outbnd_queue_table - read the outbound queue table and save it. |
138 | * @pm8001_ha: our hba card information | 136 | * @pm8001_ha: our hba card information |
139 | */ | 137 | */ |
140 | static void __devinit | 138 | static void read_outbnd_queue_table(struct pm8001_hba_info *pm8001_ha) |
141 | read_outbnd_queue_table(struct pm8001_hba_info *pm8001_ha) | ||
142 | { | 139 | { |
143 | int outbQ_num = 1; | 140 | int outbQ_num = 1; |
144 | int i; | 141 | int i; |
@@ -156,8 +153,7 @@ read_outbnd_queue_table(struct pm8001_hba_info *pm8001_ha) | |||
156 | * init_default_table_values - init the default table. | 153 | * init_default_table_values - init the default table. |
157 | * @pm8001_ha: our hba card information | 154 | * @pm8001_ha: our hba card information |
158 | */ | 155 | */ |
159 | static void __devinit | 156 | static void init_default_table_values(struct pm8001_hba_info *pm8001_ha) |
160 | init_default_table_values(struct pm8001_hba_info *pm8001_ha) | ||
161 | { | 157 | { |
162 | int qn = 1; | 158 | int qn = 1; |
163 | int i; | 159 | int i; |
@@ -250,8 +246,7 @@ init_default_table_values(struct pm8001_hba_info *pm8001_ha) | |||
250 | * update_main_config_table - update the main default table to the HBA. | 246 | * update_main_config_table - update the main default table to the HBA. |
251 | * @pm8001_ha: our hba card information | 247 | * @pm8001_ha: our hba card information |
252 | */ | 248 | */ |
253 | static void __devinit | 249 | static void update_main_config_table(struct pm8001_hba_info *pm8001_ha) |
254 | update_main_config_table(struct pm8001_hba_info *pm8001_ha) | ||
255 | { | 250 | { |
256 | void __iomem *address = pm8001_ha->main_cfg_tbl_addr; | 251 | void __iomem *address = pm8001_ha->main_cfg_tbl_addr; |
257 | pm8001_mw32(address, 0x24, | 252 | pm8001_mw32(address, 0x24, |
@@ -297,8 +292,8 @@ update_main_config_table(struct pm8001_hba_info *pm8001_ha) | |||
297 | * update_inbnd_queue_table - update the inbound queue table to the HBA. | 292 | * update_inbnd_queue_table - update the inbound queue table to the HBA. |
298 | * @pm8001_ha: our hba card information | 293 | * @pm8001_ha: our hba card information |
299 | */ | 294 | */ |
300 | static void __devinit | 295 | static void update_inbnd_queue_table(struct pm8001_hba_info *pm8001_ha, |
301 | update_inbnd_queue_table(struct pm8001_hba_info *pm8001_ha, int number) | 296 | int number) |
302 | { | 297 | { |
303 | void __iomem *address = pm8001_ha->inbnd_q_tbl_addr; | 298 | void __iomem *address = pm8001_ha->inbnd_q_tbl_addr; |
304 | u16 offset = number * 0x20; | 299 | u16 offset = number * 0x20; |
@@ -318,8 +313,8 @@ update_inbnd_queue_table(struct pm8001_hba_info *pm8001_ha, int number) | |||
318 | * update_outbnd_queue_table - update the outbound queue table to the HBA. | 313 | * update_outbnd_queue_table - update the outbound queue table to the HBA. |
319 | * @pm8001_ha: our hba card information | 314 | * @pm8001_ha: our hba card information |
320 | */ | 315 | */ |
321 | static void __devinit | 316 | static void update_outbnd_queue_table(struct pm8001_hba_info *pm8001_ha, |
322 | update_outbnd_queue_table(struct pm8001_hba_info *pm8001_ha, int number) | 317 | int number) |
323 | { | 318 | { |
324 | void __iomem *address = pm8001_ha->outbnd_q_tbl_addr; | 319 | void __iomem *address = pm8001_ha->outbnd_q_tbl_addr; |
325 | u16 offset = number * 0x24; | 320 | u16 offset = number * 0x24; |
@@ -370,8 +365,8 @@ int pm8001_bar4_shift(struct pm8001_hba_info *pm8001_ha, u32 shiftValue) | |||
370 | * @pm8001_ha: our hba card information | 365 | * @pm8001_ha: our hba card information |
371 | * @SSCbit: set SSCbit to 0 to disable all phys ssc; 1 to enable all phys ssc. | 366 | * @SSCbit: set SSCbit to 0 to disable all phys ssc; 1 to enable all phys ssc. |
372 | */ | 367 | */ |
373 | static void __devinit | 368 | static void mpi_set_phys_g3_with_ssc(struct pm8001_hba_info *pm8001_ha, |
374 | mpi_set_phys_g3_with_ssc(struct pm8001_hba_info *pm8001_ha, u32 SSCbit) | 369 | u32 SSCbit) |
375 | { | 370 | { |
376 | u32 value, offset, i; | 371 | u32 value, offset, i; |
377 | unsigned long flags; | 372 | unsigned long flags; |
@@ -438,9 +433,8 @@ mpi_set_phys_g3_with_ssc(struct pm8001_hba_info *pm8001_ha, u32 SSCbit) | |||
438 | * @pm8001_ha: our hba card information | 433 | * @pm8001_ha: our hba card information |
439 | * @interval - interval time for each OPEN_REJECT (RETRY). The units are in 1us. | 434 | * @interval - interval time for each OPEN_REJECT (RETRY). The units are in 1us. |
440 | */ | 435 | */ |
441 | static void __devinit | 436 | static void mpi_set_open_retry_interval_reg(struct pm8001_hba_info *pm8001_ha, |
442 | mpi_set_open_retry_interval_reg(struct pm8001_hba_info *pm8001_ha, | 437 | u32 interval) |
443 | u32 interval) | ||
444 | { | 438 | { |
445 | u32 offset; | 439 | u32 offset; |
446 | u32 value; | 440 | u32 value; |
@@ -601,7 +595,7 @@ static void init_pci_device_addresses(struct pm8001_hba_info *pm8001_ha) | |||
601 | * pm8001_chip_init - the main init function that initialize whole PM8001 chip. | 595 | * pm8001_chip_init - the main init function that initialize whole PM8001 chip. |
602 | * @pm8001_ha: our hba card information | 596 | * @pm8001_ha: our hba card information |
603 | */ | 597 | */ |
604 | static int __devinit pm8001_chip_init(struct pm8001_hba_info *pm8001_ha) | 598 | static int pm8001_chip_init(struct pm8001_hba_info *pm8001_ha) |
605 | { | 599 | { |
606 | /* check the firmware status */ | 600 | /* check the firmware status */ |
607 | if (-1 == check_fw_ready(pm8001_ha)) { | 601 | if (-1 == check_fw_ready(pm8001_ha)) { |
diff --git a/drivers/scsi/pm8001/pm8001_init.c b/drivers/scsi/pm8001/pm8001_init.c index 0267c22f8741..4c9fe733fe88 100644 --- a/drivers/scsi/pm8001/pm8001_init.c +++ b/drivers/scsi/pm8001/pm8001_init.c | |||
@@ -104,8 +104,7 @@ static struct sas_domain_function_template pm8001_transport_ops = { | |||
104 | *@pm8001_ha: our hba structure. | 104 | *@pm8001_ha: our hba structure. |
105 | *@phy_id: phy id. | 105 | *@phy_id: phy id. |
106 | */ | 106 | */ |
107 | static void __devinit pm8001_phy_init(struct pm8001_hba_info *pm8001_ha, | 107 | static void pm8001_phy_init(struct pm8001_hba_info *pm8001_ha, int phy_id) |
108 | int phy_id) | ||
109 | { | 108 | { |
110 | struct pm8001_phy *phy = &pm8001_ha->phy[phy_id]; | 109 | struct pm8001_phy *phy = &pm8001_ha->phy[phy_id]; |
111 | struct asd_sas_phy *sas_phy = &phy->sas_phy; | 110 | struct asd_sas_phy *sas_phy = &phy->sas_phy; |
@@ -195,7 +194,7 @@ static irqreturn_t pm8001_interrupt(int irq, void *opaque) | |||
195 | * @pm8001_ha:our hba structure. | 194 | * @pm8001_ha:our hba structure. |
196 | * | 195 | * |
197 | */ | 196 | */ |
198 | static int __devinit pm8001_alloc(struct pm8001_hba_info *pm8001_ha) | 197 | static int pm8001_alloc(struct pm8001_hba_info *pm8001_ha) |
199 | { | 198 | { |
200 | int i; | 199 | int i; |
201 | spin_lock_init(&pm8001_ha->lock); | 200 | spin_lock_init(&pm8001_ha->lock); |
@@ -360,8 +359,9 @@ static int pm8001_ioremap(struct pm8001_hba_info *pm8001_ha) | |||
360 | * @ent: ent | 359 | * @ent: ent |
361 | * @shost: scsi host struct which has been initialized before. | 360 | * @shost: scsi host struct which has been initialized before. |
362 | */ | 361 | */ |
363 | static struct pm8001_hba_info *__devinit | 362 | static struct pm8001_hba_info *pm8001_pci_alloc(struct pci_dev *pdev, |
364 | pm8001_pci_alloc(struct pci_dev *pdev, u32 chip_id, struct Scsi_Host *shost) | 363 | u32 chip_id, |
364 | struct Scsi_Host *shost) | ||
365 | { | 365 | { |
366 | struct pm8001_hba_info *pm8001_ha; | 366 | struct pm8001_hba_info *pm8001_ha; |
367 | struct sas_ha_struct *sha = SHOST_TO_SAS_HA(shost); | 367 | struct sas_ha_struct *sha = SHOST_TO_SAS_HA(shost); |
@@ -433,8 +433,8 @@ static int pci_go_44(struct pci_dev *pdev) | |||
433 | * @shost: scsi host which has been allocated outside. | 433 | * @shost: scsi host which has been allocated outside. |
434 | * @chip_info: our ha struct. | 434 | * @chip_info: our ha struct. |
435 | */ | 435 | */ |
436 | static int __devinit pm8001_prep_sas_ha_init(struct Scsi_Host * shost, | 436 | static int pm8001_prep_sas_ha_init(struct Scsi_Host *shost, |
437 | const struct pm8001_chip_info *chip_info) | 437 | const struct pm8001_chip_info *chip_info) |
438 | { | 438 | { |
439 | int phy_nr, port_nr; | 439 | int phy_nr, port_nr; |
440 | struct asd_sas_phy **arr_phy; | 440 | struct asd_sas_phy **arr_phy; |
@@ -479,8 +479,8 @@ exit: | |||
479 | * @shost: scsi host which has been allocated outside | 479 | * @shost: scsi host which has been allocated outside |
480 | * @chip_info: our ha struct. | 480 | * @chip_info: our ha struct. |
481 | */ | 481 | */ |
482 | static void __devinit pm8001_post_sas_ha_init(struct Scsi_Host *shost, | 482 | static void pm8001_post_sas_ha_init(struct Scsi_Host *shost, |
483 | const struct pm8001_chip_info *chip_info) | 483 | const struct pm8001_chip_info *chip_info) |
484 | { | 484 | { |
485 | int i = 0; | 485 | int i = 0; |
486 | struct pm8001_hba_info *pm8001_ha; | 486 | struct pm8001_hba_info *pm8001_ha; |
@@ -615,8 +615,8 @@ intx: | |||
615 | * pci driver it is invoked, all struct an hardware initilization should be done | 615 | * pci driver it is invoked, all struct an hardware initilization should be done |
616 | * here, also, register interrupt | 616 | * here, also, register interrupt |
617 | */ | 617 | */ |
618 | static int __devinit pm8001_pci_probe(struct pci_dev *pdev, | 618 | static int pm8001_pci_probe(struct pci_dev *pdev, |
619 | const struct pci_device_id *ent) | 619 | const struct pci_device_id *ent) |
620 | { | 620 | { |
621 | unsigned int rc; | 621 | unsigned int rc; |
622 | u32 pci_reg; | 622 | u32 pci_reg; |
@@ -707,7 +707,7 @@ err_out_enable: | |||
707 | return rc; | 707 | return rc; |
708 | } | 708 | } |
709 | 709 | ||
710 | static void __devexit pm8001_pci_remove(struct pci_dev *pdev) | 710 | static void pm8001_pci_remove(struct pci_dev *pdev) |
711 | { | 711 | { |
712 | struct sas_ha_struct *sha = pci_get_drvdata(pdev); | 712 | struct sas_ha_struct *sha = pci_get_drvdata(pdev); |
713 | struct pm8001_hba_info *pm8001_ha; | 713 | struct pm8001_hba_info *pm8001_ha; |
@@ -842,7 +842,7 @@ err_out_enable: | |||
842 | return rc; | 842 | return rc; |
843 | } | 843 | } |
844 | 844 | ||
845 | static struct pci_device_id __devinitdata pm8001_pci_table[] = { | 845 | static struct pci_device_id pm8001_pci_table[] = { |
846 | { | 846 | { |
847 | PCI_VDEVICE(PMC_Sierra, 0x8001), chip_8001 | 847 | PCI_VDEVICE(PMC_Sierra, 0x8001), chip_8001 |
848 | }, | 848 | }, |
@@ -857,7 +857,7 @@ static struct pci_driver pm8001_pci_driver = { | |||
857 | .name = DRV_NAME, | 857 | .name = DRV_NAME, |
858 | .id_table = pm8001_pci_table, | 858 | .id_table = pm8001_pci_table, |
859 | .probe = pm8001_pci_probe, | 859 | .probe = pm8001_pci_probe, |
860 | .remove = __devexit_p(pm8001_pci_remove), | 860 | .remove = pm8001_pci_remove, |
861 | .suspend = pm8001_pci_suspend, | 861 | .suspend = pm8001_pci_suspend, |
862 | .resume = pm8001_pci_resume, | 862 | .resume = pm8001_pci_resume, |
863 | }; | 863 | }; |