Thanks Andrew and Marvin, > You cannot explicitly influence the order of the calls, but implicitly via the > dependency tree, which means you need to make SerialPortLib depend on your > LibraryClass instance.
Looks this is difficult that I can force order on already available code. > Worst case you can demote FpgaInterfaceInit () from being a constructor to > just Currently I am forcing the clock lib to call FpgaInterfaceInit first, this clock lib gives input clock to PL011 serial driver. Regards Udit > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of > Andrew Fish > Sent: Thursday, July 19, 2018 11:56 PM > To: Marvin H?user <marvin.haeu...@outlook.com> > Cc: edk2-devel@lists.01.org > Subject: Re: [edk2] Help on AutoGen Files > > Udit, > > As Marvin points out the [LibraryClasses] section of the INF file are going to > imply the order of the library constructor calls in the AutoGen > > Worst case you can demote FpgaInterfaceInit () from being a constructor to > just > being a public library function that the other lib can call explicitly from > its > constructor. Maybe that is too drastic and you could must move a function out > of FpgaInterfaceInit () and make that function part of the Public library > interface? > > Thanks, > > Andrew Fish > > > On Jul 19, 2018, at 11:14 AM, Marvin H?user <marvin.haeu...@outlook.com> > wrote: > > > > Hey Udit, > > > > You cannot explicitly influence the order of the calls, but implicitly via > > the > dependency tree, which means you need to make SerialPortLib depend on your > LibraryClass instance. > > You did not mention which SerialPortLib instance you use, but probably you > need to execute FpgaInterfaceInit() earlier in platform code or fork > SerialPortLib > for now. > > > > Regards, > > Marvin > > > >> -----Original Message----- > >> From: edk2-devel <edk2-devel-boun...@lists.01.org> On Behalf Of Udit > >> Kumar > >> Sent: Thursday, July 19, 2018 9:33 AM > >> To: edk2-devel@lists.01.org > >> Subject: [edk2] Help on AutoGen Files > >> > >> Hi Experts, > >> How I can change the order of initialization in Constructor list of > >> autogen file. > >> In my build system, if I look at > >> MdeModulePkg/Universal/PCD/Pei/Pcd/DEBUG/AutoGen.c > >> Below is function of Library Constructor List > >> > >> VOID > >> EFIAPI > >> ProcessLibraryConstructorList ( > >> IN EFI_PEI_FILE_HANDLE FileHandle, > >> IN CONST EFI_PEI_SERVICES **PeiServices > >> ) > >> { > >> EFI_STATUS Status; > >> > >> Status = BaseDebugLibSerialPortConstructor (); ASSERT_EFI_ERROR > >> (Status); > >> > >> Status = PeiServicesTablePointerLibConstructor (FileHandle, > >> PeiServices); ASSERT_EFI_ERROR (Status); > >> > >> Status = TimerConstructor (); > >> ASSERT_EFI_ERROR (Status); > >> > >> Status = FpgaInterfaceInit (); > >> ASSERT_EFI_ERROR (Status); > >> > >> } > >> > >> > >> My problem is SerialPortConstructor needs frequency, which can be > >> retrieved after FpgaInterfaceInit() Therefore, my preferred way for > >> this constructor list will be > >> FpgaInterfaceInit() followed by BaseDebugLibSerialPortConstructor() > >> > >> how I can achieve this. > >> > >> > >> Many Thanks > >> Udit > >> _______________________________________________ > >> edk2-devel mailing list > >> edk2-devel@lists.01.org > >> https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fli > >> sts.01.org%2Fmailman%2Flistinfo%2Fedk2- > devel&data=02%7C01%7Cudit. > >> > kumar%40nxp.com%7C5df5baccbdde4daa481808d5eda51660%7C686ea1d3bc2 > b4c6f > >> > a92cd99c5c301635%7C0%7C0%7C636676215665542230&sdata=6CnFNG5 > t05yH% > >> 2FOSYpcbp%2F1gWQenUyWcJ%2Fb7C0Yt1n5Y%3D&reserved=0 > > _______________________________________________ > > edk2-devel mailing list > > edk2-devel@lists.01.org > > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flis > > ts.01.org%2Fmailman%2Flistinfo%2Fedk2- > devel&data=02%7C01%7Cudit.ku > > > mar%40nxp.com%7C5df5baccbdde4daa481808d5eda51660%7C686ea1d3bc2b4 > c6fa92 > > > cd99c5c301635%7C0%7C0%7C636676215665542230&sdata=6CnFNG5t05y > H%2FOS > > Ypcbp%2F1gWQenUyWcJ%2Fb7C0Yt1n5Y%3D&reserved=0 > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.01 > .org%2Fmailman%2Flistinfo%2Fedk2- > devel&data=02%7C01%7Cudit.kumar%40nxp.com%7C5df5baccbdde4daa4 > 81808d5eda51660%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636 > 676215665542230&sdata=6CnFNG5t05yH%2FOSYpcbp%2F1gWQenUyWcJ > %2Fb7C0Yt1n5Y%3D&reserved=0 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel