Initially load capes on AM335x without EEPROM

Hi,

I’m currently working on a custom BeagleBone Black of ours and I have a few problem. The electronic is the same except that there is no graphic chip and no EEPROM.

I’m booting on a µSD card the Angstrom distribution used in the BBB. The board is working well except that I have the following message during the boot “[ 5.561536] bone-capemgr bone_capemgr.9: Failed to scan baseboard eeprom”.

This is perfectly normal because I have no EEPROM. My problem is that I didn’t know that the EEPROM was mandatory to initialize the cape manager. Thus, my EMMC is not loaded by the OS.

I already tried to enable the cape with the uEnv.txt but it did nothing.
I also tried to load it manually but in my cape manager folder there is no “slot” file so i guess that the cape manager is simply OFF.

Is there a way to bypass the EEPROM and to load by default the EMMC cape ?
I’m actually going through the kernel compilation, i’m afraid that I can’t avoid it.
Does someone have any experience on this ?

Thank you by advance,

Julien

Mainline kernel has the eMMC setup by default in the dts...

Since you didn't specify a need for v3.8.x/capemgr, it's a viable option. :wink:

Regards,

Robert Nelson <robertcnelson@...> writes:

> Hi,
>
> I'm currently working on a custom BeagleBone Black of ours and I have a

few

> problem. The electronic is the same except that there is no graphic chip

and

> no EEPROM.
>
> I'm booting on a µSD card the Angstrom distribution used in the BBB. The
> board is working well except that I have the following message during

the

> boot "[ 5.561536] bone-capemgr bone_capemgr.9: Failed to scan

baseboard

> eeprom".
>
> This is perfectly normal because I have no EEPROM. My problem is that I
> didn't know that the EEPROM was mandatory to initialize the cape

manager.

> Thus, my EMMC is not loaded by the OS.
>
> I already tried to enable the cape with the uEnv.txt but it did nothing.
> I also tried to load it manually but in my cape manager folder there is

no

> "slot" file so i guess that the cape manager is simply OFF.
>
> Is there a way to bypass the EEPROM and to load by default the EMMC cape

?

> I'm actually going through the kernel compilation, i'm afraid that I

can't

> avoid it.
> Does someone have any experience on this ?

Mainline kernel has the eMMC setup by default in the dts...

Since you didn't specify a need for v3.8.x/capemgr, it's a viable option.

:wink:

Regards,

Hi Roberts,

Thank you this is great news. The reason why I didn't go with kernel version
over 3.8.x is because the u-boot that I tried didn't include a default load
device tree.

So now, I'm trying to use the eMMC Flasher from this link :
http://elinux.org/BeagleBoardUbuntu#eMMC:_BeagleBone_Black

I have a few problems with the MLO and the u-boot since I have no EEPROM.
I used the old MLO which agrees that I'm using a BBB by default. But I'm
still blocked on the u-boot part.

I tried using the uEnv.txt file with the following args but it is not
working:
board_name=A335BNLT
fdtfile=am335x-boneblack.dtb
uenvcmd=run loadimage; run loadfdt; run mmcargs; bootz ${loadaddr} -
${fdtaddr}
fdtdir=/boot/dtbs/3.8.13-bone59

My main problems are the following:
** Unable to read file /zImage **
** Unable to read file /boot/dtbs/3.8.13-bone59/am335x-boneblack.dtb **
Bad Linux ARM zImage magic!

Do you know how I could solve this ?

Best regards,

Julien

Robert Nelson <robertcnelson@...> writes:

> Hi,
>
> I'm currently working on a custom BeagleBone Black of ours and I have a

few

> problem. The electronic is the same except that there is no graphic chip

and

> no EEPROM.
>
> I'm booting on a µSD card the Angstrom distribution used in the BBB. The
> board is working well except that I have the following message during

the

> boot "[ 5.561536] bone-capemgr bone_capemgr.9: Failed to scan

baseboard

> eeprom".
>
> This is perfectly normal because I have no EEPROM. My problem is that I
> didn't know that the EEPROM was mandatory to initialize the cape

manager.

> Thus, my EMMC is not loaded by the OS.
>
> I already tried to enable the cape with the uEnv.txt but it did nothing.
> I also tried to load it manually but in my cape manager folder there is

no

> "slot" file so i guess that the cape manager is simply OFF.
>
> Is there a way to bypass the EEPROM and to load by default the EMMC cape

?

> I'm actually going through the kernel compilation, i'm afraid that I

can't

> avoid it.
> Does someone have any experience on this ?

Mainline kernel has the eMMC setup by default in the dts...

Since you didn't specify a need for v3.8.x/capemgr, it's a viable option.

:wink:

Regards,

Hi Roberts,

