cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

net-cw1200.h (2764B)


      1/* SPDX-License-Identifier: GPL-2.0-only */
      2/*
      3 * Copyright (C) ST-Ericsson SA 2011
      4 *
      5 * Author: Dmitry Tarnyagin <dmitry.tarnyagin@stericsson.com>
      6 */
      7
      8#ifndef CW1200_PLAT_H_INCLUDED
      9#define CW1200_PLAT_H_INCLUDED
     10
     11struct cw1200_platform_data_spi {
     12	u8 spi_bits_per_word;           /* REQUIRED */
     13	u16 ref_clk;                    /* REQUIRED (in KHz) */
     14
     15	/* All others are optional */
     16	bool have_5ghz;
     17	int reset;                     /* GPIO to RSTn signal (0 disables) */
     18	int powerup;                   /* GPIO to POWERUP signal (0 disables) */
     19	int (*power_ctrl)(const struct cw1200_platform_data_spi *pdata,
     20			  bool enable); /* Control 3v3 / 1v8 supply */
     21	int (*clk_ctrl)(const struct cw1200_platform_data_spi *pdata,
     22			bool enable); /* Control CLK32K */
     23	const u8 *macaddr;  /* if NULL, use cw1200_mac_template module parameter */
     24	const char *sdd_file;  /* if NULL, will use default for detected hw type */
     25};
     26
     27struct cw1200_platform_data_sdio {
     28	u16 ref_clk;                    /* REQUIRED (in KHz) */
     29
     30	/* All others are optional */
     31	bool have_5ghz;
     32	bool no_nptb;       /* SDIO hardware does not support non-power-of-2-blocksizes */
     33	int reset;          /* GPIO to RSTn signal (0 disables) */
     34	int powerup;        /* GPIO to POWERUP signal (0 disables) */
     35	int irq;            /* IRQ line or 0 to use SDIO IRQ */
     36	int (*power_ctrl)(const struct cw1200_platform_data_sdio *pdata,
     37			  bool enable); /* Control 3v3 / 1v8 supply */
     38	int (*clk_ctrl)(const struct cw1200_platform_data_sdio *pdata,
     39			bool enable); /* Control CLK32K */
     40	const u8 *macaddr;  /* if NULL, use cw1200_mac_template module parameter */
     41	const char *sdd_file;  /* if NULL, will use default for detected hw type */
     42};
     43
     44
     45/* An example of SPI support in your board setup file:
     46
     47   static struct cw1200_platform_data_spi cw1200_platform_data = {
     48       .ref_clk = 38400,
     49       .spi_bits_per_word = 16,
     50       .reset = GPIO_RF_RESET,
     51       .powerup = GPIO_RF_POWERUP,
     52       .macaddr = wifi_mac_addr,
     53       .sdd_file = "sdd_sagrad_1091_1098.bin",
     54  };
     55  static struct spi_board_info myboard_spi_devices[] __initdata = {
     56       {
     57               .modalias = "cw1200_wlan_spi",
     58               .max_speed_hz = 52000000,
     59               .bus_num = 0,
     60               .irq = WIFI_IRQ,
     61               .platform_data = &cw1200_platform_data,
     62               .chip_select = 0,
     63       },
     64  };
     65
     66 */
     67
     68/* An example of SDIO support in your board setup file:
     69
     70  static struct cw1200_platform_data_sdio my_cw1200_platform_data = {
     71	.ref_clk = 38400,
     72	.have_5ghz = false,
     73	.sdd_file = "sdd_myplatform.bin",
     74  };
     75  cw1200_sdio_set_platform_data(&my_cw1200_platform_data);
     76
     77 */
     78
     79void __init cw1200_sdio_set_platform_data(struct cw1200_platform_data_sdio *pdata);
     80
     81#endif /* CW1200_PLAT_H_INCLUDED */