Lines Matching refs:hpriv
231 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_show_host_caps() local
233 return sprintf(buf, "%x\n", hpriv->cap); in ahci_show_host_caps()
241 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_show_host_cap2() local
243 return sprintf(buf, "%x\n", hpriv->cap2); in ahci_show_host_cap2()
251 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_show_host_version() local
252 void __iomem *mmio = hpriv->mmio; in ahci_show_host_version()
272 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_read_em_buffer() local
273 void __iomem *mmio = hpriv->mmio; in ahci_read_em_buffer()
274 void __iomem *em_mmio = mmio + hpriv->em_loc; in ahci_read_em_buffer()
284 !(hpriv->em_msg_type & EM_MSG_TYPE_SGPIO)) { in ahci_read_em_buffer()
295 em_mmio += hpriv->em_buf_sz; in ahci_read_em_buffer()
297 count = hpriv->em_buf_sz; in ahci_read_em_buffer()
305 hpriv->em_buf_sz, PAGE_SIZE); in ahci_read_em_buffer()
328 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_store_em_buffer() local
329 void __iomem *mmio = hpriv->mmio; in ahci_store_em_buffer()
330 void __iomem *em_mmio = mmio + hpriv->em_loc; in ahci_store_em_buffer()
338 !(hpriv->em_msg_type & EM_MSG_TYPE_SGPIO) || in ahci_store_em_buffer()
339 size % 4 || size > hpriv->em_buf_sz) in ahci_store_em_buffer()
368 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_show_em_supported() local
369 void __iomem *mmio = hpriv->mmio; in ahci_show_em_supported()
399 void ahci_save_initial_config(struct device *dev, struct ahci_host_priv *hpriv) in ahci_save_initial_config() argument
401 void __iomem *mmio = hpriv->mmio; in ahci_save_initial_config()
411 hpriv->saved_cap = cap = readl(mmio + HOST_CAP); in ahci_save_initial_config()
412 hpriv->saved_port_map = port_map = readl(mmio + HOST_PORTS_IMPL); in ahci_save_initial_config()
418 hpriv->saved_cap2 = cap2 = readl(mmio + HOST_CAP2); in ahci_save_initial_config()
420 hpriv->saved_cap2 = cap2 = 0; in ahci_save_initial_config()
423 if ((cap & HOST_CAP_64) && (hpriv->flags & AHCI_HFLAG_32BIT_ONLY)) { in ahci_save_initial_config()
428 if ((cap & HOST_CAP_NCQ) && (hpriv->flags & AHCI_HFLAG_NO_NCQ)) { in ahci_save_initial_config()
433 if (!(cap & HOST_CAP_NCQ) && (hpriv->flags & AHCI_HFLAG_YES_NCQ)) { in ahci_save_initial_config()
438 if ((cap & HOST_CAP_PMP) && (hpriv->flags & AHCI_HFLAG_NO_PMP)) { in ahci_save_initial_config()
443 if ((cap & HOST_CAP_SNTF) && (hpriv->flags & AHCI_HFLAG_NO_SNTF)) { in ahci_save_initial_config()
449 if ((cap2 & HOST_CAP2_SDS) && (hpriv->flags & AHCI_HFLAG_NO_DEVSLP)) { in ahci_save_initial_config()
456 if (!(cap & HOST_CAP_FBS) && (hpriv->flags & AHCI_HFLAG_YES_FBS)) { in ahci_save_initial_config()
461 if ((cap & HOST_CAP_FBS) && (hpriv->flags & AHCI_HFLAG_NO_FBS)) { in ahci_save_initial_config()
466 if (hpriv->force_port_map && port_map != hpriv->force_port_map) { in ahci_save_initial_config()
468 port_map, hpriv->force_port_map); in ahci_save_initial_config()
469 port_map = hpriv->force_port_map; in ahci_save_initial_config()
470 hpriv->saved_port_map = port_map; in ahci_save_initial_config()
473 if (hpriv->mask_port_map) { in ahci_save_initial_config()
476 port_map & hpriv->mask_port_map); in ahci_save_initial_config()
477 port_map &= hpriv->mask_port_map; in ahci_save_initial_config()
505 hpriv->saved_port_map = port_map; in ahci_save_initial_config()
509 hpriv->cap = cap; in ahci_save_initial_config()
510 hpriv->cap2 = cap2; in ahci_save_initial_config()
511 hpriv->port_map = port_map; in ahci_save_initial_config()
513 if (!hpriv->start_engine) in ahci_save_initial_config()
514 hpriv->start_engine = ahci_start_engine; in ahci_save_initial_config()
529 struct ahci_host_priv *hpriv = host->private_data; in ahci_restore_initial_config() local
530 void __iomem *mmio = hpriv->mmio; in ahci_restore_initial_config()
532 writel(hpriv->saved_cap, mmio + HOST_CAP); in ahci_restore_initial_config()
533 if (hpriv->saved_cap2) in ahci_restore_initial_config()
534 writel(hpriv->saved_cap2, mmio + HOST_CAP2); in ahci_restore_initial_config()
535 writel(hpriv->saved_port_map, mmio + HOST_PORTS_IMPL); in ahci_restore_initial_config()
548 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_scr_offset() local
551 (sc_reg != SCR_NOTIFICATION || (hpriv->cap & HOST_CAP_SNTF))) in ahci_scr_offset()
621 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_start_fis_rx() local
626 if (hpriv->cap & HOST_CAP_64) in ahci_start_fis_rx()
631 if (hpriv->cap & HOST_CAP_64) in ahci_start_fis_rx()
667 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_power_up() local
674 if (hpriv->cap & HOST_CAP_SSS) { in ahci_power_up()
687 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_set_lpm() local
703 if (hpriv->cap & HOST_CAP_ALPM) { in ahci_set_lpm()
726 if ((hpriv->cap2 & HOST_CAP2_SDS) && in ahci_set_lpm()
727 (hpriv->cap2 & HOST_CAP2_SADM) && in ahci_set_lpm()
749 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_power_down() local
753 if (!(hpriv->cap & HOST_CAP_SSS)) in ahci_power_down()
770 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_start_port() local
781 if (!(hpriv->flags & AHCI_HFLAG_DELAY_ENGINE)) in ahci_start_port()
782 hpriv->start_engine(ap); in ahci_start_port()
839 struct ahci_host_priv *hpriv = host->private_data; in ahci_reset_controller() local
840 void __iomem *mmio = hpriv->mmio; in ahci_reset_controller()
960 struct ahci_host_priv *hpriv = host->private_data; in ahci_reset_em() local
961 void __iomem *mmio = hpriv->mmio; in ahci_reset_em()
976 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_transmit_led_message() local
978 void __iomem *mmio = hpriv->mmio; in ahci_transmit_led_message()
1004 if (hpriv->em_msg_type & EM_MSG_TYPE_LED) { in ahci_transmit_led_message()
1015 writel(message[0], mmio + hpriv->em_loc); in ahci_transmit_led_message()
1016 writel(message[1], mmio + hpriv->em_loc+4); in ahci_transmit_led_message()
1121 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_port_init() local
1146 if ((tmp & PORT_CMD_ESP) && (hpriv->cap & HOST_CAP_SXS)) in ahci_port_init()
1152 struct ahci_host_priv *hpriv = host->private_data; in ahci_init_controller() local
1153 void __iomem *mmio = hpriv->mmio; in ahci_init_controller()
1178 struct ahci_host_priv *hpriv = dev->link->ap->host->private_data; in ahci_dev_config() local
1180 if (hpriv->flags & AHCI_HFLAG_SECT255) { in ahci_dev_config()
1220 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_kick_engine() local
1239 if (!(hpriv->cap & HOST_CAP_CLO)) { in ahci_kick_engine()
1257 hpriv->start_engine(ap); in ahci_kick_engine()
1306 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_do_softreset() local
1356 if (rc == -EBUSY && hpriv->flags & AHCI_HFLAG_SRST_TOUT_IS_OFFLINE) { in ahci_do_softreset()
1458 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_hardreset() local
1476 hpriv->start_engine(ap); in ahci_hardreset()
1603 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_error_intr() local
1644 if (hpriv->flags & AHCI_HFLAG_IGN_IRQ_IF_ERR) in ahci_error_intr()
1657 if (hpriv->flags & AHCI_HFLAG_IGN_SERR_INTERNAL) in ahci_error_intr()
1717 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_handle_port_interrupt() local
1746 if (hpriv->cap & HOST_CAP_SNTF) in ahci_handle_port_interrupt()
1874 struct ahci_host_priv *hpriv; in ahci_single_edge_irq_intr() local
1881 hpriv = host->private_data; in ahci_single_edge_irq_intr()
1882 mmio = hpriv->mmio; in ahci_single_edge_irq_intr()
1889 irq_masked = irq_stat & hpriv->port_map; in ahci_single_edge_irq_intr()
1911 struct ahci_host_priv *hpriv; in ahci_single_level_irq_intr() local
1918 hpriv = host->private_data; in ahci_single_level_irq_intr()
1919 mmio = hpriv->mmio; in ahci_single_level_irq_intr()
1926 irq_masked = irq_stat & hpriv->port_map; in ahci_single_level_irq_intr()
2015 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_thaw() local
2016 void __iomem *mmio = hpriv->mmio; in ahci_thaw()
2032 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_error_handler() local
2037 hpriv->start_engine(ap); in ahci_error_handler()
2058 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_set_aggressive_devslp() local
2122 hpriv->start_engine(ap); in ahci_set_aggressive_devslp()
2134 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_enable_fbs() local
2163 hpriv->start_engine(ap); in ahci_enable_fbs()
2168 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_disable_fbs() local
2196 hpriv->start_engine(ap); in ahci_disable_fbs()
2278 struct ahci_host_priv *hpriv = ap->host->private_data; in ahci_port_start() local
2300 if ((hpriv->cap & HOST_CAP_FBS) && sata_pmp_supported(ap)) { in ahci_port_start()
2305 else if (hpriv->flags & AHCI_HFLAG_YES_FBS) { in ahci_port_start()
2362 if (hpriv->flags & AHCI_HFLAG_MULTI_MSI) { in ahci_port_start()
2386 struct ahci_host_priv *hpriv = host->private_data; in ahci_print_info() local
2387 void __iomem *mmio = hpriv->mmio; in ahci_print_info()
2392 cap = hpriv->cap; in ahci_print_info()
2393 cap2 = hpriv->cap2; in ahci_print_info()
2394 impl = hpriv->port_map; in ahci_print_info()
2457 void ahci_set_em_messages(struct ahci_host_priv *hpriv, in ahci_set_em_messages() argument
2461 void __iomem *mmio = hpriv->mmio; in ahci_set_em_messages()
2465 if (!ahci_em_messages || !(hpriv->cap & HOST_CAP_EMS)) in ahci_set_em_messages()
2472 hpriv->em_loc = ((em_loc >> 16) * 4); in ahci_set_em_messages()
2473 hpriv->em_buf_sz = ((em_loc & 0xff) * 4); in ahci_set_em_messages()
2474 hpriv->em_msg_type = messages; in ahci_set_em_messages()
2527 struct ahci_host_priv *hpriv = host->private_data; in ahci_host_activate() local
2528 int irq = hpriv->irq; in ahci_host_activate()
2531 if (hpriv->flags & AHCI_HFLAG_MULTI_MSI) in ahci_host_activate()
2533 else if (hpriv->flags & AHCI_HFLAG_EDGE_IRQ) in ahci_host_activate()