static SENSOR_DEVICE_ATTR()

in platform/barefoot/sonic-platform-modules-ingrasys/s9280-64x/modules/ingrasys_s9280_64x_i2c_cpld.c [226:416]


static SENSOR_DEVICE_ATTR(cpld_access_register, S_IWUSR | S_IRUGO,
        read_access_register, write_access_register, CPLD_ACCESS_REG);
static SENSOR_DEVICE_ATTR(cpld_register_value, S_IWUSR | S_IRUGO,
        read_register_value, write_register_value, CPLD_REGISTER_VAL);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_start, S_IRUGO,
            get_qsfp_port_start, NULL, CPLD_PORT_START);
static SENSOR_DEVICE_ATTR(cpld_qsfp_ports, S_IRUGO,
                get_qsfp_ports, NULL, CPLD_PORTS);
static SENSOR_DEVICE_ATTR(cpld_version, S_IRUGO,
                read_cpld_version, NULL, CPLD_VERSION);
static SENSOR_DEVICE_ATTR(cpld_id, S_IRUGO, read_cpld_id, NULL, CPLD_ID);
static SENSOR_DEVICE_ATTR(cpld_board_type, S_IRUGO,
                read_board_type, NULL, CPLD_BOARD_TYPE);
static SENSOR_DEVICE_ATTR(cpld_ext_board_type, S_IRUGO,
        read_ext_board_type, NULL, CPLD_EXT_BOARD_TYPE);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_1, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_1);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_2, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_2);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_3, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_3);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_4, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_4);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_5, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_5);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_6, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_6);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_7, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_7);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_8, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_8);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_9, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_9);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_10, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_10);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_11, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_11);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_12, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_12);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_status_13, S_IRUGO,
        read_qsfp_port_status, NULL, CPLD_QSFP_PORT_STATUS_13);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_1, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config, 
                CPLD_QSFP_PORT_CONFIG_1);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_2, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_2);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_3, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_3);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_4, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_4);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_5, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_5);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_6, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_6);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_7, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_7);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_8, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_8);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_9, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_9);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_10, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_10);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_11, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_11);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_12, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_12);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_config_13, S_IWUSR | S_IRUGO,
                read_qsfp_port_config, write_qsfp_port_config,
                CPLD_QSFP_PORT_CONFIG_13);
static SENSOR_DEVICE_ATTR(cpld_qsfp_port_interrupt, S_IRUGO,
        read_qsfp_port_interrupt, NULL, CPLD_QSFP_PORT_INTERRUPT);
static SENSOR_DEVICE_ATTR(cpld_sfp_port_status, S_IRUGO,
            read_sfp_port_status, NULL, CPLD_SFP_PORT_STATUS);
static SENSOR_DEVICE_ATTR(cpld_sfp_port_config, S_IWUSR | S_IRUGO,
    read_sfp_port_config, write_sfp_port_config, CPLD_SFP_PORT_CONFIG);
static SENSOR_DEVICE_ATTR(cpld_10gmux_config, S_IWUSR | S_IRUGO,
                read_10gmux_config, write_10gmux_config,
                CPLD_10GMUX_CONFIG);
static SENSOR_DEVICE_ATTR(cpld_bmc_status, S_IRUGO,
                read_bmc_status, NULL, CPLD_BMC_STATUS);
static SENSOR_DEVICE_ATTR(cpld_bmc_watchdog, S_IWUSR | S_IRUGO,
                read_bmc_watchdog, write_bmc_watchdog,
                CPLD_BMC_WATCHDOG);
static SENSOR_DEVICE_ATTR(cpld_usb_status, S_IRUGO,
                read_usb_status, NULL, CPLD_USB_STATUS);
static SENSOR_DEVICE_ATTR(cpld_reset_control, S_IWUSR | S_IRUGO,
                read_reset_control, write_reset_control,
                CPLD_BMC_WATCHDOG);
static SENSOR_DEVICE_ATTR(cpld_sfp_led, S_IWUSR | S_IRUGO,
                read_sfp_led, write_sfp_led, CPLD_SFP_LED);
static SENSOR_DEVICE_ATTR(cpld_sfp_led_blink, S_IWUSR | S_IRUGO,
                read_sfp_led_blink, write_sfp_led_blink, CPLD_SFP_LED_BLINK);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_1, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_1);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_2, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_2);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_3, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_3);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_4, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_4);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_5, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_5);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_6, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_6);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_7, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_7);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_8, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_8);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_9, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_9);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_10, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_10);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_11, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_11);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_12, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_12);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_13, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_13);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_14, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_14);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_15, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_15);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_16, S_IWUSR | S_IRUGO,
                read_qsfp_led, write_qsfp_led, CPLD_QSFP_LED_16);
static SENSOR_DEVICE_ATTR(cpld_qsfp_led_blink, S_IWUSR | S_IRUGO,
                read_qsfp_led_blink, write_qsfp_led_blink, CPLD_QSFP_LED_BLINK);
static SENSOR_DEVICE_ATTR(cpld_rtmr_reset, S_IWUSR | S_IRUGO,
                read_rtmr_reset, write_rtmr_reset, CPLD_RTMR_RESET);
static SENSOR_DEVICE_ATTR(cpld_rov_status, S_IRUGO,
                read_rov_status, NULL, CPLD_ROV_STATUS);

/* define support attributes of cpldx , total 5 */
/* cpld 1 */
static struct attribute *s9280_64x_cpld1_attributes[] = {
    &sensor_dev_attr_cpld_access_register.dev_attr.attr,
    &sensor_dev_attr_cpld_register_value.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_start.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_ports.dev_attr.attr,
    &sensor_dev_attr_cpld_version.dev_attr.attr,
    &sensor_dev_attr_cpld_id.dev_attr.attr,
    &sensor_dev_attr_cpld_board_type.dev_attr.attr,
    &sensor_dev_attr_cpld_ext_board_type.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_1.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_2.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_3.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_4.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_5.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_6.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_7.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_8.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_9.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_10.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_11.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_status_12.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_1.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_2.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_3.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_4.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_5.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_6.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_7.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_8.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_9.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_10.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_11.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_config_12.dev_attr.attr,
    &sensor_dev_attr_cpld_qsfp_port_interrupt.dev_attr.attr,
    &sensor_dev_attr_cpld_sfp_port_status.dev_attr.attr,
    &sensor_dev_attr_cpld_sfp_port_config.dev_attr.attr,
    &sensor_dev_attr_cpld_10gmux_config.dev_attr.attr,
    &sensor_dev_attr_cpld_bmc_status.dev_attr.attr,
    &sensor_dev_attr_cpld_bmc_watchdog.dev_attr.attr,
    &sensor_dev_attr_cpld_usb_status.dev_attr.attr,
    &sensor_dev_attr_cpld_reset_control.dev_attr.attr,    
    &sensor_dev_attr_cpld_sfp_led.dev_attr.attr,
    &sensor_dev_attr_cpld_sfp_led_blink.dev_attr.attr,
    &sensor_dev_attr_cpld_rtmr_reset.dev_attr.attr,
    &sensor_dev_attr_cpld_rov_status.dev_attr.attr,
    NULL
};