Hello Li Rui,
In the flash programmer configuration file, there is a problem, in Program/Verify panel please check "Apply Address Offset" and specify the exact address of u-boot(between ff800000 to ffffffff). But this is not the cause of your above problem.
I provide you some basic sequence commands to read the device ID.
Please connect to the target from Debug->Connect, and open "Command Window" from View->Command Window and use the following commands.(According to your configuration file, the flash organization is 4M*16*1, please make sure this is correct.)
# Set device to Read state
change p:ff800000 f0f0 16bit
# Get Mfg and Device ID values
change p:ff800aaa aaaa 16bit
change p:ff800554 5555 16bit
change p:ff800aaa 9090 16bit
# Display Mfg ID value at offset 0
# Display Dev ID value at offset 2
display p:ff800000..ff800004 16bit
# Reset device to Read state
change p:ff800000 f0f0 16bit
If the device ID cannot be read successfully with the above commands, probably it is needed to consider about the hardware problem, for example the "hardware protection".
Have a great day,
Yiping
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------