Thank you this is great news. The reason why I didn't go with kernel version
over 3.8.x is because the u-boot that I tried didn't include a default load
device tree.

So now, I'm trying to use the eMMC Flasher from this link :
http://elinux.org/BeagleBoardUbuntu#eMMC:_BeagleBone_Black

I have a few problems with the MLO and the u-boot since I have no EEPROM.
I used the old MLO which agrees that I'm using a BBB by default. But I'm
still blocked on the u-boot part.

I tried using the uEnv.txt file with the following args but it is not
working:
board_name=A335BNLT
fdtfile=am335x-boneblack.dtb
uenvcmd=run loadimage; run loadfdt; run mmcargs; bootz ${loadaddr} -
${fdtaddr}
fdtdir=/boot/dtbs/3.8.13-bone59

My main problems are the following:
** Unable to read file /zImage **
** Unable to read file /boot/dtbs/3.8.13-bone59/am335x-boneblack.dtb **
Bad Linux ARM zImage magic!

Do you know how I could solve this ?

Best regards,

Julien

Robert Nelson <robertcnelson@...> writes:

> Hi,
>
> I'm currently working on a custom BeagleBone Black of ours and I have a

few

> problem. The electronic is the same except that there is no graphic chip

and

> no EEPROM.
>
> I'm booting on a µSD card the Angstrom distribution used in the BBB. The
> board is working well except that I have the following message during

the

> boot "[ 5.561536] bone-capemgr bone_capemgr.9: Failed to scan

baseboard

> eeprom".
>
> This is perfectly normal because I have no EEPROM. My problem is that I
> didn't know that the EEPROM was mandatory to initialize the cape

manager.

> Thus, my EMMC is not loaded by the OS.
>
> I already tried to enable the cape with the uEnv.txt but it did nothing.
> I also tried to load it manually but in my cape manager folder there is

no

> "slot" file so i guess that the cape manager is simply OFF.
>
> Is there a way to bypass the EEPROM and to load by default the EMMC cape

?

> I'm actually going through the kernel compilation, i'm afraid that I

can't

> avoid it.
> Does someone have any experience on this ?

Mainline kernel has the eMMC setup by default in the dts...

Since you didn't specify a need for v3.8.x/capemgr, it's a viable option.

:wink:

Regards,

Hi Roberts,

Thank you this is great news. The reason why I didn't go with kernel version
over 3.8.x is because the u-boot that I tried didn't include a default load
device tree.

As long as your clone has the same memory and is 1Ghz version of the
am335x, you can use this u-boot patch:

https://github.com/RobertCNelson/Bootloader-Builder/blob/master/patches/v2014.07/0002-NFM-Production-eeprom-assume-device-is-BeagleBone-Bl.patch

So now, I'm trying to use the eMMC Flasher from this link :
BeagleBoardUbuntu - eLinux.org

I have a few problems with the MLO and the u-boot since I have no EEPROM.
I used the old MLO which agrees that I'm using a BBB by default. But I'm
still blocked on the u-boot part.

I tried using the uEnv.txt file with the following args but it is not
working:
board_name=A335BNLT
fdtfile=am335x-boneblack.dtb
uenvcmd=run loadimage; run loadfdt; run mmcargs; bootz ${loadaddr} -
${fdtaddr}
fdtdir=/boot/dtbs/3.8.13-bone59

My main problems are the following:
** Unable to read file /zImage **
** Unable to read file /boot/dtbs/3.8.13-bone59/am335x-boneblack.dtb **
Bad Linux ARM zImage magic!

Do you know how I could solve this ?

Regards,

Hi Robert,

Thank you, it's a good news.

The main reason I stayed on the 3.8 kernel version is because I wanted to
use the same kernel that was in the BBB. But it appears that the work you
made on the capemgr will be of help for my custom board.

However, now I have another problem.
I'm trying unsuccessfuly to use this flasher:
BeagleBoardUbuntu - eLinux.org

The problem is that the u-boot and the MLO doesn't have a default dtb. And
since I don't have a EEPROM, the boot is stuck.

I tried to use the MLO from the BBB, which seems to be OK. And now I'm
trying to use the uEnv.txt file to pass the BBB arguments to the u-boot but
I still can't boot properly.

The error that I can't resolve is essentially:
Bad Linux ARM zImage magic!

This just means you are trying to load something that isn't what it expects..

pastebin.com your serial boot log..

I know that the EEPROM should contain this:
struct am335x_baseboard_id {
        unsigned int magic;
        char name[HDR_NAME_LEN];
        char version[4];
        char serial[12];
        char config[32];
        char mac_addr[HDR_NO_OF_MAC_ADDR][HDR_ETH_ALEN];
};

Does this problem have something to do with the magic argument ?

