Lines Matching refs:host_data
1144 struct octeon_irq_ciu_domain_data *dd = d->host_data; in octeon_irq_ciu_xlat()
1178 struct octeon_irq_ciu_domain_data *dd = d->host_data; in octeon_irq_ciu_map()
1215 struct octeon_irq_gpio_domain_data *gpiod = d->host_data; in octeon_irq_gpio_map()
2078 struct octeon_irq_cib_host_data *host_data; member
2087 struct octeon_irq_cib_host_data *host_data = cd->host_data; in octeon_irq_cib_enable() local
2089 raw_spin_lock_irqsave(&host_data->lock, flags); in octeon_irq_cib_enable()
2090 en = cvmx_read_csr(host_data->en_reg); in octeon_irq_cib_enable()
2092 cvmx_write_csr(host_data->en_reg, en); in octeon_irq_cib_enable()
2093 raw_spin_unlock_irqrestore(&host_data->lock, flags); in octeon_irq_cib_enable()
2101 struct octeon_irq_cib_host_data *host_data = cd->host_data; in octeon_irq_cib_disable() local
2103 raw_spin_lock_irqsave(&host_data->lock, flags); in octeon_irq_cib_disable()
2104 en = cvmx_read_csr(host_data->en_reg); in octeon_irq_cib_disable()
2106 cvmx_write_csr(host_data->en_reg, en); in octeon_irq_cib_disable()
2107 raw_spin_unlock_irqrestore(&host_data->lock, flags); in octeon_irq_cib_disable()
2157 struct octeon_irq_cib_host_data *host_data = d->host_data; in octeon_irq_cib_map() local
2160 if (hw >= host_data->max_bits) { in octeon_irq_cib_map()
2167 cd->host_data = host_data; in octeon_irq_cib_map()
2191 struct octeon_irq_cib_host_data *host_data = cib_domain->host_data; in octeon_irq_cib_handler() local
2193 en = cvmx_read_csr(host_data->en_reg); in octeon_irq_cib_handler()
2194 raw = cvmx_read_csr(host_data->raw_reg); in octeon_irq_cib_handler()
2198 for (i = 0; i < host_data->max_bits; i++) { in octeon_irq_cib_handler()
2206 i, host_data->raw_reg); in octeon_irq_cib_handler()
2207 raw_spin_lock_irqsave(&host_data->lock, flags); in octeon_irq_cib_handler()
2208 en = cvmx_read_csr(host_data->en_reg); in octeon_irq_cib_handler()
2210 cvmx_write_csr(host_data->en_reg, en); in octeon_irq_cib_handler()
2211 cvmx_write_csr(host_data->raw_reg, 1ull << i); in octeon_irq_cib_handler()
2212 raw_spin_unlock_irqrestore(&host_data->lock, flags); in octeon_irq_cib_handler()
2219 cvmx_write_csr(host_data->raw_reg, 1ull << i); in octeon_irq_cib_handler()
2232 struct octeon_irq_cib_host_data *host_data; in octeon_irq_init_cib() local
2244 host_data = kzalloc(sizeof(*host_data), GFP_KERNEL); in octeon_irq_init_cib()
2245 raw_spin_lock_init(&host_data->lock); in octeon_irq_init_cib()
2252 host_data->raw_reg = (u64)phys_to_virt( in octeon_irq_init_cib()
2260 host_data->en_reg = (u64)phys_to_virt( in octeon_irq_init_cib()
2269 host_data->max_bits = val; in octeon_irq_init_cib()
2271 cib_domain = irq_domain_add_linear(ciu_node, host_data->max_bits, in octeon_irq_init_cib()
2273 host_data); in octeon_irq_init_cib()
2279 cvmx_write_csr(host_data->en_reg, 0); /* disable all IRQs */ in octeon_irq_init_cib()
2280 cvmx_write_csr(host_data->raw_reg, ~0); /* ack any outstanding */ in octeon_irq_init_cib()
2289 host_data->raw_reg, host_data->max_bits); in octeon_irq_init_cib()