
I defined the CONFIG_SYS_64BIT_VSPRINTF, and change the __kernel__loff_t back to long long, and it works.
My platform is a MPC8247 based customized board, which designed by my colleagues. Nand is Samsung K9K8G08U0M.
Thank you very much for your advice. Now my u-boot works fine now.
2009/12/1 Scott Wood scottwood@freescale.com:
Peter Pan wrote:
The previous u-boot version I use is U-boot 1.2.0, an ancient version. So I upgrade the u-boot to 2009-08. The platform is MPC8247.
That's a chip, not a platform. Which NAND controller driver? What happens if you also use a non-ancient Linux? Have you compared the OOB layout between U-Boot and Linux?
About build warnings, some warnings in printf for not proper type, and yes, I get the 64-bit printf warning :
nand_util.c:45:2: warning: #warning Please define CONFIG_SYS_64BIT_VSPRINTF for correct output!
After I change the loff_t from long long to unsigned long, it works fine now.
I suggest doing as it says, and defining CONFIG_SYS_64BIT_VSPRINTF in your board config file instead.
-Scott