Nope..

Is it eady to resolv ?

As long as your clone has the same memory and is 1Ghz version of the
am335x, you can use this u-boot patch:

https://github.com/RobertCNelson/Bootloader-Builder/blob/master/patches/v2014.07/0002-NFM-Production-eeprom-assume-device-is-BeagleBone-Bl.patch

Regards,

Yes, my custom board has the same RAM and µP. Only the eMMC is a 32GB one but I think that this will not be a problem.

I’ll try to apply the patch to the u-boot.

Thank you !!!

Hi Robert,

I tried to use the u-boot patch you mentionned but I still can’t see the eMMC cape.

I’m using the current ubuntu image : bone-ubuntu-14.04-console-armhf-2014-07-06-2gb

Here is my dmesg result. Do you see where the problem come from ?

Best regards,
Julien

dmesg
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 3.8.13-bone59 (root@imx6q-wandboard-2gb-0) (gcc version 4.8.2 (Ubuntu/Linaro 4.8.2-19ubuntu1) ) #1 SMP Sat Jul 5 02:59:43 UTC 2014
[ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=50c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine: Generic AM33XX (Flattened Device Tree), model: TI AM335x BeagleBone
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] On node 0 totalpages: 130816
[ 0.000000] free_area_init_node: node 0, pgdat c08a8e80, node_mem_map c0924000
[ 0.000000] Normal zone: 1024 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 129792 pages, LIFO batch:31
[ 0.000000] AM335X ES2.1 (l2cache sgx neon )
[ 0.000000] PERCPU: Embedded 9 pages/cpu @c0d34000 s14080 r8192 d14592 u36864
[ 0.000000] pcpu-alloc: s14080 r8192 d14592 u36864 alloc=9*4096
[ 0.000000] pcpu-alloc: [0] 0
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 129792
[ 0.000000] Kernel command line: console=ttyO0,115200n8 root=/dev/mmcblk0p2 ro rootfstype=ext4 rootwait fixrtc quiet
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] __ex_table already sorted, skipping sort
[ 0.000000] allocated 1048576 bytes of page_cgroup
[ 0.000000] please try ‘cgroup_disable=memory’ option if you don’t want memory cgroups
[ 0.000000] Memory: 511MB = 511MB total
[ 0.000000] Memory: 505024k/505024k available, 19264k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xe0800000 - 0xff000000 ( 488 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf800000 - 0xbfe00000 ( 6 MB)
[ 0.000000] .text : 0xc0008000 - 0xc07e3b78 (8047 kB)
[ 0.000000] .init : 0xc07e4000 - 0xc0823700 ( 254 kB)
[ 0.000000] .data : 0xc0824000 - 0xc08abe40 ( 544 kB)
[ 0.000000] .bss : 0xc08abe40 - 0xc0923580 ( 478 kB)
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1.
[ 0.000000] NR_IRQS:0 nr_irqs:0 0
[ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
[ 0.000000] Total of 128 interrupts on 1 active controller
[ 0.000000] OMAP clockevent source: GPTIMER1 at 26000000 Hz
[ 0.000000] sched_clock: 32 bits at 26MHz, resolution 38ns, wraps every 165191ms
[ 0.000000] OMAP clocksource: GPTIMER2 at 26000000 Hz
[ 0.000000] Console: colour dummy device 80x30
[ 0.000215] Calibrating delay loop… 1077.49 BogoMIPS (lpj=1051648)
[ 0.029198] pid_max: default: 32768 minimum: 301
[ 0.029321] Security Framework initialized
[ 0.029373] Mount-cache hash table entries: 512
[ 0.034711] Initializing cgroup subsys cpuacct
[ 0.034734] Initializing cgroup subsys memory
[ 0.034770] Initializing cgroup subsys blkio
[ 0.034852] CPU: Testing write buffer coherency: ok
[ 0.035239] CPU0: thread -1, cpu 0, socket -1, mpidr 0
[ 0.035287] Setting up static identity map for 0x804c96f8 - 0x804c9744
[ 0.036115] Brought up 1 CPUs
[ 0.036128] SMP: Total of 1 processors activated (1077.49 BogoMIPS).
[ 0.036778] devtmpfs: initialized
[ 0.044759] omap_hwmod: wd_timer2: _wait_target_disable failed
[ 0.095846] pinctrl core: initialized pinctrl subsystem
[ 0.095971] rstctl core: initialized rstctl subsystem
[ 0.096236] regulator-dummy: no parameters
[ 0.096530] NET: Registered protocol family 16
[ 0.097013] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.102145] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
[ 0.102639] platform 49000000.edma: alias fck already exists
[ 0.102655] platform 49000000.edma: alias fck already exists
[ 0.102667] platform 49000000.edma: alias fck already exists
[ 0.103203] gpiochip_add: registered GPIOs 0 to 31 on device: gpio
[ 0.103290] OMAP GPIO hardware version 0.1
[ 0.104080] gpiochip_add: registered GPIOs 32 to 63 on device: gpio
[ 0.104693] gpiochip_add: registered GPIOs 64 to 95 on device: gpio
[ 0.105318] gpiochip_add: registered GPIOs 96 to 127 on device: gpio
[ 0.105587] of_get_named_gpio_flags exited with status 52
[ 0.105602] gpio-rctrl rstctl.4: loaded OK
[ 0.108379] hw-breakpoint: debug architecture 0x4 unsupported.
[ 0.109533] cpsw.0: No hwaddr in dt. Using d0:ff:50:eb:f4:c7 from efuse
[ 0.109551] cpsw.1: No hwaddr in dt. Using d0:ff:50:eb:f4:c9 from efuse
[ 0.116814] bio: create slab at 0
[ 0.122525] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
[ 0.122657] of_get_named_gpio_flags: can’t parse gpios property
[ 0.122767] vmmcsd_fixed: 3300 mV
[ 0.124153] SCSI subsystem initialized
[ 0.124363] usbcore: registered new interface driver usbfs
[ 0.124418] usbcore: registered new interface driver hub
[ 0.124591] usbcore: registered new device driver usb
[ 0.125698] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
[ 0.126525] input: tps65217_pwr_but as /devices/ocp.3/44e0b000.i2c/i2c-0/0-0024/input/input0
[ 0.127990] DCDC1: at 1500 mV
[ 0.128743] vdd_mpu: 925 <–> 1325 mV at 1325 mV
[ 0.129508] vdd_core: 925 <–> 1150 mV at 1125 mV
[ 0.130238] LDO1: at 1800 mV
[ 0.130990] LDO2: at 3300 mV
[ 0.132348] LDO3: 1800 mV
[ 0.133116] LDO4: at 3300 mV
[ 0.133767] tps65217 0-0024: TPS65217 ID 0xe version 1.2
[ 0.134165] omap_i2c 44e0b000.i2c: unable to select pin group
[ 0.134578] omap_i2c 4819c000.i2c: bus 1 rev0.11 at 100 kHz
[ 0.135834] omap_i2c 4819c000.i2c: unable to select pin group
[ 0.135960] media: Linux media interface: v0.10
[ 0.136020] Linux video capture interface: v2.00
[ 0.136087] pps_core: LinuxPPS API ver. 1 registered
[ 0.136452] Advanced Linux Sound Architecture Driver Initialized.
[ 0.137038] NetLabel: Initializing
[ 0.137049] NetLabel: domain hash size = 128
[ 0.137054] NetLabel: protocols = UNLABELED CIPSOv4
[ 0.137113] NetLabel: unlabeled traffic allowed by default
[ 0.137280] Switching to clocksource gp_timer
[ 0.165101] NET: Registered protocol family 2
[ 0.165676] TCP established hash table entries: 4096 (order: 3, 32768 bytes)
[ 0.165751] TCP bind hash table entries: 4096 (order: 4, 81920 bytes)
[ 0.165834] TCP: Hash tables configured (established 4096 bind 4096)
[ 0.165893] TCP: reno registered
[ 0.165906] UDP hash table entries: 256 (order: 1, 12288 bytes)
[ 0.165929] UDP-Lite hash table entries: 256 (order: 1, 12288 bytes)
[ 0.166146] NET: Registered protocol family 1
[ 0.166502] RPC: Registered named UNIX socket transport module.
[ 0.166512] RPC: Registered udp transport module.
[ 0.166519] RPC: Registered tcp transport module.
[ 0.166525] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.166820] Trying to unpack rootfs image as initramfs…
[ 0.355994] Freeing initrd memory: 3224K
[ 0.356307] hw perfevents: enabled with ARMv7 Cortex-A8 PMU driver, 5 counters available
[ 0.356533] CPU PMU: attempt to register multiple PMU devices!
[ 0.356558] arm-pmu: probe of arm-pmu failed with error -28
[ 0.356852] omap2_mbox_probe: platform not supported
[ 0.497111] VFS: Disk quotas dquot_6.5.2
[ 0.497241] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.497883] NFS: Registering the id_resolver key type
[ 0.497947] Key type id_resolver registered
[ 0.497956] Key type id_legacy registered
[ 0.498203] fuse init (API version 7.20)
[ 0.498554] Btrfs loaded
[ 0.498712] msgmni has been set to 992
[ 0.500141] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)
[ 0.500156] io scheduler noop registered
[ 0.500164] io scheduler deadline registered
[ 0.500184] io scheduler cfq registered (default)
[ 0.501217] tps65217-bl tps65217-bl: no platform data provided
[ 0.501239] tps65217-bl: probe of tps65217-bl failed with error -22
[ 0.501694] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[ 0.502893] omap_uart 44e09000.serial: did not get pins for uart0 error: -19
[ 0.503148] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 72) is a OMAP UART0
[ 0.514015] console [ttyO0] enabled
[ 0.514616] [drm] Initialized drm 1.1.0 20060810
[ 0.521183] brd: module loaded
[ 0.524583] loop: module loaded
[ 0.524656] at24 0-0050: 32768 byte 24c256 EEPROM, writable, 1 bytes/write
[ 0.524695] at24 1-0054: 32768 byte 24c256 EEPROM, writable, 1 bytes/write
[ 0.524727] at24 1-0055: 32768 byte 24c256 EEPROM, writable, 1 bytes/write
[ 0.524760] at24 1-0056: 32768 byte 24c256 EEPROM, writable, 1 bytes/write
[ 0.524792] at24 1-0057: 32768 byte 24c256 EEPROM, writable, 1 bytes/write
[ 0.555322] bone-capemgr bone_capemgr.9: bone: scan failed (1 time)
[ 1.088517] bone-capemgr bone_capemgr.9: bone: scan failed (2 time)
[ 1.621719] bone-capemgr bone_capemgr.9: bone: scan failed (3 time)
[ 2.154926] bone-capemgr bone_capemgr.9: bone: scan failed (4 time)
[ 2.688125] bone-capemgr bone_capemgr.9: bone: scan failed (5 time)
[ 3.221328] bone-capemgr bone_capemgr.9: bone: scan failed (6 time)
[ 3.754531] bone-capemgr bone_capemgr.9: bone: scan failed (7 time)
[ 4.287736] bone-capemgr bone_capemgr.9: bone: scan failed (8 time)
[ 4.820938] bone-capemgr bone_capemgr.9: bone: scan failed (9 time)
[ 5.354141] bone-capemgr bone_capemgr.9: bone: scan failed (10 time)
[ 5.856100] bone-capemgr bone_capemgr.9: Failed to scan baseboard eeprom
[ 5.862586] bone-capemgr: probe of bone_capemgr.9 failed with error -110
[ 5.864156] OneNAND driver initializing
[ 5.864903] usbcore: registered new interface driver cdc_ether
[ 5.864948] usbcore: registered new interface driver rndis_host
[ 5.865039] usbcore: registered new interface driver cdc_ncm
[ 5.865454] usbcore: registered new interface driver cdc_acm
[ 5.865464] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[ 5.865471] Initializing USB Mass Storage driver…
[ 5.865540] usbcore: registered new interface driver usb-storage
[ 5.865547] USB Mass Storage support registered.
[ 5.865639] musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)
[ 5.865903] musb-hdrc musb-hdrc.0.auto: pdev->id = 0
[ 5.865918] musb-hdrc musb-hdrc.0.auto: drivers/usb/musb/musb_dsps.c:468 dsps_musb_init: OK
[ 5.865940] musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
[ 5.865950] musb-hdrc: MHDRC RTL version 2.0
[ 5.865957] musb-hdrc: setup fifo_mode 4
[ 5.865971] musb-hdrc: 28/31 max ep, 16384/16384 memory
[ 5.866049] musb-hdrc musb-hdrc.0.auto: *** mode=3
[ 5.866058] musb-hdrc musb-hdrc.0.auto: *** power=250
[ 5.866458] musb-hdrc musb-hdrc.1.auto: pdev->id = 1
[ 5.866472] musb-hdrc musb-hdrc.1.auto: drivers/usb/musb/musb_dsps.c:468 dsps_musb_init: OK
[ 5.866492] musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
[ 5.866500] musb-hdrc: MHDRC RTL version 2.0
[ 5.866506] musb-hdrc: setup fifo_mode 4
[ 5.866516] musb-hdrc: 28/31 max ep, 16384/16384 memory
[ 5.866581] musb-hdrc musb-hdrc.1.auto: *** mode=1
[ 5.866591] musb-hdrc musb-hdrc.1.auto: *** power=250
[ 5.866600] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[ 5.866797] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1
[ 5.866819] musb-hdrc musb-hdrc.1.auto: supports USB remote wakeup
[ 5.866879] usb usb1: default language 0x0409
[ 5.866907] usb usb1: udev 1, busnum 1, minor = 0
[ 5.866918] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 5.866928] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 5.866937] usb usb1: Product: MUSB HDRC host driver
[ 5.866945] usb usb1: Manufacturer: Linux 3.8.13-bone59 musb-hcd
[ 5.866954] usb usb1: SerialNumber: musb-hdrc.1.auto
[ 5.867344] usb usb1: usb_probe_device
[ 5.867358] usb usb1: configuration #1 chosen from 1 choice
[ 5.867395] usb usb1: adding 1-0:1.0 (config #1, interface 0)
[ 5.867495] hub 1-0:1.0: usb_probe_interface
[ 5.867506] hub 1-0:1.0: usb_probe_interface - got id
[ 5.867520] hub 1-0:1.0: USB hub found
[ 5.867540] hub 1-0:1.0: 1 port detected
[ 5.867549] hub 1-0:1.0: standalone hub
[ 5.867557] hub 1-0:1.0: individual port power switching
[ 5.867566] hub 1-0:1.0: no over-current protection
[ 5.867574] hub 1-0:1.0: Single TT
[ 5.867583] hub 1-0:1.0: TT requires at most 8 FS bit times (666 ns)
[ 5.867591] hub 1-0:1.0: power on to power good time: 10ms
[ 5.867612] hub 1-0:1.0: local power source is good
[ 5.867663] hub 1-0:1.0: enabling power on all ports
[ 5.868267] mousedev: PS/2 mouse device common for all mice
[ 5.869562] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
[ 5.869723] i2c /dev entries driver
[ 5.870669] pps_ldisc: PPS line discipline registered
[ 5.870743] Driver for 1-wire Dallas network protocol.
[ 5.871838] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
[ 5.872198] device-mapper: ioctl: 4.23.1-ioctl (2012-12-18) initialised: dm-devel@redhat.com
[ 5.872230] cpuidle: using governor ladder
[ 5.872238] cpuidle: using governor menu
[ 5.872460] of_get_named_gpio_flags exited with status 6
[ 5.872470] of_get_named_gpio_flags: can’t parse gpios property
[ 5.872477] of_get_named_gpio_flags: can’t parse gpios property
[ 5.872496] omap_hsmmc mmc.5: of_parse_phandle_with_args of ‘reset’ failed
[ 5.879163] omap_hsmmc mmc.5: Failed to get rstctl; not using any
[ 5.879448] edma-dma-engine edma-dma-engine.0: allocated channel for 0:25
[ 5.879490] edma-dma-engine edma-dma-engine.0: allocated channel for 0:24
[ 5.879711] mmc.5 supply vmmc_aux not found, using dummy regulator
[ 5.879993] omap_hsmmc mmc.5: pins are not configured from the driver
[ 5.907184] pinctrl-single 44e10800.pinmux: pin 44e10854 already requested by 44e10800.pinmux; cannot claim for gpio-leds.8
[ 5.917977] pinctrl-single 44e10800.pinmux: pin-21 (gpio-leds.8) status -22
[ 5.924686] pinctrl-single 44e10800.pinmux: could not request pin 21 on device pinctrl-single
[ 5.932923] leds-gpio gpio-leds.8: pins are not configured from the driver
[ 5.932944] of_get_named_gpio_flags exited with status 53
[ 5.932954] of_get_named_gpio_flags exited with status 54
[ 5.932963] of_get_named_gpio_flags exited with status 55
[ 5.932972] of_get_named_gpio_flags exited with status 56
[ 5.932983] of_get_named_gpio_flags exited with status 53
[ 5.933144] of_get_named_gpio_flags exited with status 54
[ 5.933288] of_get_named_gpio_flags exited with status 55
[ 5.933377] of_get_named_gpio_flags exited with status 56
[ 5.933662] ledtrig-cpu: registered to indicate activity on CPUs
[ 5.933888] edma-dma-engine edma-dma-engine.0: allocated channel for 0:36
[ 5.933933] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
[ 5.935133] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
[ 5.935204] edma-dma-engine edma-dma-engine.0: allocated channel for 0:5
[ 5.935240] edma-dma-engine edma-dma-engine.0: allocated channel for 0:6
[ 5.937750] usbcore: registered new interface driver usbhid
[ 5.937763] usbhid: USB HID core driver
[ 5.938628] ashmem: initialized
[ 5.938815] logger: created 256K log ‘log_main’
[ 5.938986] logger: created 256K log ‘log_events’
[ 5.939140] logger: created 256K log ‘log_radio’
[ 5.939295] logger: created 256K log ‘log_system’
[ 5.941057] TCP: cubic registered
[ 5.941134] NET: Registered protocol family 10
[ 5.941827] NET: Registered protocol family 17
[ 5.942179] Key type dns_resolver registered
[ 5.942329] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[ 5.942351] ThumbEE CPU extension supported.
[ 5.942379] Registering SWP/SWPB emulation handler
[ 5.942942] registered taskstats version 1
[ 5.967490] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0000
[ 5.967537] hub 1-0:1.0: hub_suspend
[ 5.967560] usb usb1: bus auto-suspend, wakeup 1
[ 5.990222] mmc0: host does not support reading read-only switch. assuming write-enable.
[ 5.990861] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
[ 5.990872] davinci_mdio 4a101000.mdio: detected phy mask fffffffe
[ 5.992108] mmc0: new high speed SDHC card at address 1234
[ 5.994910] mmcblk0: mmc0:1234 SA16G 14.6 GiB
[ 5.996619] mmcblk0: p1 p2
[ 5.998967] libphy: 4a101000.mdio: probed
[ 5.998991] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LAN8720
[ 5.999145] Detected MACID = d0:ff:50:eb:f4:c7
[ 5.999245] cpsw 4a100000.ethernet: NAPI disabled
[ 6.000192] omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)
[ 6.006328] ALSA device list:
[ 6.006350] No soundcards found.
[ 6.007026] Freeing init memory: 252K
[ 6.086805] systemd-udevd[96]: starting version 204
[ 7.716228] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[ 8.397593] init: plymouth-upstart-bridge main process (151) terminated with status 1
[ 8.397673] init: plymouth-upstart-bridge main process ended, respawning
[ 8.489076] init: plymouth-upstart-bridge main process (161) terminated with status 1
[ 8.489159] init: plymouth-upstart-bridge main process ended, respawning
[ 8.554676] init: plymouth-upstart-bridge main process (164) terminated with status 1
[ 8.554749] init: plymouth-upstart-bridge main process ended, respawning
[ 8.557001] init: ureadahead main process (154) terminated with status 5
[ 10.730381] EXT4-fs (mmcblk0p2): re-mounted. Opts: errors=remount-ro
[ 13.119106] systemd-udevd[296]: starting version 204
[ 15.911971] init: avahi-cups-reload main process (385) terminated with status 1
[ 16.073022] net eth0: initializing cpsw version 1.12 (0)
[ 16.076064] net eth0: phy found : id is : 0x7c0f1
[ 16.076095] libphy: PHY 4a101000.mdio:01 not found
[ 16.080789] net eth0: phy 4a101000.mdio:01 not found on slave 1
[ 16.114642] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 17.683245] init: udev-fallback-graphics main process (465) terminated with status 1
[ 27.169984] init: plymouth-upstart-bridge main process ended, respawning
[ 60.649487] gadget: using random self ethernet address
[ 60.656050] usb0: MAC e6:f7:2c:27:dc:2e
[ 60.656092] usb0: HOST MAC d0:ff:50:eb:f4:c9
[ 60.671243] gadget: Mass Storage Function, version: 2009/09/11
[ 60.671290] gadget: Number of LUNs=1
[ 60.671345] lun0: LUN: removable file: /dev/mmcblk0p1
[ 60.671539] gadget: Multifunction Composite Gadget
[ 60.671602] gadget: g_multi ready
[ 60.671680] musb-hdrc musb-hdrc.0.auto: MUSB HDRC host driver
[ 60.672632] musb-hdrc musb-hdrc.0.auto: new USB bus registered, assigned bus number 2
[ 60.674002] musb-hdrc musb-hdrc.0.auto: supports USB remote wakeup
[ 60.674171] usb usb2: default language 0x0409
[ 60.674263] usb usb2: udev 1, busnum 2, minor = 128
[ 60.674299] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[ 60.674334] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 60.674365] usb usb2: Product: MUSB HDRC host driver
[ 60.674397] usb usb2: Manufacturer: Linux 3.8.13-bone59 musb-hcd
[ 60.674427] usb usb2: SerialNumber: musb-hdrc.0.auto
[ 60.677140] usb usb2: usb_probe_device
[ 60.677188] usb usb2: configuration #1 chosen from 1 choice
[ 60.677302] usb usb2: adding 2-0:1.0 (config #1, interface 0)
[ 60.677669] hub 2-0:1.0: usb_probe_interface
[ 60.677704] hub 2-0:1.0: usb_probe_interface - got id
[ 60.677753] hub 2-0:1.0: USB hub found
[ 60.677814] hub 2-0:1.0: 1 port detected
[ 60.677844] hub 2-0:1.0: standalone hub
[ 60.677871] hub 2-0:1.0: individual port power switching
[ 60.677900] hub 2-0:1.0: no over-current protection
[ 60.677927] hub 2-0:1.0: Single TT
[ 60.677958] hub 2-0:1.0: TT requires at most 8 FS bit times (666 ns)
[ 60.677987] hub 2-0:1.0: power on to power good time: 10ms
[ 60.678051] hub 2-0:1.0: local power source is good
[ 60.678222] hub 2-0:1.0: enabling power on all ports
[ 60.778161] hub 2-0:1.0: state 7 ports 1 chg 0000 evt 0000
[ 60.778217] hub 2-0:1.0: hub_suspend
[ 60.778244] usb usb2: bus auto-suspend, wakeup 1
[ 63.683164] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
ubuntu@arm:/$

Hi Robert,

I tried to use the patch for the u-boot you mentionned but I have no results
with it.

I still have the same problem, my eMMC is not detected because the eMMC cape
is not loaded. I'm currently working with the following image on a µSD card,
bone-ubuntu-14.04-console-armhf-2014-07-06-2gb , and a BBB which from I
retrieved the EEPROM.

Here is the pastebin link of my dmesg: Ubuntu-BBB-dmesg - Pastebin.com
Here is the pastebin link of my serial startup: Serial_startup_BBB - Pastebin.com

Do you have any idea of why it is not loading ?
Will I need to modify and recompile the kernel ?

u-boot looks perfect to me.. It loaded everything exactly like a real
"BeagleBone Black"..

Next "you" just need to patch the kernel to bypass the eeprom = valid,
capemgr check.

Regards,

OK.

So I took the sources from your git repository and I'm trying to force the
capemgr to load the emmc. I'm trying to modify the patch.sh file to force
it.

Do you know if there is an easiest way to do it ?
I'm sorry, I'm a beginner concerning kernel things.
The kernel compilation takes quite some time, it will save me a lot of time
if you could give me a hint.

Best regards,
Julien

Julien <penou87@...> writes:

OK.

So I took the sources from your git repository and I'm trying to force the
capemgr to load the emmc. I'm trying to modify the patch.sh file to force
it.

Do you know if there is an easiest way to do it ?
I'm sorry, I'm a beginner concerning kernel things.
The kernel compilation takes quite some time, it will save me a lot of time
if you could give me a hint.

Best regards,
Julien

Forget it, it's ok.
Actually I took the 3.16 kernel.
I just have a few things to fix during the kernel compilation (no LCD, default
cpu-freq at 800MHz...) and it will be perfect.

Thanks a lot for your advices.

which lcd?

https://github.com/RobertCNelson/bb-kernel/blob/am33x-v3.16/patches/pinmux/0009-am335x-bone-common-pinmux-lcd4.patch

https://github.com/RobertCNelson/bb-kernel/blob/am33x-v3.16/patches/dts/0001-am335x-boneblack-add-cpu0-opp-points.patch#L155

Regards,

Robert Nelson <robertcnelson@...> writes:

> Julien <penou87 <at> ...> writes:
>
>>
>>
>> OK.
>>
>> So I took the sources from your git repository and I'm trying to force

the

>> capemgr to load the emmc. I'm trying to modify the patch.sh file to

force

>> it.
>>
>> Do you know if there is an easiest way to do it ?
>> I'm sorry, I'm a beginner concerning kernel things.
>> The kernel compilation takes quite some time, it will save me a lot of

time

>> if you could give me a hint.
>>
>> Best regards,
>> Julien
>>
>
> Forget it, it's ok.
> Actually I took the 3.16 kernel.
> I just have a few things to fix during the kernel compilation (no LCD,

default

> cpu-freq at 800MHz...) and it will be perfect.

which lcd?

https://github.com/RobertCNelson/bb-kernel/blob/am33x-

v3.16/patches/pinmux/0009-am335x-bone-common-pinmux-lcd4.patch

https://github.com/RobertCNelson/bb-kernel/blob/am33x-

v3.16/patches/dts/0001-am335x-boneblack-add-cpu0-opp-points.patch#L155

Regards,

I went with the 3.15.9 kernel which has not included the cape for lcd so
it's ok.

However, I have a lot of trouble with the g_multi module that I tried
unsuccessfuly to configure during the kernel building.

I'd like to use the usb0 as the beaglebone does: RNDIS ethernet and mass
storage. I checked the option to build a module configured by file and when
asked I chose the mass storage and RNDIS drivers but I can't find the
g_multi module in the kernel. Furthermore, it is not loaded by the OS at
startup.

Also, I can't connect by ssh via the ethernet port but it seems to be
configured well:

Do you have ideas on these problems ?

Hello Julien,

I am working on similar project (custom BBB board). I have tested my system on the BB board and i am ready to move to the PCB design (same uP & RAM etc… but not EEPROM). This post had given me some insight on what problems to expect.
My question is unrelated to the discussion on this thread, but I am afraid that when I move to the PCB design stage it will be very trick. So could you please recommend a PCB/schematics designing service along with PCB fabrication and assembly that could get my custom BBB done?

Thanks in advance.

Regards,
Khalid