__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
/* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */
/*
* Copyright (C) 2017-2020 Mellanox Technologies Ltd.
*/
#ifndef __LINUX_PLATFORM_DATA_MLXREG_H
#define __LINUX_PLATFORM_DATA_MLXREG_H
#define MLXREG_CORE_LABEL_MAX_SIZE 32
#define MLXREG_CORE_WD_FEATURE_NOWAYOUT BIT(0)
#define MLXREG_CORE_WD_FEATURE_START_AT_BOOT BIT(1)
/**
* enum mlxreg_wdt_type - type of HW watchdog
*
* TYPE1 HW watchdog implementation exist in old systems.
* All new systems have TYPE2 HW watchdog.
* TYPE3 HW watchdog can exist on all systems with new CPLD.
* TYPE3 is selected by WD capability bit.
*/
enum mlxreg_wdt_type {
MLX_WDT_TYPE1,
MLX_WDT_TYPE2,
MLX_WDT_TYPE3,
};
/**
* enum mlxreg_hotplug_kind - kind of hotplug entry
*
* @MLXREG_HOTPLUG_DEVICE_NA: do not care;
* @MLXREG_HOTPLUG_LC_PRESENT: entry for line card presence in/out events;
* @MLXREG_HOTPLUG_LC_VERIFIED: entry for line card verification status events
* coming after line card security signature validation;
* @MLXREG_HOTPLUG_LC_POWERED: entry for line card power on/off events;
* @MLXREG_HOTPLUG_LC_SYNCED: entry for line card synchronization events, coming
* after hardware-firmware synchronization handshake;
* @MLXREG_HOTPLUG_LC_READY: entry for line card ready events, indicating line card
PHYs ready / unready state;
* @MLXREG_HOTPLUG_LC_ACTIVE: entry for line card active events, indicating firmware
* availability / unavailability for the ports on line card;
* @MLXREG_HOTPLUG_LC_THERMAL: entry for line card thermal shutdown events, positive
* event indicates that system should power off the line
* card for which this event has been received;
*/
enum mlxreg_hotplug_kind {
MLXREG_HOTPLUG_DEVICE_NA = 0,
MLXREG_HOTPLUG_LC_PRESENT = 1,
MLXREG_HOTPLUG_LC_VERIFIED = 2,
MLXREG_HOTPLUG_LC_POWERED = 3,
MLXREG_HOTPLUG_LC_SYNCED = 4,
MLXREG_HOTPLUG_LC_READY = 5,
MLXREG_HOTPLUG_LC_ACTIVE = 6,
MLXREG_HOTPLUG_LC_THERMAL = 7,
};
/**
* enum mlxreg_hotplug_device_action - hotplug device action required for
* driver's connectivity
*
* @MLXREG_HOTPLUG_DEVICE_DEFAULT_ACTION: probe device for 'on' event, remove
* for 'off' event;
* @MLXREG_HOTPLUG_DEVICE_PLATFORM_ACTION: probe platform device for 'on'
* event, remove for 'off' event;
* @MLXREG_HOTPLUG_DEVICE_NO_ACTION: no connectivity action is required;
*/
enum mlxreg_hotplug_device_action {
MLXREG_HOTPLUG_DEVICE_DEFAULT_ACTION = 0,
MLXREG_HOTPLUG_DEVICE_PLATFORM_ACTION = 1,
MLXREG_HOTPLUG_DEVICE_NO_ACTION = 2,
};
/**
* struct mlxreg_core_hotplug_notifier - hotplug notifier block:
*
* @identity: notifier identity name;
* @handle: user handle to be passed by user handler function;
* @user_handler: user handler function associated with the event;
*/
struct mlxreg_core_hotplug_notifier {
char identity[MLXREG_CORE_LABEL_MAX_SIZE];
void *handle;
int (*user_handler)(void *handle, enum mlxreg_hotplug_kind kind, u8 action);
};
/**
* struct mlxreg_hotplug_device - I2C device data:
*
* @adapter: I2C device adapter;
* @client: I2C device client;
* @brdinfo: device board information;
* @nr: I2C device adapter number, to which device is to be attached;
* @pdev: platform device, if device is instantiated as a platform device;
* @action: action to be performed upon event receiving;
* @handle: user handle to be passed by user handler function;
* @user_handler: user handler function associated with the event;
* @notifier: pointer to event notifier block;
*
* Structure represents I2C hotplug device static data (board topology) and
* dynamic data (related kernel objects handles).
*/
struct mlxreg_hotplug_device {
struct i2c_adapter *adapter;
struct i2c_client *client;
struct i2c_board_info *brdinfo;
int nr;
struct platform_device *pdev;
enum mlxreg_hotplug_device_action action;
void *handle;
int (*user_handler)(void *handle, enum mlxreg_hotplug_kind kind, u8 action);
struct mlxreg_core_hotplug_notifier *notifier;
};
/**
* struct mlxreg_core_data - attributes control data:
*
* @label: attribute label;
* @reg: attribute register;
* @mask: attribute access mask;
* @bit: attribute effective bit;
* @capability: attribute capability register;
* @reg_prsnt: attribute presence register;
* @reg_sync: attribute synch register;
* @reg_pwr: attribute power register;
* @reg_ena: attribute enable register;
* @mode: access mode;
* @np - pointer to node platform associated with attribute;
* @hpdev - hotplug device data;
* @notifier: pointer to event notifier block;
* @health_cntr: dynamic device health indication counter;
* @attached: true if device has been attached after good health indication;
* @regnum: number of registers occupied by multi-register attribute;
* @slot: slot number, at which device is located;
* @secured: if set indicates that entry access is secured;
*/
struct mlxreg_core_data {
char label[MLXREG_CORE_LABEL_MAX_SIZE];
u32 reg;
u32 mask;
u32 bit;
u32 capability;
u32 reg_prsnt;
u32 reg_sync;
u32 reg_pwr;
u32 reg_ena;
umode_t mode;
struct device_node *np;
struct mlxreg_hotplug_device hpdev;
struct mlxreg_core_hotplug_notifier *notifier;
u32 health_cntr;
bool attached;
u8 regnum;
u8 slot;
u8 secured;
};
/**
* struct mlxreg_core_item - same type components controlled by the driver:
*
* @data: component data;
* @kind: kind of hotplug attribute;
* @aggr_mask: group aggregation mask;
* @reg: group interrupt status register;
* @mask: group interrupt mask;
* @capability: group capability register;
* @cache: last status value for elements fro the same group;
* @count: number of available elements in the group;
* @ind: element's index inside the group;
* @inversed: if 0: 0 for signal status is OK, if 1 - 1 is OK;
* @health: true if device has health indication, false in other case;
*/
struct mlxreg_core_item {
struct mlxreg_core_data *data;
enum mlxreg_hotplug_kind kind;
u32 aggr_mask;
u32 reg;
u32 mask;
u32 capability;
u32 cache;
u8 count;
u8 ind;
u8 inversed;
u8 health;
};
/**
* struct mlxreg_core_platform_data - platform data:
*
* @data: instance private data;
* @regmap: register map of parent device;
* @counter: number of instances;
* @features: supported features of device;
* @version: implementation version;
* @identity: device identity name;
* @capability: device capability register;
*/
struct mlxreg_core_platform_data {
struct mlxreg_core_data *data;
void *regmap;
int counter;
u32 features;
u32 version;
char identity[MLXREG_CORE_LABEL_MAX_SIZE];
u32 capability;
};
/**
* struct mlxreg_core_hotplug_platform_data - hotplug platform data:
*
* @items: same type components with the hotplug capability;
* @irq: platform interrupt number;
* @regmap: register map of parent device;
* @counter: number of the components with the hotplug capability;
* @cell: location of top aggregation interrupt register;
* @mask: top aggregation interrupt common mask;
* @cell_low: location of low aggregation interrupt register;
* @mask_low: low aggregation interrupt common mask;
* @deferred_nr: I2C adapter number must be exist prior probing execution;
* @shift_nr: I2C adapter numbers must be incremented by this value;
* @addr: mapped resource address;
* @handle: handle to be passed by callback;
* @completion_notify: callback to notify when platform driver probing is done;
*/
struct mlxreg_core_hotplug_platform_data {
struct mlxreg_core_item *items;
int irq;
void *regmap;
int counter;
u32 cell;
u32 mask;
u32 cell_low;
u32 mask_low;
int deferred_nr;
int shift_nr;
void __iomem *addr;
void *handle;
int (*completion_notify)(void *handle, int id);
};
#endif /* __LINUX_PLATFORM_DATA_MLXREG_H */
| 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 |
|