Hi Yipingwang,
One difference was the SD enumerates as /dev/mmcblk0 and not /dev/sdX (where X is b or c)
I had to modify any hex values to decimal as 'dd' thought 0x was a multiplier.
$ cd ~/yocto-sdk/build_ls1043ardb/tmp/deploy/images/ls1043ardb/atf/
$ sudo dd if=bl2_sd.pbl of=/dev/mmcblk0 bs=512 seek=8
95+1 records in
95+1 records out
49060 bytes (49 kB, 48 KiB) copied, 0.0124063 s, 4.0 MB/s
$ sudo dd if=fip_uboot.bin of=/dev/mmcblk0 bs=512 seek=2048
1497+1 records in
1497+1 records out
766652 bytes (767 kB, 749 KiB) copied, 0.230024 s, 3.3 MB/s
$ cd ..
$ sudo dd if=fsl_fman_ucode_ls1043_r1.1_106_4_18.bin of=/dev/mmclblk0 bs=512 seek=18432
63+1 records in
63+1 records out
32604 bytes (33 kB, 32 KiB) copied, 0.000310164 s, 105 MB/s
$ sudo mkdir ~/temp
$ sudo mount /dev/mmcblk0 ~/temp
$ sudo cp fsl-image-networking-ls1043ardb.tar.gz ~/temp/
$ cd ~/temp
$ sudo tar -xzvf fsl-image-networking-ls1043ardb.tar.gz
... [unpacked here]
$ sudo rm -xzvf fsl-image-networking-ls1043ardb.tar.gz
$ cd ~/yocto-sdk/build_ls1043ardb/tmp/deploy/images/ls1043ardb/
$ sudo cp Image ~/temp/boot
$ sudo cp fsl-ls1043a-rdb-sdk.dtb ~/temp/boot
$ sudo umount ~/temp
$ sync
My switch settings are as you mention.

I was able to get to u-boot but booting to the kernel fails.
=> setenv bootcmd 'setenv bootargs root=/dev/mmcblk0p2 rw rootdelay=5 console=ttyS0,115200;mmcinfo;ext2load mmc 0:2 0xa0000000 /boot/Image;ext2load mmc 0:2 0xb0000000 /boot/fsl-ls1043a-rdb-sdk.dtb;booti 0xa0000000- 0xb0000000'
=> saveenv
Saving Environment to MMC... Writing to MMC(0)... OK
=> boot
Device: FSL_SDHC
Manufacturer ID: 1b
OEM: 534d
Name: EB1QT
Bus Speed: 50000000
Mode : SD High Speed (50MHz)
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 29.8 GiB
Bus Width: 4-bit
Erase Group Size: 512 Bytes
24457728 bytes read in 1049 ms (22.2 MiB/s)
32127 bytes read in 10 ms (3.1 MiB/s)
## Loading ramdisk from FIT Image at b0000000 ...
Bad FIT ramdisk image format!
Ramdisk image is corrupt or invalid
Do I need to use another Image???
Cheers, Glen