ftg has quit [Read error: Connection reset by peer]
apritzel has quit [Ping timeout: 480 seconds]
chewitt has joined #linux-sunxi
mripard has quit [Ping timeout: 480 seconds]
hramrach has quit [Ping timeout: 480 seconds]
hramrach has joined #linux-sunxi
mripard has joined #linux-sunxi
<MoeIcenowy>
swiftgeek: of course I have the shit T-head PDF
<MoeIcenowy>
want me to mail you?
<swiftgeek>
got it from sb else already, thanks :D
<swiftgeek>
unless there is an _en variant ;D
<MoeIcenowy>
apritzel: sounds interesting that it's worth try
<MoeIcenowy>
smaeul: is it possible to just implement these instructions with basical instructions in RV to make a Xthead-less binary?
<MoeIcenowy>
apritzel: does `b 0x67` mean branch to 0x1a4 aka ((0x67 + 2) * 0x4) ?
<MoeIcenowy>
ooops jalr x0, 0xea0(x0) is jumping to absolute address 0xea0
<MoeIcenowy>
which is inside BROM
<smaeul>
MoeIcenowy: yes, but you would have to figure out the register allocation. it would probably be easier to decompile the Xthead version to C and recompile from there
<MoeIcenowy>
maybe we can consider compressed instruction set?
<MoeIcenowy>
then we can put 2 instructions in 4 bytes
<MoeIcenowy>
and 0xea00 is `sd s0,16(a2)` (well, if the other part is a jump, this shouldn't get executed at all)
<cyrozap>
MoeIcenowy: What are you trying to do? If you just want to be able to run the binary on a different chip that doesn't support the instructions, you could add an illegal instruction handler so those instructions can be emulated by software when the CPU tries executing them.
<MoeIcenowy>
although the RVC C.J instruction is 0xa001 | imm
<MoeIcenowy>
thus considering the ARM b does *4, it's then spreaded to a very high location
<cyrozap>
Or, if you really need to edit the instruction in-place, you can replace it with a jump-with-link to a subroutine that performs the same function with standard instructions.
Jimbob81 has joined #linux-sunxi
Jimbob81 has quit [Remote host closed the connection]
vagrantc has joined #linux-sunxi
faruk has joined #linux-sunxi
sunshavi has quit [Read error: Connection reset by peer]
sunshavi has joined #linux-sunxi
vagrantc has quit [Quit: leaving]
cmeerw has joined #linux-sunxi
apritzel has joined #linux-sunxi
cmeerw has quit [Ping timeout: 480 seconds]
apritzel has quit [Ping timeout: 480 seconds]
apritzel has joined #linux-sunxi
apritzel has quit [Ping timeout: 480 seconds]
tnovotny has joined #linux-sunxi
ftg has joined #linux-sunxi
chewitt has quit [Quit: Zzz..]
chewitt has joined #linux-sunxi
prefixcactus has joined #linux-sunxi
apritzel has joined #linux-sunxi
Mangy_Dog has joined #linux-sunxi
warpme_ has joined #linux-sunxi
choozy has joined #linux-sunxi
chewitt has quit [Remote host closed the connection]
chewitt has joined #linux-sunxi
choozy has quit [Ping timeout: 480 seconds]
<warpme_>
can't find what is missing. Is there any 2nd pair of eyes wiling to look on problem with me?
<warpme_>
guys: i'm hacking with getting working crust on 5.13-rc6 kernel (i'm adapting LE crust kernel patches to 5.13 kernel) and got it working. Only thing not 100% working are DT changes. Porting 5.12 crust DT changes (h6.dtsi + box .dts) to 5.13 makes box non-booting. But porting 5.12 crust .dts changes to 5.13 & using in 5.13 h6.dtsi from 5.12 gives working crust on 5.13 but with DT warnings. Definitely i miss something - but
obbardc has joined #linux-sunxi
<obbardc>
orangepi pc2 booting from spiflash hangs at "Trying to boot from sunxi SPI" with uboot 2021.04 and latest HEAD, any tips ?
<smaeul>
warpme_: I pushed the crust and crust-minimal branches rebased on 5.13-rc1. hopefully that helps. some of the patches were merged during 5.13
<warpme_>
there is some junk in this patch so pls don't shut me. it is just wip
<apritzel>
obbardc: when was this last time working for you? 2021.01?
<obbardc>
apritzel: untested yet, i will try an older build
<jernej>
smaeul: are "PM / devfreq" patches in your crust branch just cleanup or they help with something on sunxi platform?
<apritzel>
obbardc: I will have a closer look tonight (unless you beat me to it), thanks for the heads up anyway
<jernej>
ah, I guess it's for mbus driver
<obbardc>
apritzel: 2020.07 broken, maybe its how i am flashing. sunxi-fel -p spiflash-write 0 u-boot-sunxi-with-spl.bin
<warpme_>
smaeul: ok. pls not waste your time on my patch. i'll go with all your patches on 5.13 and will report how it goes. thx for rebasing your nice work on 5.13!
<apritzel>
obbardc: if 2020.01 works, but 2020.04 doesn't, then it's me to blame ;-)
<jernej>
smaeul: does mbus driver bring some performance improvements or just power savings?
choozy has joined #linux-sunxi
matteoscordino has joined #linux-sunxi
<obbardc>
apritzel: 2020.01 doesnt work, so i don't think you are to blame :p
<apritzel>
obbardc: how do you populate the flash?
<apritzel>
(even though a bit cumbersome, since it requires FEL)
<apritzel>
obbardc: does that same image work from an SD card?
<apritzel>
(because that message would be the last to see if Trusted-Firmware was missing or wrong as well)
<warpme_>
guys: quick q: dmesg on h616 no matter what not shows me anything about mmc2 (wifi). Is this possible because wifi chip not receiving power so mmc2 will not appear on dmesg?
<apritzel>
warpme_: do you have the WiFi in your DT? And also the number in mmc<x> can vary across boots
martinayotte has quit [Remote host closed the connection]
<warpme_>
apritzel: re dt: yes. and indeed mmc numbering isn't consistent (i'm talking about 3rd mmc; 1st is boot. 2nd is eMMC) in dmesg i see mmc with SD card, mmc with eMMC and that's all. no 3rd mmc device. trying understand: is this because dt wifi fragment is wrong or is this because issue is within kernel....
Net147 has quit []
Net147 has joined #linux-sunxi
<apritzel>
obbardc: since you have a working FEL setup: try booting the whole thing via FEL: build latest U-Boot master, then just use "sunxi-fel -v -p uboot u-boot-sunxi-with-spl.bin" (with some recent sunxi-fel version)
<apritzel>
warpme_: I think you should see some attempts from the kernel to bring up the MMC, if the DT node is enabled
<apritzel>
warpme_: but what are you expecting anyways? AFAIK most (if not all?) H616 use this totally unsupported AW WiFi chip?
<warpme_>
exactly. this was also my feeling.... re: aw chip: i already ported it to 5.13 (i mean all kernel api calls so it builds clean).
<warpme_>
but i have also 2nd h616 box with famous xr819 (where we have driver)
<apritzel>
warpme_: you are way too off-tree for my taste (both for the XR819 and the AW859A)
<warpme_>
for sure getting aw chip will be not easy as in code i see they have conditionals to use direct gpio mangling for aw/rk/hisi/aml. but code alternative path seems to mangle with sdio operations quite similar like in other sdio chips so maybe there is chance?. Maybe - at some point in time - somebody in community knowing way better than me sdio will co-work to get aw859a working on mainline?
<obbardc>
apritzel: boot from spi all working fine on u-boot HEAD now; turns out i was using the wrong ATF target ! doh! thanks for the help
<apritzel>
obbardc: happens to me all of the time! ;-) I now use a build.sh which automatically picks the right bl31.bin file
<warpme_>
driver already seems to abstract to hw in quite similar way how rt drivers are doing. somebody good in sdio can read aw-speciffic gpio code and translate it to mainline infra (at least i'm naive enough to imagine this ;-\ )
Net147 has quit [Quit: Quit]
Net147 has joined #linux-sunxi
<apritzel>
warpme_: are you talking about this uwe5622 driver from the BSP?
<warpme_>
yes
Net147 has quit []
Net147 has joined #linux-sunxi
<apritzel>
most of those BSP/vendor drivers are complete crap and light years away from being mainlined
<warpme_>
ough....
Net147 has quit []
Net147 has joined #linux-sunxi
<warpme_>
smaeul: fyi: 5.13-rc6 with your crust code builds clean & works nicely (so far tested on single h6 box). great work!
<tuxd3v>
I was looking at sunxi-h3-h5.dtsi, and I don't find what is provoking this..
<tuxd3v>
both i2c signals should be on gpio
<tuxd3v>
mv64xxx: I2C bus locked
<tuxd3v>
what you guys think would be the problem?
<apritzel>
tuxd3v: your usage of "GPIO" is confusing: by definition it's a pin which level can be set by software (bit-banged)
<apritzel>
tuxd3v: which can also be used to drive an I2C bus, "manually"
<tuxd3v>
apritzel, yes the i2c bus works nicely on i2c2, but not on i2c0 :/
<apritzel>
but when you use the I2C controllers in the SoC, which can be connected to certain pins, it's not "GPIO" anymore
<tuxd3v>
I mean the Board GPIO :)
<tuxd3v>
not the pins GPIO :)
<apritzel>
no, you mean the board pins or headers
<tuxd3v>
not the Soc gpio pins :)
<tuxd3v>
apritzel, yes that is another way of saying that :)
<tuxd3v>
but the problem is that i2c0 doesn't work when I try i2cdetect on him :(
<apritzel>
... a confusing way which you should avoid
<apritzel>
pull ups are something you could try
<tuxd3v>
the board has no pull ups in its design nor i2c0 nor i2c2
<tuxd3v>
but i2c2 works..
<apritzel>
is there something that incluences the I2C0 pins (always pulling low or high)?
<apritzel>
and please double check this, because many boards *have* external pull up resistors on header pins that are meant for I2C
<tuxd3v>
nope everything conected straight to the SoC
<apritzel>
sure, but also to some VCC?
<tuxd3v>
I mean I am only looking for the schematics, maybe my board is some revisions that has, I don't know about that.. they are not in the chematics..
<apritzel>
the pull ups might be separate, on many schematics they just reference the net labels and group pull-ups in one place
<apritzel>
so it's not immediately obvious if you just look at the "CPU" or "connector" page
<apritzel>
and you could just measure it (with the board being off)
<apritzel>
if there are no external pull-ups, you would need to activate the internal ones
<tuxd3v>
ho.. how can I activate i2c0 internal ones?
<apritzel>
try "bias-pull-up;" in the respective pinctrl DT node
<apritzel>
tuxd3v: what board is this?
<tuxd3v>
its nanopi neo air
choozy has joined #linux-sunxi
cmeerw has quit [Ping timeout: 480 seconds]
jernej_ has joined #linux-sunxi
jernej has quit [Read error: Connection reset by peer]
ftg has quit [Read error: Connection reset by peer]