build icon indicating copy to clipboard operation
build copied to clipboard

Fix u-boot build for odroid c1 + fix onboard usb hub on odroid c1

Open kernelzru opened this issue 1 year ago • 2 comments

kernelzru avatar May 08 '24 15:05 kernelzru

Updating meson edge from 6.7 to 6.8 should be done as a separate PR, since it impacts multiple boards.

SteeManMI avatar May 09 '24 01:05 SteeManMI

Updating meson edge from 6.7 to 6.8 should be done as a separate PR, since it impacts multiple boards.

ok, removed

kernelzru avatar May 09 '24 03:05 kernelzru

Nice to see some love for this old device. Feeling nostalgic ;)

igorpecovnik avatar May 09 '24 14:05 igorpecovnik

Built with those options : ./compile.sh \
BOARD=odroidc1
BRANCH=current
RELEASE=bookworm
BUILD_MINIMAL=yes
BUILD_DESKTOP=no
KERNEL_CONFIGURE=no

It builds but I have this bootloop at startup:

QA5:A;SVN:B72;POC:17F;STS:0;BOOT:0;INIT:10;BOOT:1;INIT:0;READ:0;CHECK:0;PASS:1;

  • Welcome to Hardkernel's ODROID-C... (Built at 19:33:00 Dec 8 2014) *

CPU : AMLogic S805 MEM : 1024MB (DDR3@792MHz) BID : HKC1310001 S/N : HKC11222F37E0E23 0x0000009f check SD_boot_type:0x1 card_type:0x1 Loading U-boot...success.

U-boot-00000-gb7b8dc21b6-dirty(odroidc@) (May 09 2024 - 17:35:06)

I2C: clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[25]=0 clear pinmux reg8[12]=0 clear pinmux reg1[3]=0 clear pinmux reg1[2]=0 set output en 0xc1108054[20]=1 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[25]=0 clear pinmux reg8[12]=0 clear pinmux reg1[3]=0 clear pinmux reg1[2]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[20]=0 set output val 0xc1108058[20]=0 clear pinmux reg1[25]=0 clear pinmux reg8[12]=0 clear pinmux reg1[3]=0 clear pinmux reg1[2]=0 set output en 0xc1108054[20]=1 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffdcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffdcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffdcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffdcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffdcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffdcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffdcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffdcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffdcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=fffcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffdcfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[25]=0 clear pinmux reg8[12]=0 clear pinmux reg1[3]=0 clear pinmux reg1[2]=0 out reg=c1108058,value=ffccfa00 set output en 0xc1108054[20]=0 set output val 0xc1108058[20]=0 clear pinmux reg1[24]=0 clear pinmux reg1[1]=0 out reg=c1108058,value=ffecfa00 set output en 0xc1108054[21]=0 set output val 0xc1108058[21]=0 clear pinmux reg1[25]=0 clear pinmux reg8[12]=0 clear pinmux reg1[3]=0 clear pinmux reg1[2]=0 set output en 0xc1108054[20]=1 clear pinmux reg1[25]=0 clear pinmux reg8[12]=0 clear pinmux reg1[3]=0 clear pinmux reg1[2]=0 set output en 0xc1108054[20]=1 clear pinmux reg1[25]=0 clear pinmux reg8[12]=0 clear pinmux reg1[3]=0 clear pinmux reg1[2]=0 set output en 0xc1108054[20]=1 ready DRAM: 1 GiB relocation Offset is: 2ff0c000 MMC: SDCARD: 0, eMMC: 1 Enter Exception:0x00000001 link addr:0x3ff2f15c

Capture d’écran du 2024-05-09 18-25-27

ungentilgarcon avatar May 09 '24 16:05 ungentilgarcon

Image is called Armbian-unofficial_24.5.0-trunk_Odroidc1_bookworm_current_6.6.30_minimal.img

ungentilgarcon avatar May 09 '24 16:05 ungentilgarcon

Besides, looking at the board I realized it's aC1+, can it be the reason?

That image does not contain this fix yet.

isn't this branch supposed to fix C1 support?

ungentilgarcon avatar May 09 '24 18:05 ungentilgarcon

@ungentilgarcon seems GCC related... try replace "UBOOT_COMPILER="arm-linux-gnueabihf-"" to UBOOT_COMPILER="arm-linux-gnueabi-" in file "config/sources/families/include/meson_common.inc" and rebuild.

kernelzru avatar May 10 '24 23:05 kernelzru

@kernelzru I generated and tested an image (edge) including your changes. It is really great you brought USB support back.

In case you want some feedback, I have tried only some USB keyboards and the USB support is not perfect yet: the board is picky about detecting the devices and udev seems to struggle.

If you release any other fix or feature I will be happy to test it :+1:

@igorpecovnik surprisingly some of the known issues of the Odroid C1 have been fixed: HDMI output is back (for both current and edge branches) and reboot/shutdown commands also work properly. USB support is not there yet and I do know know if the Odroid C1 can run an updated Xorg server.

Is there any hope to bring back support for the Odroid C1? I am sure you hear this a lot but .. "I would like to get involved and help" :-) I have checked the Armbian documentation and forum but it is not clear to me how I could contribute regarding the board has EOS status).

juanlufont avatar May 26 '24 12:05 juanlufont