forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
886 B
41 lines
886 B
/* SPDX-License-Identifier: GPL-2.0-only */ |
|
/* |
|
* Tegra host1x Channel |
|
* |
|
* Copyright (c) 2010-2013, NVIDIA Corporation. |
|
*/ |
|
|
|
#ifndef __HOST1X_CHANNEL_H |
|
#define __HOST1X_CHANNEL_H |
|
|
|
#include <linux/io.h> |
|
#include <linux/kref.h> |
|
|
|
#include "cdma.h" |
|
|
|
struct host1x; |
|
struct host1x_channel; |
|
|
|
struct host1x_channel_list { |
|
struct host1x_channel *channels; |
|
unsigned long *allocated_channels; |
|
}; |
|
|
|
struct host1x_channel { |
|
struct kref refcount; |
|
unsigned int id; |
|
struct mutex submitlock; |
|
void __iomem *regs; |
|
struct host1x_client *client; |
|
struct device *dev; |
|
struct host1x_cdma cdma; |
|
}; |
|
|
|
/* channel list operations */ |
|
int host1x_channel_list_init(struct host1x_channel_list *chlist, |
|
unsigned int num_channels); |
|
void host1x_channel_list_free(struct host1x_channel_list *chlist); |
|
struct host1x_channel *host1x_channel_get_index(struct host1x *host, |
|
unsigned int index); |
|
|
|
#endif
|
|
|