qschulz has quit [Remote host closed the connection]
qschulz has joined #linux-rockchip
stikonas has quit [Quit: Konversation terminated!]
sjoerd45 has joined #linux-rockchip
diederik has quit [Ping timeout: 244 seconds]
sjoerd4 has quit [Ping timeout: 244 seconds]
sjoerd45 is now known as sjoerd4
diederik has joined #linux-rockchip
f_ has quit [*.net *.split]
FergusL has quit [*.net *.split]
smaeul has quit [*.net *.split]
norris has quit [*.net *.split]
Danct12 has quit [*.net *.split]
f_ has joined #linux-rockchip
smaeul has joined #linux-rockchip
FergusL has joined #linux-rockchip
norris has joined #linux-rockchip
Danct12 has joined #linux-rockchip
hexdump02 has quit [Ping timeout: 258 seconds]
hexdump02 has joined #linux-rockchip
cbeznea_ has joined #linux-rockchip
System_Error has quit [Remote host closed the connection]
System_Error has joined #linux-rockchip
ldevulder has joined #linux-rockchip
adadad has quit [Ping timeout: 256 seconds]
tortoise has quit [Ping timeout: 256 seconds]
macromorgan has quit [Ping timeout: 256 seconds]
adadad has joined #linux-rockchip
macromorgan_ has joined #linux-rockchip
tortoise has joined #linux-rockchip
ldevulder has quit [Quit: Leaving]
ldevulder has joined #linux-rockchip
eballetbo has joined #linux-rockchip
System_Error has quit [Remote host closed the connection]
System_Error has joined #linux-rockchip
System_Error has quit [Remote host closed the connection]
testaccount has joined #linux-rockchip
testaccount has quit [Client Quit]
franoosh has joined #linux-rockchip
System_Error has joined #linux-rockchip
<walter>
Hello, I have a noob question, how does one enable a serial console login on UART2? I have the kernel logs there, but I don't have a way to login. -- I'm trying this on an RK3399 with a new Yocto build of LTS Linux, not mainline, nor the Rockchips forked repositories. (thanks)
warpme has joined #linux-rockchip
<qschulz>
walter: provided your DTS enables UART2 with the proper mux, use SERIAL_CONSOLES in Yocto to set it up
<CounterPillow>
pooyam: the non-enumerable hardware on the boards, like things connected to SPI and I2C and other such, are described in device trees. These are board specific.
<CounterPillow>
e.g. the kernel by itself does not know which USB controllers of the SoC are okay to enable and what kind of connector they're attached to, that's what the device tree tells it.
<CounterPillow>
device trees aren't really specific to the Linux kernel though, they just happen to live in the Linux kernel repo and follow its release cycle. But for example u-boot uses them as well. In the hypothetical scenario where you have a u-boot platform firmware that does have a device tree, it can still EFI boot a generic UEFI OS image by passing it its device tree even if that OS image lacks that particular tree.
<pooyam>
CounterPillow, Then how is this handled in general laptops? There are many brands of CPUs motherboards and peripherals.
<CounterPillow>
pooyam: they also get their non-enumerable hardware described to them by the platform firmware. There it's usually some UEFI firmware with ACPI as the method to describe it, rather than DT.
<CounterPillow>
the difference is that when you buy a laptop there's already platform firmware on it, but when you buy an SBC you are likely to either have nothing on it or some downstream vendor stuff that does not comply with upstream DT bindings or even has a new enough firmware to do EFI boot
<pooyam>
CounterPillow, if a SBC A and B were designed that each provide such platform firmware, then kernel support for them would not be different, right?
<CounterPillow>
correct, but SBC manufacturers usually just want to support whatever rockchip BSP kernel they use, which will use DT bindings that aren't compatible with upstream bindings. Switching out DT for ACPI doesn't really help here either because then you're just making up new ACPI interfaces that no OS kernel supports to describe your devices. The various edk2 forks had to learn this the hard way.
<pooyam>
CounterPillow, thanks. A general question, I wonder, is it the case that RockChip has a closed-source linux support for their boards for testing but doesn't release it? If they haven't tested their hardware with proper firmware, how could they be sure that various hw submodules work correctly with each other according to spec?
<CounterPillow>
it's open source, it's the BSP kernel
<CounterPillow>
it's a device-specific fork of the Linux kernel, which is the standard practice for Arm hardware vendors
<pooyam>
and using that fork, every feature works even NPU?
<CounterPillow>
sure, but using wildly different userspace interfaces.
<pooyam>
This fork is the same thing OEM "Android" images are using in things like retro gaming SBCs?
<CounterPillow>
yes
<pooyam>
> widely different user-space: as in outdated versions since they used an older branch of kernel?
<pooyam>
In other words, the Ubuntu they provide, has support for every feature, but the apps on it are outdated and can't be upgraded
<CounterPillow>
that too, but they also create vendor-specific APIs for userspace to call into the kernel with, instead of finding solutions that work for more than one vendor and lessens the burden on application developers.
<pooyam>
if vender-specific APIs is problematic, Andorid apps should have problems too, no? But we often see OEM images are more performant and stable on the OEM image
<pooyam>
s/OEM images/apps
stikonas has joined #linux-rockchip
<CounterPillow>
That's why most of these never update their Android version ;)
<pooyam>
CounterPillow, what's in it for RockChip to be in sync with main branch of kernel?
<CounterPillow>
what do you mean?
<pooyam>
If they sell their custom Android to buyers and buyers (big OEM) are ok with this?
<pooyam>
What's the financial incentive for rockchip to support mainline?
<CounterPillow>
They don't have to spend engineering hours rebasing their old patches onto a much newer kernel version whenever they want to support a SoC with a newer BSP version.
<pooyam>
Other companies are worse than RC in this regard, do you agree? For example snapdragon I think is worse
<CounterPillow>
Though it's not like they invest a huge amount of time, a lot of the work is being done by consultancies like Collabora and by volunteers, because there is a minority of companies and people who do not want to run vendor BSP kernels. But the vast majority of e.g. Android phone companies are okay and even expect to run vendor kernels, that's why they don't ship updates anymore after 2 years.
<pooyam>
yes
<CounterPillow>
It's hard to compare in absolute numbers. Qualcomm has a lot more chips but they do actually pay people to add support in mainline Linux for them now, there's just a lot of work to be done
<pooyam>
pricewise, does RK3588 have a competetor that is more friendly regarding mainline support? Intel N100?
<pooyam>
And I guess the support for RK3668 has not started yet...
<CounterPillow>
I don't have a complete overview of the SoC landscape, but yeah Intel N100 fits the bill I guess. RK3668 isn't released yet and I'm not sure if it has even had engineering samples taped out yet, so it'll be a while before people will work on mainline support for it