How to make a SD card with bootloader

Thank you! That worked to download u-boot.bin However, when I re-power the BPI-W2, it boots to OpenWRT on the board, not ubuntu on the SD card. Looking at the boot log, references to SD appear around the 10 second mark, which I’ve listed in full below, but specifically, at 13.439279 I see this:

[   13.439279] block: attempting to load /etc/config/fstab
[   13.445329] block: unable to load configuration (fstab: Entry not found)
[   13.452266] block: no usable configuration

Is this preventing the BPI-W2 from booting from the SD card? I have confirmed that there is no /etc/config directory on the SD card:

root@OpenWrt:/# lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
mmcblk0rpmb  179:24   0   512K  0 disk
mmcblk0boot0 179:8    0     4M  1 disk
mmcblk0boot1 179:16   0     4M  1 disk
mmcblk0      179:0    0   7.1G  0 disk
|-mmcblk0p1  179:1    0    96M  0 part /rom
`-mmcblk0p2  179:2    0    40M  0 part /overlay
mmcblk1      179:32   0  59.1G  0 disk
|-mmcblk1p1  179:33   0 190.8M  0 part /mnt/mmcblk1p1
`-mmcblk1p2  179:34   0    59G  0 part /mnt/mmcblk1p2
root@OpenWrt:/# ls -al /mnt/mmcblk1p2/etc/config
ls: cannot access /mnt/mmcblk1p2/etc/config: No such file or directory
root@OpenWrt:/#

boot log pertaining to SD:

[   10.139897] rtk-sdmmc: CONFIG_MMC_BLOCK_BOUNCE enable
[   10.205377] rtk_sdmmc_get_cd: SD card exists, regCARD_EXIST = 4
[   10.205546] usbcore: registered new interface driver usbhid
[   10.205547] usbhid: USB HID core driver
[   10.211507] ashmem: initialized
[   10.212579] usbcore: registered new interface driver snd-usb-audio
[   10.212764] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[   10.221166] IPVS: Registered protocols ()
[   10.224287] IPVS: Connection hash table configured (size=4096, memory=64Kbytes)
[   10.224350] IPVS: Creating netns size=1328 id=0
[   10.253102] IPVS: ipvs loaded.
[   10.256360] NET: Registered protocol family 10
[   10.261538] NET: Registered protocol family 17
[   10.266122] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[   10.279035] 8021q: 802.1Q VLAN Support v1.8
[   10.284159] Btrfs loaded
[   10.287011] scpu wrappee irq 23, scpu_wrap_addr 0xffffff800d02c000
[   10.287011]
[   10.295771] [SCPU_WRAPPER] initialized
[   10.299661] DRM rtk_platform_drm_init
[   10.303537] DRM rtk_platform_drm_probe
[   10.307383] DRM rtk_drm_init
[   10.310331] RTK DRM initialize, driver name: realtek, version 1.5
[   10.316892] DRM rtk_drm_load 191
[   10.320233] DRM rtk_crtc_create 435
[   10.323835] DRM rtk_connector_create 185
[   10.327944] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[   10.334715] [drm] No driver support for vblank timestamp query.
[   10.340804] create vblank thread success
[   10.344821] DRM rtk_drm_load 265
[   10.348132] [drm] Initialized realtek 1.5.0 20170207 on minor 0
[   10.354288] rtc_rtk 9801b600.rtc: setting system clock to 2016-01-01 00:10:23 UTC (1451607023)
[   10.369496] thermal cooling_device0: thermal-cpufreq-0 bind to TP0: 1 -    6, ret = 0
[   10.377351] thermal cooling_device0: thermal-cpufreq-0 bind to TP1: 7 -    11, ret = 0
[   10.391362] corectrl: token_owenr X -    cpufreq
[   10.398205] dcdc1: disabling
[   10.401155] dcdc2: disabling
[   10.404103] dcdc3: disabling
[   10.407058] dcdc5: disabling
[   10.410007] dcdc6: disabling
[   10.412956] ldo2: disabling
[   10.415824] ldo3: disabling
[   10.415857] ALSA device list:
[   10.415859]   #0: snd_alsa_rtk
[   10.424981] ttyS0 - failed to request DMA
[   10.431611] VFS: Mounted root (squashfs filesystem) readonly on device 179:1.
[   10.441829] devtmpfs: mounted
[   10.444984] Freeing unused kernel memory: 448K (ffffffc000ba0000 - ffffffc000c10000)
[   10.452925] This architecture does not have kernel memory protection.
===== OpenWRT =====
[   10.836531] init: Console is alive
[   11.162299] init: - preinit -
[   11.310444] random: mktemp urandom read with 22 bits of entropy available
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[   13.225382] SD card is being inserted now...!!!
[   13.230028] [SD] SD card power register=33333323
[   13.235371] rtk_sdmmc_get_cd: SD card exists, regCARD_EXIST = 4
[   13.310153] rtk_sdmmc_send_cmd_get_rsp : reject SDIO commands cmd:0x34
[   13.316944] rtk_sdmmc_send_cmd_get_rsp : reject SDIO commands cmd:0x34
[   13.327260] rtk_sdmmc_send_cmd_get_rsp : reject SDIO commands cmd:0x05
[   13.334043] rtk_sdmmc_send_cmd_get_rsp : reject SDIO commands cmd:0x05
[   13.340829] rtk_sdmmc_send_cmd_get_rsp : reject SDIO commands cmd:0x05
[   13.347631] rtk_sdmmc_send_cmd_get_rsp : reject SDIO commands cmd:0x05
[   13.375021] mount_root: mounting /dev/root
[   13.381680] mount_root: loading kmods from internal overlay
[   13.439279] block: attempting to load /etc/config/fstab
[   13.445329] block: unable to load configuration (fstab: Entry not found)
[   13.452266] block: no usable configuration
fsck from util-linux 2.28
[   13.656044] mmc1: cannot verify signal voltage switch
e2fsck 1.42.12 (29-Aug-2014)
nasetc: recovering journal
nasetc: clean, 89/8200 files, 4411/40952 blocks
resize2fs 1.42.12 (29-Aug-2014)
The filesystem is already 40952 (1k) blocks long.  Nothing to do!

