Lines Matching refs:imsg_ring

1735 	spin_lock(&priv->imsg_ring[mbox].lock);  in tsi721_imsg_handler()
1758 priv->imsg_ring[mbox].dev_id, mbox, -1); in tsi721_imsg_handler()
1769 spin_unlock(&priv->imsg_ring[mbox].lock); in tsi721_imsg_handler()
1796 priv->imsg_ring[mbox].dev_id = dev_id; in tsi721_open_inb_mbox()
1797 priv->imsg_ring[mbox].size = entries; in tsi721_open_inb_mbox()
1798 priv->imsg_ring[mbox].rx_slot = 0; in tsi721_open_inb_mbox()
1799 priv->imsg_ring[mbox].desc_rdptr = 0; in tsi721_open_inb_mbox()
1800 priv->imsg_ring[mbox].fq_wrptr = 0; in tsi721_open_inb_mbox()
1801 for (i = 0; i < priv->imsg_ring[mbox].size; i++) in tsi721_open_inb_mbox()
1802 priv->imsg_ring[mbox].imq_base[i] = NULL; in tsi721_open_inb_mbox()
1803 spin_lock_init(&priv->imsg_ring[mbox].lock); in tsi721_open_inb_mbox()
1806 priv->imsg_ring[mbox].buf_base = in tsi721_open_inb_mbox()
1809 &priv->imsg_ring[mbox].buf_phys, in tsi721_open_inb_mbox()
1812 if (priv->imsg_ring[mbox].buf_base == NULL) { in tsi721_open_inb_mbox()
1820 priv->imsg_ring[mbox].imfq_base = in tsi721_open_inb_mbox()
1823 &priv->imsg_ring[mbox].imfq_phys, in tsi721_open_inb_mbox()
1826 if (priv->imsg_ring[mbox].imfq_base == NULL) { in tsi721_open_inb_mbox()
1834 priv->imsg_ring[mbox].imd_base = in tsi721_open_inb_mbox()
1837 &priv->imsg_ring[mbox].imd_phys, GFP_KERNEL); in tsi721_open_inb_mbox()
1839 if (priv->imsg_ring[mbox].imd_base == NULL) { in tsi721_open_inb_mbox()
1848 free_ptr = priv->imsg_ring[mbox].imfq_base; in tsi721_open_inb_mbox()
1851 (u64)(priv->imsg_ring[mbox].buf_phys) + in tsi721_open_inb_mbox()
1872 iowrite32(((u64)priv->imsg_ring[mbox].imfq_phys >> 32), in tsi721_open_inb_mbox()
1874 iowrite32(((u64)priv->imsg_ring[mbox].imfq_phys & in tsi721_open_inb_mbox()
1881 iowrite32(((u64)priv->imsg_ring[mbox].imd_phys >> 32), in tsi721_open_inb_mbox()
1883 iowrite32(((u32)priv->imsg_ring[mbox].imd_phys & in tsi721_open_inb_mbox()
1929 priv->imsg_ring[mbox].fq_wrptr = entries - 1; in tsi721_open_inb_mbox()
1938 priv->imsg_ring[mbox].size * sizeof(struct tsi721_imsg_desc), in tsi721_open_inb_mbox()
1939 priv->imsg_ring[mbox].imd_base, in tsi721_open_inb_mbox()
1940 priv->imsg_ring[mbox].imd_phys); in tsi721_open_inb_mbox()
1942 priv->imsg_ring[mbox].imd_base = NULL; in tsi721_open_inb_mbox()
1947 priv->imsg_ring[mbox].size * 8, in tsi721_open_inb_mbox()
1948 priv->imsg_ring[mbox].imfq_base, in tsi721_open_inb_mbox()
1949 priv->imsg_ring[mbox].imfq_phys); in tsi721_open_inb_mbox()
1951 priv->imsg_ring[mbox].imfq_base = NULL; in tsi721_open_inb_mbox()
1955 priv->imsg_ring[mbox].size * TSI721_MSG_BUFFER_SIZE, in tsi721_open_inb_mbox()
1956 priv->imsg_ring[mbox].buf_base, in tsi721_open_inb_mbox()
1957 priv->imsg_ring[mbox].buf_phys); in tsi721_open_inb_mbox()
1959 priv->imsg_ring[mbox].buf_base = NULL; in tsi721_open_inb_mbox()
1995 for (rx_slot = 0; rx_slot < priv->imsg_ring[mbox].size; rx_slot++) in tsi721_close_inb_mbox()
1996 priv->imsg_ring[mbox].imq_base[rx_slot] = NULL; in tsi721_close_inb_mbox()
2000 priv->imsg_ring[mbox].size * TSI721_MSG_BUFFER_SIZE, in tsi721_close_inb_mbox()
2001 priv->imsg_ring[mbox].buf_base, in tsi721_close_inb_mbox()
2002 priv->imsg_ring[mbox].buf_phys); in tsi721_close_inb_mbox()
2004 priv->imsg_ring[mbox].buf_base = NULL; in tsi721_close_inb_mbox()
2008 priv->imsg_ring[mbox].size * 8, in tsi721_close_inb_mbox()
2009 priv->imsg_ring[mbox].imfq_base, in tsi721_close_inb_mbox()
2010 priv->imsg_ring[mbox].imfq_phys); in tsi721_close_inb_mbox()
2012 priv->imsg_ring[mbox].imfq_base = NULL; in tsi721_close_inb_mbox()
2016 priv->imsg_ring[mbox].size * sizeof(struct tsi721_imsg_desc), in tsi721_close_inb_mbox()
2017 priv->imsg_ring[mbox].imd_base, in tsi721_close_inb_mbox()
2018 priv->imsg_ring[mbox].imd_phys); in tsi721_close_inb_mbox()
2020 priv->imsg_ring[mbox].imd_base = NULL; in tsi721_close_inb_mbox()
2035 rx_slot = priv->imsg_ring[mbox].rx_slot; in tsi721_add_inb_buffer()
2036 if (priv->imsg_ring[mbox].imq_base[rx_slot]) { in tsi721_add_inb_buffer()
2044 priv->imsg_ring[mbox].imq_base[rx_slot] = buf; in tsi721_add_inb_buffer()
2046 if (++priv->imsg_ring[mbox].rx_slot == priv->imsg_ring[mbox].size) in tsi721_add_inb_buffer()
2047 priv->imsg_ring[mbox].rx_slot = 0; in tsi721_add_inb_buffer()
2075 desc = priv->imsg_ring[mbox].imd_base; in tsi721_get_inb_message()
2076 desc += priv->imsg_ring[mbox].desc_rdptr; in tsi721_get_inb_message()
2081 rx_slot = priv->imsg_ring[mbox].rx_slot; in tsi721_get_inb_message()
2082 while (priv->imsg_ring[mbox].imq_base[rx_slot] == NULL) { in tsi721_get_inb_message()
2083 if (++rx_slot == priv->imsg_ring[mbox].size) in tsi721_get_inb_message()
2090 rx_virt = priv->imsg_ring[mbox].buf_base + in tsi721_get_inb_message()
2091 (rx_phys - (u64)priv->imsg_ring[mbox].buf_phys); in tsi721_get_inb_message()
2093 buf = priv->imsg_ring[mbox].imq_base[rx_slot]; in tsi721_get_inb_message()
2099 priv->imsg_ring[mbox].imq_base[rx_slot] = NULL; in tsi721_get_inb_message()
2102 if (++priv->imsg_ring[mbox].desc_rdptr == priv->imsg_ring[mbox].size) in tsi721_get_inb_message()
2103 priv->imsg_ring[mbox].desc_rdptr = 0; in tsi721_get_inb_message()
2105 iowrite32(priv->imsg_ring[mbox].desc_rdptr, in tsi721_get_inb_message()
2109 free_ptr = priv->imsg_ring[mbox].imfq_base; in tsi721_get_inb_message()
2110 free_ptr[priv->imsg_ring[mbox].fq_wrptr] = cpu_to_le64(rx_phys); in tsi721_get_inb_message()
2112 if (++priv->imsg_ring[mbox].fq_wrptr == priv->imsg_ring[mbox].size) in tsi721_get_inb_message()
2113 priv->imsg_ring[mbox].fq_wrptr = 0; in tsi721_get_inb_message()
2115 iowrite32(priv->imsg_ring[mbox].fq_wrptr, in tsi721_get_inb_message()