There are nine issues in that document concerning the ESDHC. There's quite a lot concerning the LENGTHS of data to transfer, requiring extra bytes on reads and writes to get "more than four". There's nothing related to the poster's question, which is on the byte ORDER.
> i cannot read any SD written from other system. Am i correct ?
Unlikely. Have you searched this forum to see if anyone else has posted on this topic?
This CPU has a BYTEREV instruction. So you can always swap the data in the buffers before writes and after reads if required. SDHC is complicated. There are controller commands, card commands and data to worry about.
SD cards are usually written with DOS FAT file systems. The "endianness" of these is defined. These have to be read by standard software, and UBOOT should be getting this right, somehow. Also, there are Linux drivers that work. Have you looked at them? Read the following and see if it matches, or if it gives any clues:
((EDIT)) Something has gone wrong with NXP's forum software. The following link didn't work when I clicked on it because there's some failed "you are leaving NXP" redirection stuff on the start of it. Hover over it and see what the link really is. To visit this site you may have to manually copy-and-paste the display text.
https://elixir.bootlin.com/linux/v4.18.4/source/drivers/mmc/host/Kconfig
((EDIT)) Maybe I have to use the "Inset Link" button to get a working link. Let's try that and see what happens... No, that's the same, but it worked the next time I clicked on it. It works if you click, but NOT if you ask for "Open in new window" under Firefox. That gives "jive, Oops, the page can't be found".
https://elixir.bootlin.com/linux/v4.18.4/source/drivers/mmc/host/Kconfig
config MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
bool
depends on MMC_SDHCI
select MMC_SDHCI_IO_ACCESSORS
help
This option is selected by drivers running on big endian hosts
and performing I/O to a SDHCI controller through a bus that
implements a hardware byte swapper using a 32-bit datum.
This endian mapping mode is called "data invariance" and
has the effect of scrambling the addresses and formats of data
accessed in sizes other than the datum size.
This is the case for the Nintendo Wii SDHCI.
Interestingly, up to 4.2 of the above file, the last line said:
https://elixir.bootlin.com/linux/v4.2/source/drivers/mmc/host/Kconfig
This is the case for the Freescale eSDHC and Nintendo Wii SDHCI.
I think that means that support for Freescale was removed between 4.2 and 4.18 (it isn't in 4.4 either).
The above reference probably doesn't match what you're trying to do, but shows that any endian problems are addressed in there somewhere, and reading those solutions might help you. The hardware drivers are in the same directory as the above file, so you can look at those. You may need to
The best starting point would be a Freescale SDK booting Linux from an SD card. That should show you exactly how it is done, both in the U-Boot code and in the Linux Drivers that then run. You would best get the patched version of Linux that Freescale released for this purpose. Searching finds this as a starting point:
((EDIT)) The following link has the same "you are leaving NXP" redirection on it which may or may not work for you.
https://www.nxp.com/docs/en/application-note/AN4426.pdf
Tom