diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-06-05 19:20:22 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-06-05 19:20:22 -0400 |
commit | abf7dba7c4f77d781f6df50fefb19a64c5dc331f (patch) | |
tree | 38648731b502d5aec508f3b33f6616190e598eb6 /include/linux/fpga | |
parent | 07c4dd3435aa387d3b58f4e941dc516513f14507 (diff) | |
parent | b23220fe054e92f616b82450fae8cd3ab176cc60 (diff) |
Merge tag 'char-misc-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc
Pull char/misc driver updates from Greg KH:
"Here is the "big" char and misc driver patches for 4.18-rc1.
It's not a lot of stuff here, but there are some highlights:
- coreboot driver updates
- soundwire driver updates
- android binder updates
- fpga big sync, mostly documentation
- lots of minor driver updates
All of these have been in linux-next for a while with no reported
issues"
* tag 'char-misc-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (81 commits)
vmw_balloon: fixing double free when batching mode is off
MAINTAINERS: Add driver-api/fpga path
fpga: clarify that unregister functions also free
documentation: fpga: move fpga-region.txt to driver-api
documentation: fpga: add bridge document to driver-api
documentation: fpga: move fpga-mgr.txt to driver-api
Documentation: fpga: move fpga overview to driver-api
fpga: region: kernel-doc fixes
fpga: bridge: kernel-doc fixes
fpga: mgr: kernel-doc fixes
fpga: use SPDX
fpga: region: change api, add fpga_region_create/free
fpga: bridge: change api, don't use drvdata
fpga: manager: change api, don't use drvdata
fpga: region: don't use drvdata in common fpga code
Drivers: hv: vmbus: Removed an unnecessary cast from void *
ver_linux: Drop redundant calls to system() to test if file is readable
ver_linux: Move stderr redirection from function parameter to function body
misc: IBM Virtual Management Channel Driver (VMC)
rpmsg: Correct support for MODULE_DEVICE_TABLE()
...
Diffstat (limited to 'include/linux/fpga')
-rw-r--r-- | include/linux/fpga/altera-pr-ip-core.h | 13 | ||||
-rw-r--r-- | include/linux/fpga/fpga-bridge.h | 9 | ||||
-rw-r--r-- | include/linux/fpga/fpga-mgr.h | 23 | ||||
-rw-r--r-- | include/linux/fpga/fpga-region.h | 13 |
4 files changed, 23 insertions, 35 deletions
diff --git a/include/linux/fpga/altera-pr-ip-core.h b/include/linux/fpga/altera-pr-ip-core.h index 3810a9033f49..7d4664730d60 100644 --- a/include/linux/fpga/altera-pr-ip-core.h +++ b/include/linux/fpga/altera-pr-ip-core.h | |||
@@ -1,3 +1,4 @@ | |||
1 | /* SPDX-License-Identifier: GPL-2.0 */ | ||
1 | /* | 2 | /* |
2 | * Driver for Altera Partial Reconfiguration IP Core | 3 | * Driver for Altera Partial Reconfiguration IP Core |
3 | * | 4 | * |
@@ -5,18 +6,6 @@ | |||
5 | * | 6 | * |
6 | * Based on socfpga-a10.c Copyright (C) 2015-2016 Altera Corporation | 7 | * Based on socfpga-a10.c Copyright (C) 2015-2016 Altera Corporation |
7 | * by Alan Tull <atull@opensource.altera.com> | 8 | * by Alan Tull <atull@opensource.altera.com> |
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify it | ||
10 | * under the terms and conditions of the GNU General Public License, | ||
11 | * version 2, as published by the Free Software Foundation. | ||
12 | * | ||
13 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
14 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
15 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
16 | * more details. | ||
17 | * | ||
18 | * You should have received a copy of the GNU General Public License along with | ||
19 | * this program. If not, see <http://www.gnu.org/licenses/>. | ||
20 | */ | 9 | */ |
21 | 10 | ||
22 | #ifndef _ALT_PR_IP_CORE_H | 11 | #ifndef _ALT_PR_IP_CORE_H |
diff --git a/include/linux/fpga/fpga-bridge.h b/include/linux/fpga/fpga-bridge.h index 3694821a6d2d..ce550fcf6360 100644 --- a/include/linux/fpga/fpga-bridge.h +++ b/include/linux/fpga/fpga-bridge.h | |||
@@ -62,8 +62,11 @@ int of_fpga_bridge_get_to_list(struct device_node *np, | |||
62 | struct fpga_image_info *info, | 62 | struct fpga_image_info *info, |
63 | struct list_head *bridge_list); | 63 | struct list_head *bridge_list); |
64 | 64 | ||
65 | int fpga_bridge_register(struct device *dev, const char *name, | 65 | struct fpga_bridge *fpga_bridge_create(struct device *dev, const char *name, |
66 | const struct fpga_bridge_ops *br_ops, void *priv); | 66 | const struct fpga_bridge_ops *br_ops, |
67 | void fpga_bridge_unregister(struct device *dev); | 67 | void *priv); |
68 | void fpga_bridge_free(struct fpga_bridge *br); | ||
69 | int fpga_bridge_register(struct fpga_bridge *br); | ||
70 | void fpga_bridge_unregister(struct fpga_bridge *br); | ||
68 | 71 | ||
69 | #endif /* _LINUX_FPGA_BRIDGE_H */ | 72 | #endif /* _LINUX_FPGA_BRIDGE_H */ |
diff --git a/include/linux/fpga/fpga-mgr.h b/include/linux/fpga/fpga-mgr.h index 3c6de23aabdf..eec7c2478b0d 100644 --- a/include/linux/fpga/fpga-mgr.h +++ b/include/linux/fpga/fpga-mgr.h | |||
@@ -1,20 +1,9 @@ | |||
1 | /* SPDX-License-Identifier: GPL-2.0 */ | ||
1 | /* | 2 | /* |
2 | * FPGA Framework | 3 | * FPGA Framework |
3 | * | 4 | * |
4 | * Copyright (C) 2013-2016 Altera Corporation | 5 | * Copyright (C) 2013-2016 Altera Corporation |
5 | * Copyright (C) 2017 Intel Corporation | 6 | * Copyright (C) 2017 Intel Corporation |
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify it | ||
8 | * under the terms and conditions of the GNU General Public License, | ||
9 | * version 2, as published by the Free Software Foundation. | ||
10 | * | ||
11 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
14 | * more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License along with | ||
17 | * this program. If not, see <http://www.gnu.org/licenses/>. | ||
18 | */ | 7 | */ |
19 | #ifndef _LINUX_FPGA_MGR_H | 8 | #ifndef _LINUX_FPGA_MGR_H |
20 | #define _LINUX_FPGA_MGR_H | 9 | #define _LINUX_FPGA_MGR_H |
@@ -170,9 +159,11 @@ struct fpga_manager *fpga_mgr_get(struct device *dev); | |||
170 | 159 | ||
171 | void fpga_mgr_put(struct fpga_manager *mgr); | 160 | void fpga_mgr_put(struct fpga_manager *mgr); |
172 | 161 | ||
173 | int fpga_mgr_register(struct device *dev, const char *name, | 162 | struct fpga_manager *fpga_mgr_create(struct device *dev, const char *name, |
174 | const struct fpga_manager_ops *mops, void *priv); | 163 | const struct fpga_manager_ops *mops, |
175 | 164 | void *priv); | |
176 | void fpga_mgr_unregister(struct device *dev); | 165 | void fpga_mgr_free(struct fpga_manager *mgr); |
166 | int fpga_mgr_register(struct fpga_manager *mgr); | ||
167 | void fpga_mgr_unregister(struct fpga_manager *mgr); | ||
177 | 168 | ||
178 | #endif /*_LINUX_FPGA_MGR_H */ | 169 | #endif /*_LINUX_FPGA_MGR_H */ |
diff --git a/include/linux/fpga/fpga-region.h b/include/linux/fpga/fpga-region.h index b6520318ab9c..d7071cddd727 100644 --- a/include/linux/fpga/fpga-region.h +++ b/include/linux/fpga/fpga-region.h | |||
@@ -1,3 +1,5 @@ | |||
1 | /* SPDX-License-Identifier: GPL-2.0 */ | ||
2 | |||
1 | #ifndef _FPGA_REGION_H | 3 | #ifndef _FPGA_REGION_H |
2 | #define _FPGA_REGION_H | 4 | #define _FPGA_REGION_H |
3 | 5 | ||
@@ -14,7 +16,6 @@ | |||
14 | * @info: FPGA image info | 16 | * @info: FPGA image info |
15 | * @priv: private data | 17 | * @priv: private data |
16 | * @get_bridges: optional function to get bridges to a list | 18 | * @get_bridges: optional function to get bridges to a list |
17 | * @groups: optional attribute groups. | ||
18 | */ | 19 | */ |
19 | struct fpga_region { | 20 | struct fpga_region { |
20 | struct device dev; | 21 | struct device dev; |
@@ -24,7 +25,6 @@ struct fpga_region { | |||
24 | struct fpga_image_info *info; | 25 | struct fpga_image_info *info; |
25 | void *priv; | 26 | void *priv; |
26 | int (*get_bridges)(struct fpga_region *region); | 27 | int (*get_bridges)(struct fpga_region *region); |
27 | const struct attribute_group **groups; | ||
28 | }; | 28 | }; |
29 | 29 | ||
30 | #define to_fpga_region(d) container_of(d, struct fpga_region, dev) | 30 | #define to_fpga_region(d) container_of(d, struct fpga_region, dev) |
@@ -34,7 +34,12 @@ struct fpga_region *fpga_region_class_find( | |||
34 | int (*match)(struct device *, const void *)); | 34 | int (*match)(struct device *, const void *)); |
35 | 35 | ||
36 | int fpga_region_program_fpga(struct fpga_region *region); | 36 | int fpga_region_program_fpga(struct fpga_region *region); |
37 | int fpga_region_register(struct device *dev, struct fpga_region *region); | 37 | |
38 | int fpga_region_unregister(struct fpga_region *region); | 38 | struct fpga_region |
39 | *fpga_region_create(struct device *dev, struct fpga_manager *mgr, | ||
40 | int (*get_bridges)(struct fpga_region *)); | ||
41 | void fpga_region_free(struct fpga_region *region); | ||
42 | int fpga_region_register(struct fpga_region *region); | ||
43 | void fpga_region_unregister(struct fpga_region *region); | ||
39 | 44 | ||
40 | #endif /* _FPGA_REGION_H */ | 45 | #endif /* _FPGA_REGION_H */ |