Home
last modified time | relevance | path

Searched refs:pm8001_ha (Results 1 – 7 of 7) sorted by relevance

/linux-4.4.14/drivers/scsi/pm8001/
Dpm8001_init.c120 static void pm8001_phy_init(struct pm8001_hba_info *pm8001_ha, int phy_id) in pm8001_phy_init() argument
122 struct pm8001_phy *phy = &pm8001_ha->phy[phy_id]; in pm8001_phy_init()
125 phy->pm8001_ha = pm8001_ha; in pm8001_phy_init()
126 sas_phy->enabled = (phy_id < pm8001_ha->chip->n_phy) ? 1 : 0; in pm8001_phy_init()
135 sas_phy->sas_addr = &pm8001_ha->sas_addr[0]; in pm8001_phy_init()
137 sas_phy->ha = (struct sas_ha_struct *)pm8001_ha->shost->hostdata; in pm8001_phy_init()
146 static void pm8001_free(struct pm8001_hba_info *pm8001_ha) in pm8001_free() argument
150 if (!pm8001_ha) in pm8001_free()
154 if (pm8001_ha->memoryMap.region[i].virt_ptr != NULL) { in pm8001_free()
155 pci_free_consistent(pm8001_ha->pdev, in pm8001_free()
[all …]
Dpm8001_hwi.c50 static void read_main_config_table(struct pm8001_hba_info *pm8001_ha) in read_main_config_table() argument
52 void __iomem *address = pm8001_ha->main_cfg_tbl_addr; in read_main_config_table()
53 pm8001_ha->main_cfg_tbl.pm8001_tbl.signature = in read_main_config_table()
55 pm8001_ha->main_cfg_tbl.pm8001_tbl.interface_rev = in read_main_config_table()
57 pm8001_ha->main_cfg_tbl.pm8001_tbl.firmware_rev = in read_main_config_table()
59 pm8001_ha->main_cfg_tbl.pm8001_tbl.max_out_io = in read_main_config_table()
61 pm8001_ha->main_cfg_tbl.pm8001_tbl.max_sgl = in read_main_config_table()
63 pm8001_ha->main_cfg_tbl.pm8001_tbl.ctrl_cap_flag = in read_main_config_table()
65 pm8001_ha->main_cfg_tbl.pm8001_tbl.gst_offset = in read_main_config_table()
67 pm8001_ha->main_cfg_tbl.pm8001_tbl.inbound_queue_offset = in read_main_config_table()
[all …]
Dpm80xx_hwi.c50 int pm80xx_bar4_shift(struct pm8001_hba_info *pm8001_ha, u32 shift_value) in pm80xx_bar4_shift() argument
54 pm8001_cw32(pm8001_ha, 0, MEMBASE_II_SHIFT_REGISTER, shift_value); in pm80xx_bar4_shift()
58 reg_val = pm8001_cr32(pm8001_ha, 0, MEMBASE_II_SHIFT_REGISTER); in pm80xx_bar4_shift()
61 PM8001_FAIL_DBG(pm8001_ha, in pm80xx_bar4_shift()
69 void pm80xx_pci_mem_copy(struct pm8001_hba_info *pm8001_ha, u32 soffset, in pm80xx_pci_mem_copy() argument
80 value = pm8001_cr32(pm8001_ha, bus_base_number, offset); in pm80xx_pci_mem_copy()
92 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm80xx_get_fatal_dump() local
93 void __iomem *fatal_table_address = pm8001_ha->fatal_tbl_addr; in pm80xx_get_fatal_dump()
99 pm8001_ha->forensic_info.data_buf.direct_data = buf; in pm80xx_get_fatal_dump()
100 if (pm8001_ha->chip_id == chip_8001) { in pm80xx_get_fatal_dump()
[all …]
Dpm8001_sas.c65 void pm8001_tag_free(struct pm8001_hba_info *pm8001_ha, u32 tag) in pm8001_tag_free() argument
67 void *bitmap = pm8001_ha->tags; in pm8001_tag_free()
76 inline int pm8001_tag_alloc(struct pm8001_hba_info *pm8001_ha, u32 *tag_out) in pm8001_tag_alloc() argument
79 void *bitmap = pm8001_ha->tags; in pm8001_tag_alloc()
82 spin_lock_irqsave(&pm8001_ha->bitmap_lock, flags); in pm8001_tag_alloc()
83 tag = find_first_zero_bit(bitmap, pm8001_ha->tags_num); in pm8001_tag_alloc()
84 if (tag >= pm8001_ha->tags_num) { in pm8001_tag_alloc()
85 spin_unlock_irqrestore(&pm8001_ha->bitmap_lock, flags); in pm8001_tag_alloc()
89 spin_unlock_irqrestore(&pm8001_ha->bitmap_lock, flags); in pm8001_tag_alloc()
94 void pm8001_tag_init(struct pm8001_hba_info *pm8001_ha) in pm8001_tag_init() argument
[all …]
Dpm8001_ctl.c59 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_mpi_interface_rev_show() local
61 if (pm8001_ha->chip_id == chip_8001) { in pm8001_ctl_mpi_interface_rev_show()
63 pm8001_ha->main_cfg_tbl.pm8001_tbl.interface_rev); in pm8001_ctl_mpi_interface_rev_show()
66 pm8001_ha->main_cfg_tbl.pm80xx_tbl.interface_rev); in pm8001_ctl_mpi_interface_rev_show()
84 struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; in pm8001_ctl_fw_version_show() local
86 if (pm8001_ha->chip_id == chip_8001) { in pm8001_ctl_fw_version_show()
88 (u8)(pm8001_ha->main_cfg_tbl.pm8001_tbl.firmware_rev >> 24), in pm8001_ctl_fw_version_show()
89 (u8)(pm8001_ha->main_cfg_tbl.pm8001_tbl.firmware_rev >> 16), in pm8001_ctl_fw_version_show()
90 (u8)(pm8001_ha->main_cfg_tbl.pm8001_tbl.firmware_rev >> 8), in pm8001_ctl_fw_version_show()
91 (u8)(pm8001_ha->main_cfg_tbl.pm8001_tbl.firmware_rev)); in pm8001_ctl_fw_version_show()
[all …]
Dpm8001_sas.h194 int (*chip_init)(struct pm8001_hba_info *pm8001_ha);
195 int (*chip_soft_rst)(struct pm8001_hba_info *pm8001_ha);
196 void (*chip_rst)(struct pm8001_hba_info *pm8001_ha);
197 int (*chip_ioremap)(struct pm8001_hba_info *pm8001_ha);
198 void (*chip_iounmap)(struct pm8001_hba_info *pm8001_ha);
199 irqreturn_t (*isr)(struct pm8001_hba_info *pm8001_ha, u8 vec);
200 u32 (*is_our_interupt)(struct pm8001_hba_info *pm8001_ha);
201 int (*isr_process_oq)(struct pm8001_hba_info *pm8001_ha, u8 vec);
202 void (*interrupt_enable)(struct pm8001_hba_info *pm8001_ha, u8 vec);
203 void (*interrupt_disable)(struct pm8001_hba_info *pm8001_ha, u8 vec);
[all …]
Dpm8001_chips.h54 static inline u32 pm8001_cr32(struct pm8001_hba_info *pm8001_ha, u32 bar, in pm8001_cr32() argument
57 return readl(pm8001_ha->io_mem[bar].memvirtaddr + offset); in pm8001_cr32()
60 static inline void pm8001_cw32(struct pm8001_hba_info *pm8001_ha, u32 bar, in pm8001_cw32() argument
63 writel(val, pm8001_ha->io_mem[bar].memvirtaddr + addr); in pm8001_cw32()