[   13.782961] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
ext4 etc mounted!
mount: /dev: filesystem mounted, but mount(8) failed: No such file or directory
[   13.821192] procd: - early -
Failed to connect to ubus
[   14.227298] SD/MMC card init done.
[   14.232946] rtk_sdmmc_get_ro: SD card is not write protect, regCARD_EXIST = 4
[   14.386962] rtk_sdmmc_execute_tuning CR_PLL_SD3: 174 (0xae)
[   14.392670] rtk_sdmmc_execute_tuning CLK_GEN DVI: 1
[   14.397695] mmc1: new ultra high speed SDR104 SDXC card at address 59b4
[   14.404807] mmcblk1: mmc1:59b4 USD00 59.1 GiB
[   14.410368]  mmcblk1: p1 p2

The LEDs of eth0 do not work in ubuntu now, it works under router mode.

We are waiting for permit to open schematic and kernel source, will soon.

Hi Jalen,

could you please check the power adapter, does it output 12v ? right ?

And please compare the uImage loaded from tftp and sd card by using below commands under u-boot:

  • tftp uImage
  • fload sd 0:1 1500000 uImage
  • cmp.b 0x1500000 0x3000000 0xc33168

please compare dtb file with the same way.

Hello,

in addition to the above startup problem, the logfiles Bananapi_w2.log (29,8 KB)

after about 1 minute power and reset at 62 ° C core temp Bananapi_w2.log_1 (75,8 KB)

greetings

Hello,

I use a 12V 2A power adapter which I bought with W2 board from the seller. The adapter also has a bpi logo.

I compared the file following the step. It says the same file.

Log here: https://pastebin.com/96bKZr47

Hi all,

please follow below steps to boot up from emmc and load linux from SD card.

  1. update u-boot(dvrboot.exe.bin) in emmc to latest version via MP_tool or hypertrm. (make sure the SW4 been switched to 0)
  2. run commands under u-boot to reset env vars:
    • env default -a
    • save
  3. plug in SD card and reset the board, it will boot up from eMMC and load linux from SD card.

I suspect that the SPI ROM from RTK is not stable now, if the board can boot up from eMMC normally, we will push RTK to update SPI rom.

Thank you, that worked! Now I eagerly await HDMI support. :slight_smile:

When switch SW4 0 and reset env to default, I can boot to sd card right now. It looks no error for booting.

Thanks.

Hello. My BPI-W2 cant initialize SD card. SD is not exist, regCARD_EXIST = 0x00 (CD flag is 0x04) SD: No card present initialize SD device at slot 0 failed sd - SD sub system

Could it be software problem, or this is hardware?

is it possible to run Android in this way, with sd?

not working this steps only green screen appear please help how can i do for Ubuntu run in the bpi w2