__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
/*
 * Copyright (c) 2016 Broadcom Corporation
 *
 * Permission to use, copy, modify, and/or distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
 * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
 * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
 * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */

#ifndef _LINUX_BRCMFMAC_PLATFORM_H
#define _LINUX_BRCMFMAC_PLATFORM_H


#define BRCMFMAC_PDATA_NAME		"brcmfmac"

#define BRCMFMAC_COUNTRY_BUF_SZ		4


/*
 * Platform specific driver functions and data. Through the platform specific
 * device data functions and data can be provided to help the brcmfmac driver to
 * operate with the device in combination with the used platform.
 */


/**
 * Note: the brcmfmac can be loaded as module or be statically built-in into
 * the kernel. If built-in then do note that it uses module_init (and
 * module_exit) routines which equal device_initcall. So if you intend to
 * create a module with the platform specific data for the brcmfmac and have
 * it built-in to the kernel then use a higher initcall then device_initcall
 * (see init.h). If this is not done then brcmfmac will load without problems
 * but will not pickup the platform data.
 *
 * When the driver does not "detect" platform driver data then it will continue
 * without reporting anything and just assume there is no data needed. Which is
 * probably true for most platforms.
 */

/**
 * enum brcmf_bus_type - Bus type identifier. Currently SDIO, USB and PCIE are
 *			 supported.
 */
enum brcmf_bus_type {
	BRCMF_BUSTYPE_SDIO,
	BRCMF_BUSTYPE_USB,
	BRCMF_BUSTYPE_PCIE
};


/**
 * struct brcmfmac_sdio_pd - SDIO Device specific platform data.
 *
 * @txglomsz:		SDIO txglom size. Use 0 if default of driver is to be
 *			used.
 * @drive_strength:	is the preferred drive_strength to be used for the SDIO
 *			pins. If 0 then a default value will be used. This is
 *			the target drive strength, the exact drive strength
 *			which will be used depends on the capabilities of the
 *			device.
 * @oob_irq_supported:	does the board have support for OOB interrupts. SDIO
 *			in-band interrupts are relatively slow and for having
 *			less overhead on interrupt processing an out of band
 *			interrupt can be used. If the HW supports this then
 *			enable this by setting this field to true and configure
 *			the oob related fields.
 * @oob_irq_nr,
 * @oob_irq_flags:	the OOB interrupt information. The values are used for
 *			registering the irq using request_irq function.
 * @broken_sg_support:	flag for broken sg list support of SDIO host controller.
 *			Set this to true if the SDIO host controller has higher
 *			align requirement than 32 bytes for each scatterlist
 *			item.
 * @sd_head_align:	alignment requirement for start of data buffer.
 * @sd_sgentry_align:	length alignment requirement for each sg entry.
 * @reset:		This function can get called if the device communication
 *			broke down. This functionality is particularly useful in
 *			case of SDIO type devices. It is possible to reset a
 *			dongle via sdio data interface, but it requires that
 *			this is fully functional. This function is chip/module
 *			specific and this function should return only after the
 *			complete reset has completed.
 */
struct brcmfmac_sdio_pd {
	int		txglomsz;
	unsigned int	drive_strength;
	bool		oob_irq_supported;
	unsigned int	oob_irq_nr;
	unsigned long	oob_irq_flags;
	bool		broken_sg_support;
	unsigned short	sd_head_align;
	unsigned short	sd_sgentry_align;
	void		(*reset)(void);
};

/**
 * struct brcmfmac_pd_cc_entry - Struct for translating user space country code
 *				 (iso3166) to firmware country code and
 *				 revision.
 *
 * @iso3166:	iso3166 alpha 2 country code string.
 * @cc:		firmware country code string.
 * @rev:	firmware country code revision.
 */
struct brcmfmac_pd_cc_entry {
	char	iso3166[BRCMFMAC_COUNTRY_BUF_SZ];
	char	cc[BRCMFMAC_COUNTRY_BUF_SZ];
	s32	rev;
};

/**
 * struct brcmfmac_pd_cc - Struct for translating country codes as set by user
 *			   space to a country code and rev which can be used by
 *			   firmware.
 *
 * @table_size:	number of entries in table (> 0)
 * @table:	array of 1 or more elements with translation information.
 */
struct brcmfmac_pd_cc {
	int				table_size;
	struct brcmfmac_pd_cc_entry	table[];
};

/**
 * struct brcmfmac_pd_device - Device specific platform data. (id/rev/bus_type)
 *			       is the unique identifier of the device.
 *
 * @id:			ID of the device for which this data is. In case of SDIO
 *			or PCIE this is the chipid as identified by chip.c In
 *			case of USB this is the chipid as identified by the
 *			device query.
 * @rev:		chip revision, see id.
 * @bus_type:		The type of bus. Some chipid/rev exist for different bus
 *			types. Each bus type has its own set of settings.
 * @feature_disable:	Bitmask of features to disable (override), See feature.c
 *			in brcmfmac for details.
 * @country_codes:	If available, pointer to struct for translating country
 *			codes.
 * @bus:		Bus specific (union) device settings. Currently only
 *			SDIO.
 */
