diff options
author | Deepak Nibade <dnibade@nvidia.com> | 2017-06-02 05:17:20 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-06-08 09:37:17 -0400 |
commit | 366386d1898af61eb425aa8b37cfb656ff898c1a (patch) | |
tree | 2e950a577c0685da12fa2d4f722430b52c3a4df4 /drivers/gpu/nvgpu | |
parent | c37a7a577a5cf4732a32c7747f244aab19bdeaec (diff) |
gpu: nvgpu: add t19x specific nvhost abstraction files
Add new abstraction file common/linux/nvhost_t19x.c
for all nvhost APIs exported from linux/nvhost_t194.h
This file will be compiled only if config
CONFIG_TEGRA_GK20A_NVHOST is set
Export the new headers from file <nvgpu/nvhost_t19x.h>
Also add dummy private header file nvhost_priv_t19x.h
to store definition of private structure nvgpu_nvhost_dev
This file should be deleted when nvgpu-t19x repo
is merged into common nvhost repo
Jira NVGPU-29
Change-Id: I8c08c9242b08cc45f7c99cc400b3e1a720f9439c
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: http://git-master/r/1493792
Reviewed-by: svccoveritychecker <svccoveritychecker@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu')
-rw-r--r-- | drivers/gpu/nvgpu/Makefile | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/common/linux/nvhost_priv_t19x.h | 29 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/common/linux/nvhost_t19x.c | 36 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/include/nvgpu/nvhost_t19x.h | 30 |
4 files changed, 96 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/Makefile b/drivers/gpu/nvgpu/Makefile index d1b6a67c..244b3ed3 100644 --- a/drivers/gpu/nvgpu/Makefile +++ b/drivers/gpu/nvgpu/Makefile | |||
@@ -20,3 +20,4 @@ nvgpu-y += \ | |||
20 | $(nvgpu-t19x)/gv11b/regops_gv11b.o | 20 | $(nvgpu-t19x)/gv11b/regops_gv11b.o |
21 | 21 | ||
22 | nvgpu-$(CONFIG_TEGRA_GK20A) += $(nvgpu-t19x)/gv11b/platform_gv11b_tegra.o | 22 | nvgpu-$(CONFIG_TEGRA_GK20A) += $(nvgpu-t19x)/gv11b/platform_gv11b_tegra.o |
23 | nvgpu-$(CONFIG_TEGRA_GK20A_NVHOST) += $(nvgpu-t19x)/common/linux/nvhost_t19x.o | ||
diff --git a/drivers/gpu/nvgpu/common/linux/nvhost_priv_t19x.h b/drivers/gpu/nvgpu/common/linux/nvhost_priv_t19x.h new file mode 100644 index 00000000..7ff6184d --- /dev/null +++ b/drivers/gpu/nvgpu/common/linux/nvhost_priv_t19x.h | |||
@@ -0,0 +1,29 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify it | ||
5 | * under the terms and conditions of the GNU General Public License, | ||
6 | * version 2, as published by the Free Software Foundation. | ||
7 | * | ||
8 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
9 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
10 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
11 | * more details. | ||
12 | * | ||
13 | * You should have received a copy of the GNU General Public License | ||
14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
15 | */ | ||
16 | |||
17 | #ifndef __NVGPU_NVHOST_PRIV_T19X_H__ | ||
18 | #define __NVGPU_NVHOST_PRIV_T19X_H__ | ||
19 | |||
20 | /* | ||
21 | * This file is copy of common/linux/nvhost_priv.h in nvgpu repo | ||
22 | * This file should be removed when nvgpu-t19x repo is merged | ||
23 | * into common nvgpu repo | ||
24 | */ | ||
25 | struct nvgpu_nvhost_dev { | ||
26 | struct platform_device *host1x_pdev; | ||
27 | }; | ||
28 | |||
29 | #endif /* __NVGPU_NVHOST_PRIV_T19X_H__ */ | ||
diff --git a/drivers/gpu/nvgpu/common/linux/nvhost_t19x.c b/drivers/gpu/nvgpu/common/linux/nvhost_t19x.c new file mode 100644 index 00000000..0bbb3d72 --- /dev/null +++ b/drivers/gpu/nvgpu/common/linux/nvhost_t19x.c | |||
@@ -0,0 +1,36 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify it | ||
5 | * under the terms and conditions of the GNU General Public License, | ||
6 | * version 2, as published by the Free Software Foundation. | ||
7 | * | ||
8 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
9 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
10 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
11 | * more details. | ||
12 | * | ||
13 | * You should have received a copy of the GNU General Public License | ||
14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
15 | */ | ||
16 | |||
17 | #include <linux/nvhost.h> | ||
18 | #include <linux/nvhost_t194.h> | ||
19 | |||
20 | #include <nvgpu/nvhost_t19x.h> | ||
21 | |||
22 | #include "nvhost_priv_t19x.h" | ||
23 | |||
24 | int nvgpu_nvhost_syncpt_unit_interface_get_aperture( | ||
25 | struct nvgpu_nvhost_dev *nvhost_dev, | ||
26 | phys_addr_t *base, | ||
27 | size_t *size) | ||
28 | { | ||
29 | return nvhost_syncpt_unit_interface_get_aperture( | ||
30 | nvhost_dev->host1x_pdev, base, size); | ||
31 | } | ||
32 | |||
33 | u32 nvgpu_nvhost_syncpt_unit_interface_get_byte_offset(u32 syncpt_id) | ||
34 | { | ||
35 | return nvhost_syncpt_unit_interface_get_byte_offset(syncpt_id); | ||
36 | } | ||
diff --git a/drivers/gpu/nvgpu/include/nvgpu/nvhost_t19x.h b/drivers/gpu/nvgpu/include/nvgpu/nvhost_t19x.h new file mode 100644 index 00000000..c456687b --- /dev/null +++ b/drivers/gpu/nvgpu/include/nvgpu/nvhost_t19x.h | |||
@@ -0,0 +1,30 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify it | ||
5 | * under the terms and conditions of the GNU General Public License, | ||
6 | * version 2, as published by the Free Software Foundation. | ||
7 | * | ||
8 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
9 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
10 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
11 | * more details. | ||
12 | * | ||
13 | * You should have received a copy of the GNU General Public License | ||
14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
15 | */ | ||
16 | |||
17 | #ifndef __NVGPU_NVHOST_T19X_H__ | ||
18 | #define __NVGPU_NVHOST_T19X_H__ | ||
19 | |||
20 | #ifdef CONFIG_TEGRA_GK20A_NVHOST | ||
21 | struct nvgpu_nvhost_dev; | ||
22 | |||
23 | int nvgpu_nvhost_syncpt_unit_interface_get_aperture( | ||
24 | struct nvgpu_nvhost_dev *nvhost_dev, | ||
25 | phys_addr_t *base, | ||
26 | size_t *size); | ||
27 | u32 nvgpu_nvhost_syncpt_unit_interface_get_byte_offset(u32 syncpt_id); | ||
28 | |||
29 | #endif | ||
30 | #endif /* __NVGPU_NVHOST_T19X_H__ */ | ||