Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit df95a3bd authored by Gwendal Grignou's avatar Gwendal Grignou Committed by Lee Jones
Browse files

mfd: cros_ec: set comments properly

parent c9f69d8b
Loading
Loading
Loading
Loading
+40 −25
Original line number Original line Diff line number Diff line
@@ -42,13 +42,16 @@
/* Protocol version 2 */
/* Protocol version 2 */
#define EC_LPC_ADDR_HOST_ARGS    0x800  /* And 0x801, 0x802, 0x803 */
#define EC_LPC_ADDR_HOST_ARGS    0x800  /* And 0x801, 0x802, 0x803 */
#define EC_LPC_ADDR_HOST_PARAM   0x804  /* For version 2 params; size is
#define EC_LPC_ADDR_HOST_PARAM   0x804  /* For version 2 params; size is
					 * EC_PROTO2_MAX_PARAM_SIZE */
					 * EC_PROTO2_MAX_PARAM_SIZE
					 */
/* Protocol version 3 */
/* Protocol version 3 */
#define EC_LPC_ADDR_HOST_PACKET  0x800  /* Offset of version 3 packet */
#define EC_LPC_ADDR_HOST_PACKET  0x800  /* Offset of version 3 packet */
#define EC_LPC_HOST_PACKET_SIZE  0x100  /* Max size of version 3 packet */
#define EC_LPC_HOST_PACKET_SIZE  0x100  /* Max size of version 3 packet */


/* The actual block is 0x800-0x8ff, but some BIOSes think it's 0x880-0x8ff
/*
 * and they tell the kernel that so we have to think of it as two parts. */
 * The actual block is 0x800-0x8ff, but some BIOSes think it's 0x880-0x8ff
 * and they tell the kernel that so we have to think of it as two parts.
 */
#define EC_HOST_CMD_REGION0    0x800
#define EC_HOST_CMD_REGION0    0x800
#define EC_HOST_CMD_REGION1    0x880
#define EC_HOST_CMD_REGION1    0x880
#define EC_HOST_CMD_REGION_SIZE 0x80
#define EC_HOST_CMD_REGION_SIZE 0x80
@@ -324,7 +327,7 @@ struct ec_lpc_host_args {
 * If EC gets a command and this flag is not set, this is an old-style command.
 * If EC gets a command and this flag is not set, this is an old-style command.
 * Command version is 0 and params from host are at EC_LPC_ADDR_OLD_PARAM with
 * Command version is 0 and params from host are at EC_LPC_ADDR_OLD_PARAM with
 * unknown length.  EC must respond with an old-style response (that is,
 * unknown length.  EC must respond with an old-style response (that is,
 * withouth setting EC_HOST_ARGS_FLAG_TO_HOST).
 * without setting EC_HOST_ARGS_FLAG_TO_HOST).
 */
 */
#define EC_HOST_ARGS_FLAG_FROM_HOST 0x01
#define EC_HOST_ARGS_FLAG_FROM_HOST 0x01
/*
/*
@@ -511,7 +514,7 @@ struct ec_host_response {
 * Notes on commands:
 * Notes on commands:
 *
 *
 * Each command is an 16-bit command value.  Commands which take params or
 * Each command is an 16-bit command value.  Commands which take params or
 * return response data specify structs for that data.  If no struct is
 * return response data specify structures for that data.  If no structure is
 * specified, the command does not input or output data, respectively.
 * specified, the command does not input or output data, respectively.
 * Parameter/response length is implicit in the structs.  Some underlying
 * Parameter/response length is implicit in the structs.  Some underlying
 * communication protocols (I2C, SPI) may add length or checksum headers, but
 * communication protocols (I2C, SPI) may add length or checksum headers, but
@@ -684,7 +687,7 @@ struct ec_response_get_cmd_versions {
} __packed;
} __packed;


/*
/*
 * Check EC communcations status (busy). This is needed on i2c/spi but not
 * Check EC communications status (busy). This is needed on i2c/spi but not
 * on lpc since it has its own out-of-band busy indicator.
 * on lpc since it has its own out-of-band busy indicator.
 *
 *
 * lpc must read the status from the command register. Attempting this on
 * lpc must read the status from the command register. Attempting this on
@@ -721,7 +724,7 @@ struct ec_response_test_protocol {
	uint8_t buf[32];
	uint8_t buf[32];
} __packed;
} __packed;


/* Get prococol information */
/* Get protocol information */
#define EC_CMD_GET_PROTOCOL_INFO	0x0b
#define EC_CMD_GET_PROTOCOL_INFO	0x0b


/* Flags for ec_response_get_protocol_info.flags */
/* Flags for ec_response_get_protocol_info.flags */
@@ -767,7 +770,7 @@ struct ec_response_get_set_value {
	uint32_t value;
	uint32_t value;
} __packed;
} __packed;


