linux/drivers/staging/wfx/main.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-only */
   2/*
   3 * Device probe and register.
   4 *
   5 * Copyright (c) 2017-2019, Silicon Laboratories, Inc.
   6 * Copyright (c) 2010, ST-Ericsson
   7 * Copyright (c) 2006, Michael Wu <flamingice@sourmilk.net>
   8 * Copyright 2004-2006 Jean-Baptiste Note <jbnote@gmail.com>, et al.
   9 */
  10#ifndef WFX_MAIN_H
  11#define WFX_MAIN_H
  12
  13#include <linux/device.h>
  14#include <linux/gpio/consumer.h>
  15
  16#include "bus.h"
  17#include "hif_api_general.h"
  18
  19struct wfx_dev;
  20
  21struct wfx_platform_data {
  22        /* Keyset and ".sec" extention will appended to this string */
  23        const char *file_fw;
  24        const char *file_pds;
  25        struct gpio_desc *gpio_wakeup;
  26        /*
  27         * if true HIF D_out is sampled on the rising edge of the clock
  28         * (intended to be used in 50Mhz SDIO)
  29         */
  30        bool use_rising_clk;
  31};
  32
  33struct wfx_dev *wfx_init_common(struct device *dev,
  34                                const struct wfx_platform_data *pdata,
  35                                const struct hwbus_ops *hwbus_ops,
  36                                void *hwbus_priv);
  37void wfx_free_common(struct wfx_dev *wdev);
  38
  39int wfx_probe(struct wfx_dev *wdev);
  40void wfx_release(struct wfx_dev *wdev);
  41
  42struct gpio_desc *wfx_get_gpio(struct device *dev, int override,
  43                               const char *label);
  44bool wfx_api_older_than(struct wfx_dev *wdev, int major, int minor);
  45int wfx_send_pds(struct wfx_dev *wdev, unsigned char *buf, size_t len);
  46
  47#endif
  48