optargs in kernel 3.15.10-bone8

Err actually, they are not loaded, been a while since ive played with slots heh.

Does the “L” that is there in the listing for slot 4, but not 5 and 6, indicate that it is loaded. If you echo in the HDMI capes again do they then show a “L” as well?

By “new fangled” I mean 3.14 and above – when I ls /sys/devices there is no bone_capemgr

I think if they are built in and not loaded as an overlay they never disappear from the listing I think that L comes and goes to show there status.

Thank you all for you assistance the problem is resolved. just some additional points.

SD Card boot partition:
uEnv.txt

#cmdline=quiet init=/lib/systemd/systemd consoleblank=0 <======= DOES NOT WORK

Thanks William, but the line in red is just commented out to indicate it is not part of the working file. I did not work without the hash.
I have followed these instructions http://elinux.org/Beagleboard:U-boot_partitioning_layout_2.0#nfs_support and there is no mention of any netargs…

Apologies for my ignorance, but I am brand new to all this and having a hard time following, would you please clarify how to achieve what you mentioned.

the display is now not balnking after adding the optargs to uEnv.txt in the fat boot partition but for learning sake, I would like to know how to achieve this in the /boot/uEnv.txt

Thanks for the help.

Rob

Sorry - there is a typo…

“…the display is now not blanking, after adding the optargs to uEnv.txt in the fat boot partition but for learning sake, I would like to know how to achieve this in the /boot/uEnv.txt”

So the second stage uEnv.txt file should look like this in order for it to work.

uname_r=3.15.10-bone8

cmdline=quiet init=/lib/systemd/systemd consoleblank=0

I tried both ways, and both ways work. But only one cmdline env variable needs be set in the second stage uEnv.txt file.

root@arm:~# mount /dev/mmcblk0p1 /media/boot/
root@arm:~# cat /media/boot/uEnv.txt |grep optargs=
optargs=consoleblank=0
root@arm:~# cat /sys/module/kernel/parameters/consoleblank
0

is how i have it set now However, if i remove that line and reboot.

root@arm:~# cat /media/boot/uEnv.txt |grep optargs=
#optargs=consoleblank=0
root@arm:~# reboot
Connection to 192.168.7.2 closed by remote host.
Connection to 192.168.7.2 closed.
william@dstar:~$ ssh root@192.168.7.2
root@192.168.7.2’s password:
Linux arm 3.8.13-bone64.1 #1 SMP Sun Aug 31 13:30:46 MST 2014 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon Sep 8 01:21:27 2014 from 192.168.7.1
root@arm:~#
root@arm:~# cat /sys/module/kernel/parameters/consoleblank
600

Now i edit and save the second stage uEnv.txt file
root@arm:~# nano /boot/uEnv.txt
root@arm:~# cat /boot/uEnv.txt
uname_r=3.8.13-bone64.1
cmdline=quiet init=/lib/systemd/systemd consoleblank=0
cape_disable=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN
root@arm:~# reboot
Connection to 192.168.7.2 closed by remote host.
Connection to 192.168.7.2 closed.
william@dstar:~$ ssh root@192.168.7.2
root@192.168.7.2’s password:
Linux arm 3.8.13-bone64.1 #1 SMP Sun Aug 31 13:30:46 MST 2014 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon Sep 8 02:42:59 2014 from 192.168.7.1
root@arm:~# cat /sys/module/kernel/parameters/consoleblank
600

Hilarious !!! Now it does not work, but did before. troubleshooting face

SO now to see if systemd is somehow getting in the way . . .

root@arm:~# cat /boot/uEnv.txt
uname_r=3.8.13-bone64.1
cmdline=quiet consoleblank=0 init=/lib/systemd/systemd
cape_disable=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN
root@arm:~# reboot
Connection to 192.168.7.2 closed by remote host.
Connection to 192.168.7.2 closed.

william@dstar:~$ ssh root@192.168.7.2
root@192.168.7.2’s password:
Linux arm 3.8.13-bone64.1 #1 SMP Sun Aug 31 13:30:46 MST 2014 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon Sep 8 02:51:21 2014 from 192.168.7.1
root@arm:~# cat /sys/module/kernel/parameters/consoleblank
600

