diff --git a/src/soc/amd/stoneyridge/Makefile.inc b/src/soc/amd/stoneyridge/Makefile.inc
index 078a566..17867eb 100644
--- a/src/soc/amd/stoneyridge/Makefile.inc
+++ b/src/soc/amd/stoneyridge/Makefile.inc
@@ -127,6 +127,11 @@
 OPT_SOCNAME=--soc-name "Stoneyridge"
 endif
 
+ifeq ($(FIRMWARE_TYPE),CZ)
+OPT_COMBOCAPABLE=--combo-capable
+OPT_SOCNAME=--soc-name "Carrizo"
+endif
+
 ifeq ($(CONFIG_USE_PSPSECUREOS),y)
 PSP_USE_PSPSECUREOS="--use-pspsecureos"
 endif
diff --git a/util/amdfwtool/amdfwtool.c b/util/amdfwtool/amdfwtool.c
index e1e689d..f1b31be 100644
--- a/util/amdfwtool/amdfwtool.c
+++ b/util/amdfwtool/amdfwtool.c
@@ -229,8 +229,9 @@
 	printf("--sharedmem-size               Maximum size of the PSP/FW shared memory\n");
 	printf("                               area\n");
 	printf("--soc-name <socname>           Specify SOC name. Supported names are\n");
-	printf("                               Stoneyridge, Raven, Picasso, Renoir, Cezanne\n");
-	printf("                               Mendocino, Phoenix, Glinda, or Lucienne\n");
+	printf("                               Carrizo, Stoneyridge, Raven, Picasso, Renoir,\n");
+	printf("                               Cezanne, Mendocino, Phoenix, Glinda, or\n");
+	printf("                               Lucienne\n");
 	printf("\nEmbedded Firmware Structure options used by the PSP:\n");
 	printf("--spi-speed <HEX_VAL>          SPI fast speed to place in EFS Table\n");
 	printf("                               0x0 66.66Mhz\n");
@@ -713,6 +714,7 @@
 
 enum platform {
 	PLATFORM_UNKNOWN,
+	PLATFORM_CARRIZO,
 	PLATFORM_STONEYRIDGE,
 	PLATFORM_RAVEN,
 	PLATFORM_PICASSO,
@@ -751,6 +753,7 @@
 	case PLATFORM_PHOENIX:
 		psp_id = 0xBC0D0400;
 		break;
+	case PLATFORM_CARRIZO:
 	default:
 		psp_id = 0;
 		break;
@@ -1970,6 +1973,7 @@
 	}
 
 	switch (soc_id) {
+	case PLATFORM_CARRIZO:
 	case PLATFORM_STONEYRIDGE:
 		amd_romsig->spi_readmode_f15_mod_60_6f = efs_spi_readmode;
 		amd_romsig->fast_speed_new_f15_mod_60_6f = efs_spi_speed;
@@ -2073,6 +2077,8 @@
 {
 	if (!strcasecmp(soc_name, "Stoneyridge"))
 		return PLATFORM_STONEYRIDGE;
+	else if (!strcasecmp(soc_name, "Carrizo"))
+		return PLATFORM_CARRIZO;
 	else if (!strcasecmp(soc_name, "Raven"))
 		return PLATFORM_RAVEN;
 	else if (!strcasecmp(soc_name, "Picasso"))
@@ -2105,6 +2111,7 @@
 static bool is_second_gen(enum platform platform_type)
 {
 	switch (platform_type) {
+	case PLATFORM_CARRIZO:
 	case PLATFORM_STONEYRIDGE:
 	case PLATFORM_RAVEN:
 	case PLATFORM_PICASSO:
@@ -2683,6 +2690,7 @@
 		case PLATFORM_PHOENIX:
 		case PLATFORM_GLINDA:
 			break;
+		case PLATFORM_CARRIZO:
 		case PLATFORM_STONEYRIDGE:
 		case PLATFORM_RAVEN:
 		case PLATFORM_PICASSO:
