]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blame - drivers/staging/unisys/visorbus/visorbus_private.h
staging: unisys: check the whole channel instead of just guid for match
[mirror_ubuntu-hirsute-kernel.git] / drivers / staging / unisys / visorbus / visorbus_private.h
CommitLineData
eb30ed58 1/*
6f14cc18 2 * Copyright (C) 2010 - 2015 UNISYS CORPORATION
12e364b9
KC
3 * All rights reserved.
4 *
6f14cc18
BR
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms and conditions of the GNU General Public License,
7 * version 2, as published by the Free Software Foundation.
12e364b9
KC
8 *
9 * This program is distributed in the hope that it will be useful, but
10 * WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or
12 * NON INFRINGEMENT. See the GNU General Public License for more
13 * details.
14 */
15
7339cb09
DB
16#ifndef __VISORBUS_PRIVATE_H__
17#define __VISORBUS_PRIVATE_H__
12e364b9 18
90addb02 19#include <linux/uuid.h>
e82ed633 20#include <linux/utsname.h>
90addb02 21
12e364b9 22#include "controlvmchannel.h"
b6d0fa15 23#include "vbuschannel.h"
ab3807d9 24#include "visorbus.h"
43c0ab0e 25
69a4d1e7
DK
26struct visor_device *visorbus_get_device_by_id(u32 bus_no, u32 dev_no,
27 struct visor_device *from);
fdf5b9ac 28int visorbus_create_instance(struct visor_device *dev);
a7093ba1 29void visorbus_remove_instance(struct visor_device *bus_info);
51c0f81c 30int create_visor_device(struct visor_device *dev_info);
b74856b4 31void remove_visor_device(struct visor_device *dev_info);
c0b44136
SW
32int visorchipset_device_pause(struct visor_device *dev_info);
33int visorchipset_device_resume(struct visor_device *dev_info);
76956aa7 34void visorbus_response(struct visor_device *p, int response, int controlvm_id);
722e73d5
SW
35void visorbus_device_changestate_response(struct visor_device *p, int response,
36 struct visor_segment_state state);
55c67dca 37int visorbus_init(void);
c79b28f7 38void visorbus_exit(void);
e9b18f3b 39
90bb5c1f 40/* visorchannel access functions */
d7f1589a
DK
41struct visorchannel *visorchannel_create(u64 physaddr, gfp_t gfp,
42 const guid_t *guid);
43struct visorchannel *visorchannel_create_with_lock(u64 physaddr, gfp_t gfp,
44 const guid_t *guid);
e9b18f3b
DB
45void visorchannel_destroy(struct visorchannel *channel);
46int visorchannel_read(struct visorchannel *channel, ulong offset,
9ed146cd 47 void *dest, ulong nbytes);
e9b18f3b 48int visorchannel_write(struct visorchannel *channel, ulong offset,
9ed146cd 49 void *dest, ulong nbytes);
e9b18f3b
DB
50u64 visorchannel_get_physaddr(struct visorchannel *channel);
51ulong visorchannel_get_nbytes(struct visorchannel *channel);
52char *visorchannel_id(struct visorchannel *channel, char *s);
53char *visorchannel_zoneid(struct visorchannel *channel, char *s);
54u64 visorchannel_get_clientpartition(struct visorchannel *channel);
55int visorchannel_set_clientpartition(struct visorchannel *channel,
56 u64 partition_handle);
b32c5cb8 57char *visorchannel_guid_id(const guid_t *guid, char *s);
5da77f37 58void *visorchannel_get_header(struct visorchannel *channel);
12e364b9 59#endif