struct brcmfmac_pd_device {
	unsigned int		id;
	unsigned int		rev;
	enum brcmf_bus_type	bus_type;
	unsigned int		feature_disable;
	struct brcmfmac_pd_cc	*country_codes;
	union {
		struct brcmfmac_sdio_pd sdio;
	} bus;
};

/**
 * struct brcmfmac_platform_data - BRCMFMAC specific platform data.
 *
 * @power_on:	This function is called by the brcmfmac driver when the module
 *		gets loaded. This can be particularly useful for low power
 *		devices. The platform spcific routine may for example decide to
 *		power up the complete device. If there is no use-case for this
 *		function then provide NULL.
 * @power_off:	This function is called by the brcmfmac when the module gets
 *		unloaded. At this point the devices can be powered down or
 *		otherwise be reset. So if an actual power_off is not supported
 *		but reset is supported by the devices then reset the devices
 *		when this function gets called. This can be particularly useful
 *		for low power devices. If there is no use-case for this
 *		function then provide NULL.
 */
struct brcmfmac_platform_data {
	void	(*power_on)(void);
	void	(*power_off)(void);
	char	*fw_alternative_path;
	int	device_count;
	struct brcmfmac_pd_device devices[];
};


#endif /* _LINUX_BRCMFMAC_PLATFORM_H */

Filemanager