Thats not it, so one more thing that I changed after I switched to using optargs

root@arm:~# nano /boot/uEnv.txt
root@arm:~# cat /boot/uEnv.txt
uname_r=3.8.13-bone64.1
cmdline=quiet init=/lib/systemd/systemd consoleblank=0
#cape_disable=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN
root@arm:~# reboot
Connection to 192.168.7.2 closed by remote host.
Connection to 192.168.7.2 closed.
william@dstar:~$ ssh root@192.168.7.2
root@192.168.7.2’s password:
Permission denied, please try again.
root@192.168.7.2’s password:
Linux arm 3.8.13-bone64.1 #1 SMP Sun Aug 31 13:30:46 MST 2014 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon Sep 8 02:57:48 2014 from 192.168.7.1
root@arm:~# cat /sys/module/kernel/parameters/consoleblank
600

Very confused troubleshooting face

root@arm:~# shutdown now -h
Connection to 192.168.7.2 closed by remote host.
Connection to 192.168.7.2 closed.
william@dstar:~$ ssh root@192.168.7.2
root@192.168.7.2’s password:
Linux arm 3.8.13-bone64.1 #1 SMP Sun Aug 31 13:30:46 MST 2014 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon Sep 8 03:03:47 2014 from 192.168.7.1
root@arm:~# cat /sys/module/kernel/parameters/consoleblank
600

Eyeballs 5lb sledgehammer sitting on a bench across the room

At this point I used setterm -blank 0 just to see what else it ws that i did, and it did not work. So Moscowbob, you’re right, it does not seem to be working, but did initially for me until i switched to using optargs . . . This is definitely very annoying however.

Moscowbob, you and I both now. Initially it worked, but now for some reason it does not. There are a few things I can check and instead of me doing a play by play and posting 500 lines more . . . let me see if i can get to the bottom of it.

Ok, silly me, was editing the wrong file. I was editing the file on the NFS rootfs, when I am actually loading my second stage uEnv.txt file from the sdcard.

root@arm:~# mount /dev/mmcblk0p1 /media/boot/
root@arm:~# mkdir /media/rootfs
root@arm:~# mount /dev/mmcblk0p2 /media/rootfs/
root@arm:~# cat /media/boot/uEnv.txt |optargs=

/* No output now since i completely removed the line */

root@arm:~# cat /media/rootfs/boot/uEnv.txt
uname_r=3.8.13-bone64.1
cmdline=quiet init=/lib/systemd/systemd consoleblank=0
cape_disable=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN
root@arm:~# cat /sys/module/kernel/parameters/consoleblank
0

Moscowbob, if you’re familiar with C I can link you to the header file that pretty much determines how all this works. The netargs line I am talking about is something I have set in my own 1st stage uEnv.txt file, since this used to be the way it had to be done. Now, I use it still, because I boot custom compared to Roberts new way. I only load the root file system via NFS, and the kernel still gets loaded from the sdcard.

Understanding all of this takes time. I first learned this around 14-15 months ago when the A5A was first released to the general public. I more than 2 weeks reading all the uEnv.txt files I could, and when I felt I understood things well enough, I asked Robert C Nelson a question ( I do not remember what offhand ), and he linked me to this file. http://git.denx.de/?p=u-boot.git;a=blob;f=include/configs/am335x_evm.h;hb=HEAD#l57 This was enough information for me to fully understand what I needed to do in order to get what I wanted to achieve done.

Other than this, I do not know how else to explain to you it all works. Except, if you examine the 1st stage uEnv.txt file I pasted above closer towards the top, and examine the output of /proc/cmdline . . . It might all start making sense to you.

Yeah i made another minor mistake, it’s getting late for me.

root@arm:~# cat /media/boot/uEnv.txt |optargs=
/* No output now since i completely removed the line */

should be:

root@arm:~# cat /media/boot/uEnv.txt |grep optargs=
root@arm:~#

Still no output though, as again the line has been completely removed from the first uEnv.txt file

Ack, It’s definitely getting late( 3:50am ) I keep slipping up and forgetting to add information.

