blob: 07bb1125e759e12106bf475ca1f037c831303b44 [file] [log] [blame]
/* Copyright (c) 2017-2018 The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*/
#ifndef __BG_GLINK_H_
#define __BG_GLINK_H_
#include <linux/kernel.h>
#include <linux/platform_device.h>
#include <linux/kthread.h>
#include <linux/uaccess.h>
typedef int (*bg_glink_cb_fn)(void *buf, int len);
struct bg_glink_ch_cfg {
char ch_name[100];
int num_of_intents;
uint32_t *intents_size;
};
int bg_cdc_glink_write(void *ch_info, void *data,
int len);
void *bg_cdc_channel_open(struct platform_device *pdev,
struct bg_glink_ch_cfg *ch_cfg,
bg_glink_cb_fn func);
int bg_cdc_channel_close(struct platform_device *pdev,
void *ch_info);
#endif