/* More than one command can use these structs to get/set paramters. */
/* More than one command can use these structs to get/set parameters. */
#define EC_CMD_GSV_PAUSE_IN_S5	0x0c
#define EC_CMD_GSV_PAUSE_IN_S5	0x0c


/*****************************************************************************/
/*****************************************************************************/
@@ -917,8 +920,10 @@ struct ec_response_flash_info {
	uint32_t protect_block_size;
	uint32_t protect_block_size;
} __packed;
} __packed;


/* Flags for version 1+ flash info command */
/*
/* EC flash erases bits to 0 instead of 1 */
 * Flags for version 1+ flash info command
 * EC flash erases bits to 0 instead of 1.
 */
#define EC_FLASH_INFO_ERASE_TO_0 (1 << 0)
#define EC_FLASH_INFO_ERASE_TO_0 (1 << 0)


/**
/**
@@ -941,7 +946,8 @@ struct ec_response_flash_info {
 * fields following.
 * fields following.
 *
 *
 * gcc anonymous structs don't seem to get along with the __packed directive;
 * gcc anonymous structs don't seem to get along with the __packed directive;
 * if they did we'd define the version 0 struct as a sub-struct of this one.
 * if they did we'd define the version 0 structure as a sub-structure of this
 * one.
 */
 */
