#
# Copyright (C) 2017 Damien Zammit <damien@zamaudio.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
#
# X200 Liberated Flash Descriptor
# Layout:
#	0x0000 - 0x1000  : IFD
#	0x1000 - 0x3000  : GbE x2
#	0x3000 - ROMSIZE : BIOS
{
	"fd_signature" = 0xff0a55a,

	"flmap0_fcba" = 0x1,
	"flmap0_nc" = 0x0,
	"flmap0_reserved0" = 0x0,
	"flmap0_frba" = 0x4,
	"flmap0_nr" = 0x3,
	"flmap0_reserved1" = 0x0,
	"flmap1_fmba" = 0x6,
	"flmap1_nm" = 0x2,
	"flmap1_reserved" = 0x0,
	"flmap1_fisba" = 0x10,
	"flmap1_isl" = 0x2,
	"flmap2_fmsba" = 0x20,
	"flmap2_msl" = 0x1,
	"flmap2_reserved" = 0x0,

	"flcomp_density1" = 0x4,
	"flcomp_density2" = 0x2,
	"flcomp_reserved0" = 0x0,
	"flcomp_reserved1" = 0x0,
	"flcomp_reserved2" = 0x0,
	"flcomp_readclockfreq" = 0x0,
	"flcomp_fastreadsupp" = 0x1,
	"flcomp_fastreadfreq" = 0x1,
	"flcomp_w_eraseclkfreq" = 0x0,
	"flcomp_r_statclkfreq" = 0x0,
	"flcomp_reserved3" = 0x0,
	"flill" = 0x0,
	"flbp" = 0x0,
	"comp_padding"[0x24] = 0xff,

	"flreg0_base" = 0x0,
	"flreg0_reserved0" = 0x0,
	"flreg0_limit" = 0x0,
	"flreg0_reserved1" = 0x0,
	"flreg1_base" = 0x3,
	"flreg1_reserved0" = 0x0,
	"flreg1_limit" = 0x7ff,
	"flreg1_reserved1" = 0x0,
	"flreg2_base" = 0x1fff,
	"flreg2_reserved0" = 0x0,
	"flreg2_limit" = 0x0,
	"flreg2_reserved1" = 0x0,
	"flreg3_base" = 0x1,
	"flreg3_reserved0" = 0x0,
	"flreg3_limit" = 0x2,
	"flreg3_reserved1" = 0x0,
	"flreg4_base" = 0x1fff,
	"flreg4_reserved0" = 0x0,
	"flreg4_limit" = 0x0,
	"flreg4_reserved1" = 0x0,
	"flreg_padding"[12] = 0xff,

	"flmstr1_requesterid" = 0x0,
	"flmstr1_r_fd" = 0x1,
	"flmstr1_r_bios" = 0x1,
	"flmstr1_r_me" = 0x1,
	"flmstr1_r_gbe" = 0x1,
	"flmstr1_r_pd" = 0x1,
	"flmstr1_r_reserved" = 0x0,
	"flmstr1_w_fd" = 0x1,
	"flmstr1_w_bios" = 0x1,
	"flmstr1_w_me" = 0x1,
	"flmstr1_w_gbe" = 0x1,
	"flmstr1_w_pd" = 0x1,
	"flmstr1_w_reserved" = 0x0,
	"flmstr2_requesterid" = 0x0,
	"flmstr2_r_fd" = 0x0,
	"flmstr2_r_bios" = 0x0,
	"flmstr2_r_me" = 0x0,
	"flmstr2_r_gbe" = 0x0,
	"flmstr2_r_pd" = 0x0,
	"flmstr2_r_reserved" = 0x0,
	"flmstr2_w_fd" = 0x0,
	"flmstr2_w_bios" = 0x0,
	"flmstr2_w_me" = 0x0,
	"flmstr2_w_gbe" = 0x0,
	"flmstr2_w_pd" = 0x0,
	"flmstr2_w_reserved" = 0x0,
	"flmstr3_requesterid" = 0x218,
	"flmstr3_r_fd" = 0x0,
	"flmstr3_r_bios" = 0x0,
	"flmstr3_r_me" = 0x0,
	"flmstr3_r_gbe" = 0x1,
	"flmstr3_r_pd" = 0x0,
	"flmstr3_r_reserved" = 0x0,
	"flmstr3_w_fd" = 0x0,
	"flmstr3_w_bios" = 0x0,
	"flmstr3_w_me" = 0x0,
	"flmstr3_w_gbe" = 0x1,
	"flmstr3_w_pd" = 0x0,
	"flmstr3_w_reserved" = 0x0,
	"flmstr_padding"[0x94] = 0xff,

	"ich0_medisable" = 0x1,
	"ich0_reserved0" = 0x4,
	"ich0_tcomode" = 0x1,
	"ich0_mesmbusaddr" = 0x64,
	"ich0_bmcmode" = 0x0,
	"ich0_trippointsel" = 0x0,
	"ich0_reserved1" = 0x0,
	"ich0_integratedgbe" = 0x1,
	"ich0_lanphy" = 0x1,
	"ich0_reserved2" = 0x0,
	"ich0_dmireqiddisable" = 0x0,
	"ich0_me2smbusaddr" = 0x0,
	"ich1_dynclk_nmlink" = 0x1,
	"ich1_dynclk_smlink" = 0x1,
	"ich1_dynclk_mesmbus" = 0x1,
	"ich1_dynclk_sst" = 0x1,
	"ich1_reserved0" = 0x0,
	"ich1_nmlink_npostreqs" = 0x1,
	"ich1_reserved1" = 0x0,
	"ich1_reserved2" = 0x0,
	"ichstrap_padding"[0xf8] = 0xff,
	"mch0_medisable" = 0x1,
	"mch0_mebootfromflash" = 0x0,
	"mch0_tpmdisable" = 0x1,
	"mch0_reserved0" = 0x7,
	"mch0_spifingerprinton" = 0x1,
	"mch0_mealtdisable" = 0x0,
	"mch0_reserved1" = 0xff,
	"mch0_reserved2" = 0xffff,
	"mchstrap_padding"[0xcdc] = 0xff,

	"mevscc_jid0" = 0x1720c2,
	"mevscc_vscc0" = 0x20052005,
	"mevscc_jid1" = 0x1730ef,
	"mevscc_vscc1" = 0x20052005,
	"mevscc_jid2" = 0x481f,
	"mevscc_vscc2" = 0x20152015,
	"mevscc_padding"[4] = 0xff,
	"mevscc_tablebase" = 0xee,
	"mevscc_tablelength" = 0x6,
	"mevscc_reserved" = 0x0,

	"oem_magic0" = 0x4c,
	"oem_magic1" = 0x49,
	"oem_magic2" = 0x42,
	"oem_magic3" = 0x45,
	"oem_magic4" = 0x52,
	"oem_magic5" = 0x41,
	"oem_magic6" = 0x54,
	"oem_magic7" = 0x45,
	"oem_padding"[0xf8] = 0xff
}
