drivers/i2c/ptn3460: Use cb_err in mb_adjust_cfg

Return generic coreboot error codes from the mb_adjust_cfg
callback used in mainboards instead of '-1' constant and
a driver-specific success-indicating define.

BUG=none
TEST=Boards siemens/mc_apl{1,4,5,7} and siemens/mc_ehl3
build correctly.

Change-Id: I5e0d4e67703db518ed239a845f43047f569b94ec
Signed-off-by: Jan Samek <jan.samek@siemens.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/72071
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Werner Zeh <werner.zeh@siemens.com>
diff --git a/src/drivers/i2c/ptn3460/ptn3460.c b/src/drivers/i2c/ptn3460/ptn3460.c
index 3ea41ba..31db8ad 100644
--- a/src/drivers/i2c/ptn3460/ptn3460.c
+++ b/src/drivers/i2c/ptn3460/ptn3460.c
@@ -108,7 +108,7 @@
 	}
 	/* Mainboard can modify the configuration data.
 	   Write back configuration data to PTN3460 if modified by mainboard */
-	if (mb_adjust_cfg(&cfg) == PTN_CFG_MODIFIED) {
+	if (mb_adjust_cfg(&cfg) == CB_SUCCESS) {
 		ptr = (uint8_t *)&cfg;
 		for (i = 0; i < sizeof(struct ptn_3460_config); i++) {
 			val = i2c_dev_writeb_at(dev, PTN_CONFIG_OFF + i, *ptr++);
@@ -131,9 +131,9 @@
 {
 	return 0;
 }
-__weak int mb_adjust_cfg(struct ptn_3460_config *cfg_ptr)
+__weak enum cb_err mb_adjust_cfg(struct ptn_3460_config *cfg_ptr)
 {
-	return 0;
+	return CB_ERR;
 }
 
 static struct device_operations ptn3460_ops = {
diff --git a/src/drivers/i2c/ptn3460/ptn3460.h b/src/drivers/i2c/ptn3460/ptn3460.h
index 718f92f..5d867cd 100644
--- a/src/drivers/i2c/ptn3460/ptn3460.h
+++ b/src/drivers/i2c/ptn3460/ptn3460.h
@@ -16,7 +16,6 @@
 
 /* Define some error codes that can be used */
 #define PTN_SUCCESS		0x00000000
-#define PTN_CFG_MODIFIED	0x00000001
 #define PTN_BUS_ERROR		0x10000000
 #define PTN_INVALID_EDID	0x20000000
 #define PTN_INVALID_EDID_BLOCK	0x30000000
@@ -55,6 +54,6 @@
 /* These functions can be implemented somewhere else but must exist. */
 extern enum cb_err mb_get_edid(uint8_t edid_data[0x80]);
 extern uint8_t mb_select_edid_table(void);
-extern int mb_adjust_cfg(struct ptn_3460_config *cfg_ptr);
+extern enum cb_err mb_adjust_cfg(struct ptn_3460_config *cfg_ptr);
 
 #endif /* _I2C_PTN3460_H_ */
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl1/lcd_panel.c b/src/mainboard/siemens/mc_apl1/variants/mc_apl1/lcd_panel.c
index b6e3c27..0fce19c 100644
--- a/src/mainboard/siemens/mc_apl1/variants/mc_apl1/lcd_panel.c
+++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl1/lcd_panel.c
@@ -39,9 +39,9 @@
 /** \brief Function to enable mainboard to adjust the config data of PTN3460. For reference,
  * see NXP document AN11128 - PTN3460 Programming guide.
  * @param   *cfg_ptr  Pointer to the PTN config structure to modify
- * @return  -1 on error; PTN_CFG_MODIFIED if data was modified and needs to be updated.
+ * @return  CB_SUCCESS if data was modified and needs to be updated; CB_ERR on error
  */
-int mb_adjust_cfg(struct ptn_3460_config *cfg)
+enum cb_err mb_adjust_cfg(struct ptn_3460_config *cfg)
 {
 	const char *hwi_block = "hwinfo.hex";
 	uint8_t disp_con = 0, color_depth = 0;
@@ -49,16 +49,16 @@
 	/* Get display-specific configuration from hwinfo. */
 	if (hwilib_find_blocks(hwi_block) != CB_SUCCESS) {
 		printk(BIOS_ERR, "LCD: Info block \"%s\" not found!\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 	if (hwilib_get_field(PF_DisplCon, &disp_con, sizeof(disp_con)) != sizeof(disp_con)) {
 		printk(BIOS_ERR, "LCD: Missing panel features from %s\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 	if (hwilib_get_field(PF_Color_Depth, &color_depth,
 			     sizeof(color_depth)) != sizeof(color_depth)) {
 		printk(BIOS_ERR, "LCD: Missing panel features from %s\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 
 	/* Set up PTN3460 registers based on hwinfo and fixed board-specific parameters: */
@@ -91,5 +91,5 @@
 	/* Enable backlight control. */
 	cfg->backlight_ctrl = 0x00;
 
-	return PTN_CFG_MODIFIED;
+	return CB_SUCCESS;
 }
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl4/lcd_panel.c b/src/mainboard/siemens/mc_apl1/variants/mc_apl4/lcd_panel.c
index 9fd2566..d5de17d 100644
--- a/src/mainboard/siemens/mc_apl1/variants/mc_apl4/lcd_panel.c
+++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl4/lcd_panel.c
@@ -39,9 +39,9 @@
 /** \brief Function to enable mainboard to adjust the config data of PTN3460. For reference,
  * see NXP document AN11128 - PTN3460 Programming guide.
  * @param   *cfg_ptr  Pointer to the PTN config structure to modify
- * @return  -1 on error; PTN_CFG_MODIFIED if data was modified and needs to be updated.
+ * @return  CB_SUCCESS if data was modified and needs to be updated; CB_ERR on error
  */
-int mb_adjust_cfg(struct ptn_3460_config *cfg)
+enum cb_err mb_adjust_cfg(struct ptn_3460_config *cfg)
 {
 	const char *hwi_block = "hwinfo.hex";
 	uint8_t disp_con = 0, color_depth = 0;
@@ -49,16 +49,16 @@
 	/* Get display-specific configuration from hwinfo. */
 	if (hwilib_find_blocks(hwi_block) != CB_SUCCESS) {
 		printk(BIOS_ERR, "LCD: Info block \"%s\" not found!\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 	if (hwilib_get_field(PF_DisplCon, &disp_con, sizeof(disp_con)) != sizeof(disp_con)) {
 		printk(BIOS_ERR, "LCD: Missing panel features from %s\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 	if (hwilib_get_field(PF_Color_Depth, &color_depth,
 			     sizeof(color_depth)) != sizeof(color_depth)) {
 		printk(BIOS_ERR, "LCD: Missing panel features from %s\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 
 	/* Set up PTN3460 registers based on hwinfo and fixed board-specific parameters: */
@@ -91,5 +91,5 @@
 	/* Enable backlight control. */
 	cfg->backlight_ctrl = 0x00;
 
-	return PTN_CFG_MODIFIED;
+	return CB_SUCCESS;
 }
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl5/lcd_panel.c b/src/mainboard/siemens/mc_apl1/variants/mc_apl5/lcd_panel.c
index c984f2f..348f762 100644
--- a/src/mainboard/siemens/mc_apl1/variants/mc_apl5/lcd_panel.c
+++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl5/lcd_panel.c
@@ -64,9 +64,9 @@
 /** \brief Function to enable mainboard to adjust the config data of PTN3460. For reference,
  * see NXP document AN11128 - PTN3460 Programming guide.
  * @param   *cfg_ptr  Pointer to the PTN config structure to modify
- * @return  -1 on error; PTN_CFG_MODIFIED if data was modified and needs to be updated.
+ * @return  CB_SUCCESS if data was modified and needs to be updated; CB_ERR on error
  */
-int mb_adjust_cfg(struct ptn_3460_config *cfg)
+enum cb_err mb_adjust_cfg(struct ptn_3460_config *cfg)
 {
 	const char *hwi_block = "hwinfo.hex";
 	uint8_t disp_con = 0, color_depth = 0;
@@ -74,16 +74,16 @@
 	/* Get display-specific configuration from hwinfo. */
 	if (hwilib_find_blocks(hwi_block) != CB_SUCCESS) {
 		printk(BIOS_ERR, "LCD: Info block \"%s\" not found!\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 	if (hwilib_get_field(PF_DisplCon, &disp_con, sizeof(disp_con)) != sizeof(disp_con)) {
 		printk(BIOS_ERR, "LCD: Missing panel features from %s\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 	if (hwilib_get_field(PF_Color_Depth, &color_depth,
 			     sizeof(color_depth)) != sizeof(color_depth)) {
 		printk(BIOS_ERR, "LCD: Missing panel features from %s\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 
 	/* Set up PTN3460 registers based on hwinfo and fixed board-specific parameters: */
@@ -116,5 +116,5 @@
 	/* Enable backlight control. */
 	cfg->backlight_ctrl = 0x00;
 
-	return PTN_CFG_MODIFIED;
+	return CB_SUCCESS;
 }
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl7/lcd_panel.c b/src/mainboard/siemens/mc_apl1/variants/mc_apl7/lcd_panel.c
index 9fd2566..d5de17d 100644
--- a/src/mainboard/siemens/mc_apl1/variants/mc_apl7/lcd_panel.c
+++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl7/lcd_panel.c
@@ -39,9 +39,9 @@
 /** \brief Function to enable mainboard to adjust the config data of PTN3460. For reference,
  * see NXP document AN11128 - PTN3460 Programming guide.
  * @param   *cfg_ptr  Pointer to the PTN config structure to modify
- * @return  -1 on error; PTN_CFG_MODIFIED if data was modified and needs to be updated.
+ * @return  CB_SUCCESS if data was modified and needs to be updated; CB_ERR on error
  */
-int mb_adjust_cfg(struct ptn_3460_config *cfg)
+enum cb_err mb_adjust_cfg(struct ptn_3460_config *cfg)
 {
 	const char *hwi_block = "hwinfo.hex";
 	uint8_t disp_con = 0, color_depth = 0;
@@ -49,16 +49,16 @@
 	/* Get display-specific configuration from hwinfo. */
 	if (hwilib_find_blocks(hwi_block) != CB_SUCCESS) {
 		printk(BIOS_ERR, "LCD: Info block \"%s\" not found!\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 	if (hwilib_get_field(PF_DisplCon, &disp_con, sizeof(disp_con)) != sizeof(disp_con)) {
 		printk(BIOS_ERR, "LCD: Missing panel features from %s\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 	if (hwilib_get_field(PF_Color_Depth, &color_depth,
 			     sizeof(color_depth)) != sizeof(color_depth)) {
 		printk(BIOS_ERR, "LCD: Missing panel features from %s\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 
 	/* Set up PTN3460 registers based on hwinfo and fixed board-specific parameters: */
@@ -91,5 +91,5 @@
 	/* Enable backlight control. */
 	cfg->backlight_ctrl = 0x00;
 
-	return PTN_CFG_MODIFIED;
+	return CB_SUCCESS;
 }
diff --git a/src/mainboard/siemens/mc_ehl/variants/mc_ehl3/lcd_panel.c b/src/mainboard/siemens/mc_ehl/variants/mc_ehl3/lcd_panel.c
index b1c4e01..7b16254 100644
--- a/src/mainboard/siemens/mc_ehl/variants/mc_ehl3/lcd_panel.c
+++ b/src/mainboard/siemens/mc_ehl/variants/mc_ehl3/lcd_panel.c
@@ -39,9 +39,9 @@
 /** \brief Function to enable mainboard to adjust the config data of PTN3460. For reference,
  * see NXP document AN11128 - PTN3460 Programming guide.
  * @param   *cfg_ptr  Pointer to the PTN config structure to modify
- * @return  -1 on error; PTN_CFG_MODIFIED if data was modified and needs to be updated.
+ * @return  CB_SUCCESS if data was modified and needs to be updated; CB_ERR on error
  */
-int mb_adjust_cfg(struct ptn_3460_config *cfg)
+enum cb_err mb_adjust_cfg(struct ptn_3460_config *cfg)
 {
 	const char *hwi_block = "hwinfo.hex";
 	uint8_t disp_con = 0, color_depth = 0;
@@ -49,16 +49,16 @@
 	/* Get display-specific configuration from hwinfo. */
 	if (hwilib_find_blocks(hwi_block) != CB_SUCCESS) {
 		printk(BIOS_ERR, "LCD: Info block \"%s\" not found!\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 	if (hwilib_get_field(PF_DisplCon, &disp_con, sizeof(disp_con)) != sizeof(disp_con)) {
 		printk(BIOS_ERR, "LCD: Missing panel features from %s\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 	if (hwilib_get_field(PF_Color_Depth, &color_depth,
 			     sizeof(color_depth)) != sizeof(color_depth)) {
 		printk(BIOS_ERR, "LCD: Missing panel features from %s\n", hwi_block);
-		return -1;
+		return CB_ERR;
 	}
 
 	/* Set up PTN3460 registers based on hwinfo and fixed board-specific parameters: */
@@ -91,5 +91,5 @@
 	/* Enable backlight control. */
 	cfg->backlight_ctrl = 0x00;
 
-	return PTN_CFG_MODIFIED;
+	return CB_SUCCESS;
 }