ichspi: Properly add Emmitsburg PCH

The Emmitsburg or C740 series PCH is actually ahead of all the other,
currently supported chipsets. Finally, Intel added new registers that
carry the read and write access permissions for all 16 regions.

The old FRAP register seems to be still around, so we print both new
and old registers. For the detailed report we use the new registers,
though.

We also adapt the descriptor detection slightly: We check for `NM == 6`
just like we did for Lewisburg. This way we won't treat a huge range of
ISL (ICH/PCH strap length) values as Emmitsburg, which should result in
less false positives.

The output of `ich_descriptors_tool' tested on some Supermicro firmware
looks reasonable.  Also tested read/erase/write in `swseq' and  `hwseq'
modes with 7 series PCH, reading with ADL-P. All logs still report FRAP
settings correctly.

Change-Id: Ibf5ebe2e2edfe5e5ae26bf1136648bf6354b0aa9
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.sourcearcade.org/c/flashprog/+/187
diff --git a/include/programmer.h b/include/programmer.h
index 873dc37..f82f11f 100644
--- a/include/programmer.h
+++ b/include/programmer.h
@@ -363,6 +363,10 @@
 	CHIPSET_APOLLO_LAKE,
 	CHIPSET_GEMINI_LAKE,
 	CHIPSET_ELKHART_LAKE,
+
+	CHIPSET_HAS_NEW_ACCESS_PERM, /****** BM_RAP/WAP regs from here on *****/
+
+	CHIPSET_C740_SERIES_EMMITSBURG = CHIPSET_HAS_NEW_ACCESS_PERM,
 };
 
 /* ichspi.c */