Moscowbob, here i a blog post I wrote up on the subject last year. http://www.embeddedhobbyist.com/debian-tips/beaglebone-black/beaglebone-black-nfs-root/

I also wrote another post on how to boot via a USB hard drive here too.http://www.embeddedhobbyist.com/debian-tips/beaglebone-black/beaglebone-black-usb-boot/ The information is written in a way to make it more concise, but the information is also different. Since we’re “booting” from a different device.

There is also another post I wrote on loading the kernel over the network via tftp. If you can wrap your brain around these 3 different posts well enough you should have a better understanding of how all this works

For the sake of future readers (with their googley eyes) it would be nice if someone (aka robert sea nelson the glorious inland mariner who makes it possible for us to have all of our problems with his ever changing maps :wink: ) piped in come Minnesota Monday Morning (aka M.M.M) and told me how many times the thing called uEnv.txt is invoked and why he is leaving multiple copies of it lying around.

Jason, In Roberts defense, I have a custom setup that he has no control over. However, the second stage uEnv.txt file on the rootfs was added to make it easier for newbs to edit and add various thing without “bricking” their boards.

At least this is why I think it’s done this way. Makes complete sense though does it not ?

Thanks guys for all the help and info, I will get reading on these posts and hopefully get to some form of limited understanding :slight_smile:
Although a steep learning curve, I must admit that RCN has done phenomenal work - even a noob like me managed to build QT5.3.1 virtually “out-of-the box”.

It is the finer details which takes time to find out but thanks to a great community, all noobs can get there some day.

Well done and thanks to all !!

Off to get brain damaged reading…

Rob

So the background on this. We've had users "soft-brick" their boards
by deleting the boot partition. As this partition was loaded on
"windows" machine and those users wanted to use the full drive's
space. So since the July testing release, we went thru a few
transitions as we moved all the boot critical files somewhere else.

Of course, we still needed backwards compatibility. :wink:

u-boot older then: v2014.07 (with my patch)

/uEnv.txt (in fat partition) loads /boot/uEnv.txt (in ext4 partition)

u-boot newer then: v2014.07 (with my patch)

u-boot finds /boot/uEnv.txt in any partition (1 -> 7)

Regards,

So to achieve this with a kernel (not v3.8.x)

http://elinux.org/Beagleboard:Capes_3.8_to_3.14

sudo apt-get update
sudo apt-get install linux-image-3.14.17-ti-r17

(reboot)

git clone -b 3.14-ti https://github.com/RobertCNelson/dtb-rebuilder.git
cd dtb-rebuilder/

nano ./src/arm/am335x-boneblack.dts

Disable hdmi:
#include "am335x-boneblack-nxp-hdmi-audio.dtsi" -> /* #include
"am335x-boneblack-nxp-hdmi-audio.dtsi" */

Disable proto cape:
#include "am335x-bone-basic-proto-cape.dtsi" -> /* #include
"am335x-bone-basic-proto-cape.dtsi" */

Enable lcd 4:
/* #include "am335x-bone-lcd4-01-00a1.dtsi" */ -> #include
"am335x-bone-lcd4-01-00a1.dtsi"

Enable uart (there's 3 options: uart1/uart2/uart4)

For uart 1:
/* #include "am335x-bone-ttyO1.dtsi" */ -> #include "am335x-bone-ttyO1.dtsi"

make
sudo make install

(reboot)

lcd and serial should work with a non v3.8.x capemgr kernel..

(i'm hoping someone comes out with an html5 gui for the above ^^)

Regards,

Robert, I did the changes in the bb-kernel/KERNEL/arch/arm/boot/dts/am335x-boneblack.dts and lcd and rs232 capes both work fine. Is there any reason I should not continue with 3.15 kernel and revert to 3.13 ?

Thanks

Rob

Sorry typo…
"Is there any reason I should not continue with 3.15 kernel and revert to 3.14? "

Well, 3.15 is eol, and we are planning to make the 3.14 the "new"
stable... Otherwise the same setup will work on the v3.16.x/v3.17.x
branches of bb-kernel.

Do i give too many options. :wink:

Regards,