struct ec_response_flash_info_1 {
struct ec_response_flash_info_1 {
	/* Version 0 fields; see above for description */
	/* Version 0 fields; see above for description */
@@ -1036,7 +1042,7 @@ struct ec_params_flash_erase {
 * re-requesting the desired flags, or by a hard reset if that fails.
 * re-requesting the desired flags, or by a hard reset if that fails.
 */
 */
#define EC_FLASH_PROTECT_ERROR_INCONSISTENT (1 << 5)
#define EC_FLASH_PROTECT_ERROR_INCONSISTENT (1 << 5)
/* Entile flash code protected when the EC boots */
/* Entire flash code protected when the EC boots */
#define EC_FLASH_PROTECT_ALL_AT_BOOT        (1 << 6)
#define EC_FLASH_PROTECT_ALL_AT_BOOT        (1 << 6)


/**
/**
@@ -1629,7 +1635,7 @@ struct ec_response_motion_sensor_data {
	union {
	union {
		int16_t             data[3];
		int16_t             data[3];
		struct {
		struct {
			uint16_t    rsvd;
			uint16_t    reserved;
			uint32_t    timestamp;
			uint32_t    timestamp;
		} __packed;
		} __packed;
		struct {
		struct {
@@ -1828,7 +1834,7 @@ struct ec_response_rtc {
#define EC_CMD_RTC_SET_VALUE 0x46
#define EC_CMD_RTC_SET_VALUE 0x46
#define EC_CMD_RTC_SET_ALARM 0x47
#define EC_CMD_RTC_SET_ALARM 0x47


/* Pass as param to SET_ALARM to clear the current alarm */
/* Pass as time param to SET_ALARM to clear the current alarm */
#define EC_RTC_ALARM_CLEAR 0
#define EC_RTC_ALARM_CLEAR 0


/*****************************************************************************/
/*****************************************************************************/
@@ -1914,7 +1920,8 @@ enum ec_temp_thresholds {
	EC_TEMP_THRESH_COUNT
	EC_TEMP_THRESH_COUNT
};
};


/* Thermal configuration for one temperature sensor. Temps are in degrees K.
/*
 * Thermal configuration for one temperature sensor. Temps are in degrees K.
 * Zero values will be silently ignored by the thermal task.
 * Zero values will be silently ignored by the thermal task.
 */
 */
struct ec_thermal_config {
struct ec_thermal_config {
@@ -1929,8 +1936,10 @@ struct ec_params_thermal_get_threshold_v1 {
} __packed;
} __packed;
/* This returns a struct ec_thermal_config */
/* This returns a struct ec_thermal_config */


/* Version 1 - set config for one sensor.
/*
 * Use read-modify-write for best results! */
 * Version 1 - set config for one sensor.
 * Use read-modify-write for best results!
 */
struct ec_params_thermal_set_threshold_v1 {
struct ec_params_thermal_set_threshold_v1 {
	uint32_t sensor_num;
	uint32_t sensor_num;
	struct ec_thermal_config cfg;
	struct ec_thermal_config cfg;
@@ -2079,7 +2088,12 @@ enum mkbp_config_valid {
	EC_MKBP_VALID_FIFO_MAX_DEPTH		= 1 << 7,
	EC_MKBP_VALID_FIFO_MAX_DEPTH		= 1 << 7,
};
};


/* Configuration for our key scanning algorithm */
/*
 * Configuration for our key scanning algorithm.
 *
 * Note that this is used as a sub-structure of
 * ec_{params/response}_mkbp_get_config.
 */
struct ec_mkbp_config {
struct ec_mkbp_config {
	uint32_t valid_mask;		/* valid fields */
	uint32_t valid_mask;		/* valid fields */
	uint8_t flags;		/* some flags (enum mkbp_config_flags) */
	uint8_t flags;		/* some flags (enum mkbp_config_flags) */
@@ -2362,6 +2376,7 @@ struct ec_params_gpio_set {
struct ec_params_gpio_get {
struct ec_params_gpio_get {
	char name[32];
	char name[32];
} __packed;
} __packed;

struct ec_response_gpio_get {
struct ec_response_gpio_get {
	uint8_t val;
	uint8_t val;
} __packed;
} __packed;
@@ -2402,8 +2417,10 @@ enum gpio_get_subcmd {
/* I2C commands. Only available when flash write protect is unlocked. */
/* I2C commands. Only available when flash write protect is unlocked. */


/*
/*
 * TODO(crosbug.com/p/23570): These commands are deprecated, and will be
 * CAUTION: These commands are deprecated, and are not supported anymore in EC
 * removed soon.  Use EC_CMD_I2C_XFER instead.
 * builds >= 8398.0.0 (see crosbug.com/p/23570).
 *
 * Use EC_CMD_I2C_PASSTHRU instead.
 */
 */


/* Read I2C bus */
/* Read I2C bus */
@@ -2415,6 +2432,7 @@ struct ec_params_i2c_read {
	uint8_t port;
	uint8_t port;
	uint8_t offset;
	uint8_t offset;
} __packed;
} __packed;

struct ec_response_i2c_read {
struct ec_response_i2c_read {
	uint16_t data;
	uint16_t data;
} __packed;
} __packed;
@@ -2450,7 +2468,6 @@ struct ec_params_charge_control {
} __packed;
} __packed;


/*****************************************************************************/
/*****************************************************************************/
/* Console commands. Only available when flash write protect is unlocked. */


/* Snapshot console output buffer for use by EC_CMD_CONSOLE_READ. */
/* Snapshot console output buffer for use by EC_CMD_CONSOLE_READ. */
#define EC_CMD_CONSOLE_SNAPSHOT 0x97
#define EC_CMD_CONSOLE_SNAPSHOT 0x97
@@ -2904,9 +2921,7 @@ enum ec_i2s_config {
};
};


struct ec_param_codec_i2s {
struct ec_param_codec_i2s {
	/*
	/* enum ec_codec_i2s_subcmd */
	 * enum ec_codec_i2s_subcmd
	 */
	uint8_t cmd;
	uint8_t cmd;
	union {
	union {
		/*
		/*
@@ -2981,7 +2996,7 @@ struct ec_response_codec_gain {
enum ec_reboot_cmd {
enum ec_reboot_cmd {
	EC_REBOOT_CANCEL = 0,        /* Cancel a pending reboot */
	EC_REBOOT_CANCEL = 0,        /* Cancel a pending reboot */
	EC_REBOOT_JUMP_RO = 1,       /* Jump to RO without rebooting */
	EC_REBOOT_JUMP_RO = 1,       /* Jump to RO without rebooting */
	EC_REBOOT_JUMP_RW = 2,       /* Jump to RW without rebooting */
	EC_REBOOT_JUMP_RW = 2,       /* Jump to active RW without rebooting */
	/* (command 3 was jump to RW-B) */
	/* (command 3 was jump to RW-B) */
	EC_REBOOT_COLD = 4,          /* Cold-reboot */
	EC_REBOOT_COLD = 4,          /* Cold-reboot */
	EC_REBOOT_DISABLE_JUMP = 5,  /* Disable jump until next reboot */
	EC_REBOOT_DISABLE_JUMP = 5,  /* Disable jump until next reboot */