From 5b0f5f52f8e4e9383e13e41581f0c649950d7865 Mon Sep 17 00:00:00 2001 From: stefanct Date: Mon, 5 Jan 2015 23:00:14 +0000 Subject: Fix wrong density encoding on Intel Silvermont. Silvermont (Bay Trail, Rangeley, Avoton) seems to still use the old density encoding with 3 bits per chip. Documentation is unavailable (held concealed by Intel) but thanks to the efforts of Tai-Hong (Type) Wu the layout is clear now. This patch is based on his one but solves the issue differently thus reducing the code complexity. Signed-off-by: Tai-Hong Wu Signed-off-by: Stefan Tauner Acked-by: Stefan Tauner git-svn-id: https://code.coreboot.org/svn/flashrom/trunk@1861 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- ich_descriptors.h | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) (limited to 'ich_descriptors.h') diff --git a/ich_descriptors.h b/ich_descriptors.h index c41f9d9..2c21598 100644 --- a/ich_descriptors.h +++ b/ich_descriptors.h @@ -123,23 +123,19 @@ struct ich_desc_component { freq_fastread :3, freq_write :3, freq_read_id :3, - :2; - } common; + dual_output :1, /* new since Cougar Point/6 */ + :1; + } modes; struct { uint32_t comp1_density :3, comp2_density :3, - :11, - :13, - :2; - } old; + :26; + } dens_old; struct { uint32_t comp1_density :4, /* new since Lynx Point/8 */ comp2_density :4, - :9, - :13, - dual_output :1, /* new since Cougar Point/6 */ - :1; - } new; + :24; + } dens_new; }; union { /* 0x04 */ uint32_t FLILL; /* Flash Invalid Instructions Register */ -- cgit v1.2.1