> On Sep 9, 2015, at 12:28 AM, 王晓峰 <winggundu...@163.com> wrote:
> 
> Dear PCD module owner,
>   I have meet an assert in PCDDXE UDK2014 revision. The Assert happens when 
> PCDdxe initlize.
> ASSERT e:\code\MdeModulePkg\Universal\PCD\Dxe\Service.c(1137): TokenNumber + 
> 1 < mPcdTotalTokenCount + 1
>  it seems that build tool automatically generate PEI and DXE token number 
> account , but what's the algorithm for this mPcdTotalTokenCount ?
>  Which part should I check that may be wrong?
> 
> 

I’ve never seen this failure. I would guess you have some code doing a a call 
to the PCD Protocol to SET a PCD value and it is not valid from the PCD drivers 
database point of view. 
https://github.com/tianocore/edk2/blob/master/MdePkg/Include/Protocol/Pcd.h 
<https://github.com/tianocore/edk2/blob/master/MdePkg/Include/Protocol/Pcd.h>

The protocol may be abstracted by a library call: 
https://github.com/tianocore/edk2/tree/master/MdePkg/Library/DxePcdLib 
<https://github.com/tianocore/edk2/tree/master/MdePkg/Library/DxePcdLib>

You can only used the build generated tokens for a platform that was compiled 
together in a single build. If you have other modules they need to use the Ex 
form that uses a GUID and fixed token number. The build generated tokens only 
exist to save space when all the code is compiled together. 

Thanks,

Andrew Fish

> 
> 
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.01.org_mailman_listinfo_edk2-2Ddevel&d=BQICAg&c=eEvniauFctOgLOKGJOplqw&r=1HnUuXD1wDvw67rut5_idw&m=Siy1WxHhaKOPlzUkx39CZuK_LN9QKHhZI3MnlF94MMQ&s=zNEWtbblF0A_50mppbQ1ugbmQTYIEJiV5TaAYuGVxUE&e=
>  

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to