Name Type Size Permission Actions
gpio Folder 0755
media Folder 0755
txx9 Folder 0755
x86 Folder 0755
ad5761.h File 1.24 KB 0644
ad7266.h File 1.33 KB 0644
ad7791.h File 530 B 0644
ad7793.h File 3.75 KB 0644
ad7887.h File 573 B 0644
adau17x1.h File 3.51 KB 0644
adp8860.h File 4.61 KB 0644
adp8870.h File 4.52 KB 0644
ads7828.h File 690 B 0644
amd_qdma.h File 943 B 0644
amd_xdma.h File 781 B 0644
ams-delta-fiq.h File 1.62 KB 0644
apds990x.h File 1.83 KB 0644
arm-ux500-pm.h File 566 B 0644
asoc-imx-ssi.h File 686 B 0644
asoc-kirkwood.h File 145 B 0644
asoc-pxa.h File 1023 B 0644
asoc-s3c.h File 1.28 KB 0644
asoc-ti-mcbsp.h File 820 B 0644
ata-pxa.h File 392 B 0644
atmel.h File 374 B 0644
b53.h File 1.13 KB 0644
bcm7038_wdt.h File 158 B 0644
bcmgenet.h File 402 B 0644
bd6107.h File 235 B 0644
bh1770glc.h File 1.18 KB 0644
brcmfmac.h File 6.63 KB 0644
brcmnand.h File 286 B 0644
clk-da8xx-cfgchip.h File 504 B 0644
clk-fch.h File 287 B 0644
cpuidle-exynos.h File 361 B 0644
cros_ec_chardev.h File 1.08 KB 0644
cros_ec_commands.h File 186.95 KB 0644
cros_ec_proto.h File 10.09 KB 0644
cros_ec_sensorhub.h File 6.11 KB 0644
cros_usbpd_notify.h File 436 B 0644
crypto-ux500.h File 526 B 0644
davinci-cpufreq.h File 556 B 0644
davinci_asp.h File 2.5 KB 0644
dma-dw.h File 2.57 KB 0644
dma-hsu.h File 321 B 0644
dma-iop32x.h File 3.27 KB 0644
dma-mcf-edma.h File 1.12 KB 0644
dma-mv_xor.h File 375 B 0644
dmtimer-omap.h File 1.94 KB 0644
ds620.h File 430 B 0644
dsa.h File 1.61 KB 0644
edma.h File 2.52 KB 0644
elm.h File 1.29 KB 0644
emc2305.h File 545 B 0644
emif_plat.h File 3.92 KB 0644
g762.h File 698 B 0644
gpio-htc-egpio.h File 1.62 KB 0644
gpio-omap.h File 5.53 KB 0644
gpio_backlight.h File 251 B 0644
gpmc-omap.h File 5.75 KB 0644
gsc_hwmon.h File 1.08 KB 0644
hirschmann-hellcreek.h File 719 B 0644
hsmmc-omap.h File 2.09 KB 0644
hwmon-s3c.h File 835 B 0644
i2c-gpio.h File 1.48 KB 0644
i2c-imx.h File 420 B 0644
i2c-mux-gpio.h File 956 B 0644
i2c-mux-reg.h File 1.13 KB 0644
i2c-ocores.h File 644 B 0644
i2c-omap.h File 1.21 KB 0644
i2c-pca-platform.h File 291 B 0644
i2c-pxa.h File 354 B 0644
i2c-s3c2410.h File 2.86 KB 0644
i2c-xiic.h File 853 B 0644
ina2xx.h File 412 B 0644
invensense_mpu6050.h File 865 B 0644
iommu-omap.h File 618 B 0644
isl9305.h File 487 B 0644
itco_wdt.h File 588 B 0644
keyboard-spear.h File 3.81 KB 0644
keypad-omap.h File 1.22 KB 0644
keypad-pxa27x.h File 2.16 KB 0644
lcd-mipid.h File 514 B 0644
leds-lm355x.h File 1.42 KB 0644
leds-lm3642.h File 818 B 0644
leds-lp55xx.h File 2.17 KB 0644
lenovo-yoga-c630.h File 1.32 KB 0644
lm3630a_bl.h File 1.63 KB 0644
lm3639_bl.h File 1.37 KB 0644
lm8323.h File 746 B 0644
lp855x.h File 3.93 KB 0644
lp8727.h File 1.44 KB 0644
lp8755.h File 1.47 KB 0644
ltc4245.h File 331 B 0644
lv5207lp.h File 271 B 0644
max197.h File 615 B 0644
max3421-hcd.h File 808 B 0644
max732x.h File 288 B 0644
mdio-bcm-unimac.h File 306 B 0644
mdio-gpio.h File 273 B 0644
mfd-mcp-sa11x0.h File 272 B 0644
microchip-ksz.h File 1.65 KB 0644
mlxcpld.h File 885 B 0644
mlxreg.h File 7.54 KB 0644
mmc-davinci.h File 736 B 0644
mmc-esdhc-mcf.h File 447 B 0644
mmc-mxcmmc.h File 1.07 KB 0644
mmc-omap.h File 3.22 KB 0644
mmc-pxamci.h File 882 B 0644
mmc-sdhci-s3c.h File 2.22 KB 0644
mmp_dma.h File 350 B 0644
mtd-nand-omap2.h File 2.19 KB 0644
mtd-nand-pxa3xx.h File 812 B 0644
mtd-nand-s3c2410.h File 2.05 KB 0644
mtd-orion_nand.h File 520 B 0644
mv88e6xxx.h File 416 B 0644
mv_usb.h File 900 B 0644
net-cw1200.h File 2.44 KB 0644
omap-twl4030.h File 990 B 0644
omap-wd-timer.h File 901 B 0644
omap1_bl.h File 179 B 0644
omapdss.h File 897 B 0644
pca953x.h File 360 B 0644
phy-da8xx-usb.h File 474 B 0644
pinctrl-single.h File 425 B 0644
pm33xx.h File 2.25 KB 0644
pxa2xx_udc.h File 1.08 KB 0644
pxa_sdhci.h File 1.45 KB 0644
regulator-haptic.h File 691 B 0644
s3c-hsotg.h File 1.04 KB 0644
sa11x0-serial.h File 856 B 0644
sc18is602.h File 401 B 0644
sdhci-pic32.h File 360 B 0644
serial-omap.h File 1 KB 0644
serial-sccnxp.h File 1.89 KB 0644
sgi-w1.h File 222 B 0644
sh_mmcif.h File 5.42 KB 0644
shmob_drm.h File 822 B 0644
shtc1.h File 303 B 0644
si5351.h File 3.65 KB 0644
simplefb.h File 2.21 KB 0644
spi-davinci.h File 2.25 KB 0644
spi-mt65xx.h File 361 B 0644
spi-omap2-mcspi.h File 406 B 0644
spi-s3c64xx.h File 1.57 KB 0644
st_sensors_pdata.h File 978 B 0644
tda9950.h File 282 B 0644
ti-prm.h File 524 B 0644
ti-sysc.h File 4.99 KB 0644
tmio.h File 1.72 KB 0644
touchscreen-s3c2410.h File 595 B 0644
tps68470.h File 785 B 0644
tsc2007.h File 655 B 0644
tsl2772.h File 3.73 KB 0644
uio_dmem_genirq.h File 397 B 0644
usb-davinci.h File 596 B 0644
usb-ehci-orion.h File 440 B 0644
usb-musb-ux500.h File 558 B 0644
usb-ohci-pxa27x.h File 925 B 0644
usb-ohci-s3c2410.h File 941 B 0644
usb-omap.h File 1.93 KB 0644
usb-omap1.h File 1.53 KB 0644
usb3503.h File 431 B 0644
video-ep93xx.h File 1.49 KB 0644
video-pxafb.h File 6.05 KB 0644
video_s3c.h File 1.71 KB 0644
voltage-omap.h File 1.08 KB 0644
wilco-ec.h File 6.91 KB 0644
wiznet.h File 511 B 0644
wkup_m3.h File 542 B 0644
xilinx-ll-temac.h File 1.29 KB 0644
xtalk-bridge.h File 437 B 0644
Filemanager