Linux Audio

Check our new training course

Yocto / OpenEmbedded training

Feb 10-13, 2025
Register
Loading...
Note: File does not exist in v3.1.
 1/*
 2 * Intel MIC Platform Software Stack (MPSS)
 3 *
 4 * Copyright(c) 2013 Intel Corporation.
 5 *
 6 * This program is free software; you can redistribute it and/or modify
 7 * it under the terms of the GNU General Public License, version 2, as
 8 * published by the Free Software Foundation.
 9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License for more details.
14 *
15 * The full GNU General Public License is included in this distribution in
16 * the file called "COPYING".
17 *
18 * Intel MIC driver.
19 *
20 */
21#ifndef __MIC_DEV_H__
22#define __MIC_DEV_H__
23
24/* The maximum number of MIC devices supported in a single host system. */
25#define MIC_MAX_NUM_DEVS 128
26
27/**
28 * enum mic_hw_family - The hardware family to which a device belongs.
29 */
30enum mic_hw_family {
31	MIC_FAMILY_X100 = 0,
32	MIC_FAMILY_X200,
33	MIC_FAMILY_UNKNOWN,
34	MIC_FAMILY_LAST
35};
36
37/**
38 * struct mic_mw - MIC memory window
39 *
40 * @pa: Base physical address.
41 * @va: Base ioremap'd virtual address.
42 * @len: Size of the memory window.
43 */
44struct mic_mw {
45	phys_addr_t pa;
46	void __iomem *va;
47	resource_size_t len;
48};
49
50/*
51 * Scratch pad register offsets used by the host to communicate
52 * device page DMA address to the card.
53 */
54#define MIC_DPLO_SPAD 14
55#define MIC_DPHI_SPAD 15
56
57/*
58 * These values are supposed to be in the config_change field of the
59 * device page when the host sends a config change interrupt to the card.
60 */
61#define MIC_VIRTIO_PARAM_DEV_REMOVE 0x1
62#define MIC_VIRTIO_PARAM_CONFIG_CHANGED 0x2
63
64/* Maximum number of DMA channels */
65#define MIC_MAX_DMA_CHAN 4
66
67#endif