lkcl changed the topic of #arm-netbook to: arm-netbook: Don't ask to ask. Just ask! - EOMA68 spec http://bit.ly/ZHqfxA - ML arm-netbook@lists.phcomp.co.uk - Logs http://bit.ly/XELKJq or http://bit.ly/15OCYPD - For Allwinner/sunxi discussions prefer #linux-sunxi - iMX6 Card http://bit.ly/XAUGCD - Flying Squirrel http://bit.ly/WgOYaR - Allwinner A10/A20 Card http://bit.ly/zBLAbY - http://rhombus-tech.net
infobot has quit [Read error: Connection reset by peer]
infobot has joined #arm-netbook
<Necrosporus> I have an ARM device. How do I determine which kernel is best to use?
<Necrosporus> I do not know if it can support vanilla kernel either
<Necrosporus> AMlogic chip
ganbold has quit [Quit: This computer has gone to sleep]
tuliom has quit [Quit: Konversation terminated!]
leviathan has joined #arm-netbook
leviathan has quit [Remote host closed the connection]
<lkcl> TorC, yehh silly that people do that...
<lkcl> Necrosporus, you need to do some research. a _lot_ of research. that's just how things are with ARM having 1000+ separate companies licensing their design
<lkcl> start with the name of the product
<lkcl> if it's a common product someone is likely to have opened it up and possibly even done the 3 weeks to 2 years (not a joke) of reverse-engineering
leviathan has joined #arm-netbook
<Necrosporus> Actually it turns out the SoC is listed here, it's called M6
<lkcl> ok great. that's a start.
<lkcl> however it doesn't actually help you as you also need the linux kernel to be hard custom configured SPECIFICALLY for that product. not the PROCESSOR, the PRODUCT
<Necrosporus> http://linux-meson.com mentions the SoC to, saying that it's... not supported. Or rather it is but nothing works but console via uart
<lkcl> it's not like in the x86 world
<Necrosporus> I know that
<lkcl> there are no standards, period.
<Necrosporus> Now the question, how do I configure kernel for the board
<lkcl> yyep. so now you're looking at somewhere between three weeks and 2 years of reverse-engieering
<Necrosporus> It's TVbox, it has android pre-installed
<lkcl> you start by disassembling the product or finding a schematic
<Necrosporus> I did already disassemble it
<Necrosporus> And assemble back
<lkcl> or you track down the manufacturer and see if they have complied with the GPL
<Necrosporus> I have found UART port
<Necrosporus> I have boot logs from android
<lkcl> that's a start. you'll at least be able to print out debug messages
<Necrosporus> It has all the stuff about loading kernel and that
<lkcl> great, that will get you linux kernel log messages which will tell you which drivers have been enabled
<lkcl> i'm assuming that the manufacturer are criminals who haven't complied with the GPL
<lkcl> so great: now you can grep a linux kernel source tree for those messages
<Necrosporus> Well, I have no idea. Manufacturer has firmware binaries at least
<lkcl> also, you MIGHT get lucky, if you can get to a boot prompt, and get /proc/config and other information
<lkcl> binaries are fuck-all use if the manufacturers are criminals by not providing matching source
<Necrosporus> I can get to boot prompts. There are two of them even
<lkcl> excellent, so now you can do cat /proc/cpuinfo
<Necrosporus> Nope
<lkcl> cat /proc/meminfo
<Necrosporus> it's BOOT prompth
<lkcl> you can check what's in /lib/modules
<lkcl> u-boot prompt or login prompt?
<Necrosporus> I mean I can get to prompt which UART offers before kernel even starts loading
<Necrosporus> Two bootloader prompts
<lkcl> that's probably u-boot
<lkcl> you'll need to google the strings coming up
<lkcl> google is your friend here.
<Necrosporus> one if you press any key immediately when it's turned on, other if you press a key after a couple of seconds
<Necrosporus> two distinct consoles
<Necrosporus> the second is u-boot
<Necrosporus> first I don't know
<lkcl> you can't expect people to act as a google proxy, you'll need to use google searches a lot, here
<Necrosporus> Yeah, I know
<lkcl> so, with a u-boot prompt you now know that you have control over the linux kernel boot params
<Necrosporus> so, I'm telling what I found out for now
<lkcl> so you can do "printenv" for example
<Necrosporus> Yeah, I can try to load a kernel I build via that
<Necrosporus> through tftp or something
<lkcl> that will give you the boot parameters including the linux kernel boot..
<lkcl> no it's more important than that
<lkcl> you can modify the parameters to set "init=/bin/sh"
<Necrosporus> Yeah, I can do that too
<lkcl> or similar for android
<Necrosporus> Oh, but is there /bin/sh in android?
<lkcl> that will bypass the root login
<Necrosporus> I guess it's /system/bin/sh
<lkcl> you'll have to find that out for yourself, i don't use android
<lkcl> then you can get access to /proc
<lkcl> and if you are REALLY lucky they MIGHT have compiled the kernel with the option which puts all the CONFIG_XXX options into it
<Necrosporus> lkcl, if you are talking about getting into console it isn't hard. The default firmware uses heavily outdated android 4.0.4 so it can be cracked by installing an app in a second
<lkcl> but some embedded systems take that out to save space
<lkcl> ok great.
<lkcl> that's easier :)
<lkcl> you want cat /proc/version
<lkcl> and to find out what modules are there
<lkcl> and "lift" the linux kernel binary off the device for analysis
<Necrosporus> Wait just a sec, I will try to install a terminal to it
<lkcl> don't trust whatever shit-firmware was "released", it is likely to be different
<Necrosporus> I guess I won't even need a crack
<lkcl> i really don't like that word, it implies you're doing something wrong / illegal / criminal.
<lkcl> this is your own legitimately-purchased personally-owned hardware
<Necrosporus> Actually it's not :)
<lkcl> haha
<Necrosporus> But I don't think it's criminal
<Necrosporus> Because crack a nut isn't illegal right?
<Necrosporus> or something
<lkcl> it's *somebody's* legitimately-purchased personally-owned hardware :)
<lkcl> oh right, yeah... well... the word's meaning changes when it comes to computer contexts
<lkcl> anyway... having done this 9 times in a row for different NTC devices, back in 2003, and having spent 2 YEARS not getting anywhere, i don't do this kind of stuff any more, it's genuinely a waste of time
<Necrosporus> anyway, I think it should be easy to get root in android. I could use init= or I can install some terminal app and see what it gets, it might give access to /proc even w/o root
<lkcl> yep it will
<Necrosporus> and even if it can't I can always install some android app which exploits vulnerabilities to get instant root
<Necrosporus> and it could also have ADB enabled
<lkcl> the project i'm doing, Necrosporus, is to empower people so that they don't have to fuck about like this, wasting weeks to years of their lives.
<Necrosporus> And last but not least I can modify firmware image which gets flashed into the device from SD card
<lkcl> but i'm mentioning that because you need to understand that it's not fun for me to explain this stuff to you
<lkcl> yes, that would work well.
<lkcl> you could also modify the root= parameter to get it to external boot a better OS
<lkcl> debian should work straight away for example, as it's not dependent on the hardware.
<Necrosporus> I know, I have other ARM devices
<lkcl> grab any root filesystem from anywhere
<lkcl> there you go
<lkcl> you'll have an easier time of it rather than fucking around with android
<lkcl> lsusb, etc. etc.
<lkcl> instead of a half-broken reimplementation of busybox
<Necrosporus> OK, I guess I got an idea what I can do, thank you.
<Necrosporus> if you mean toybox it's not there yet, because android 4.0
<lkcl> anything android-related i would consider to be pretty useless.
<lkcl> oh - you _can_ do pivot_root to swap over to sd-card debian oses
<lkcl> if you can get to a root prompt
<lkcl> or chroot it.
isacdaavid has quit [Quit: Leaving.]
oaken-source has joined #arm-netbook
infobot has quit [Ping timeout: 256 seconds]
oaken-source has quit [Ping timeout: 256 seconds]
oaken-source has joined #arm-netbook
<Necrosporus> lkcl, actually it turns out that I get right to the shell without login prompt when I attach UART and let it boot fully
<Necrosporus> and su does not ask the password but brings root shell immediately
<Necrosporus> It's official firmware for the device
leviathan has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
Necrosporus is now known as Guest89397
Necrosporus has joined #arm-netbook
Guest89397 has quit [Killed (rajaniemi.freenode.net (Nickname regained by services))]
<Necrosporus> |shell@android:/ # mount -t ext3 /dev/block/cardblksd2 /mnt
<Necrosporus> mount: Invalid argument
<Necrosporus> However I can't mount my sd card with the root fs for some reason
<Necrosporus> maybe I should try ext2
<Necrosporus> I'm wondering if drm 82 1 12984 4016 ffffffff 400937b0 S /system/bin/drmserver
<Necrosporus> is about digital restrictions or direct rendering
<lkcl> ext3 might not be a valid fstype - it usually isn't.
<lkcl> you'll need to hunt around - /lib/modules
<lkcl> and somewhere in /sys
<lkcl> to see what fstypes are supported
qweo has joined #arm-netbook
<qweo> Can I buy the laptop yet, or was all the production hardware sold out?
gtucker` has quit [Quit: Coyote finally caught me]
gtucker has joined #arm-netbook
<Necrosporus> |shell@android:/ # cat /proc/modules
<Necrosporus> ump 32509 9 mali, Live 0xbf000000
<Necrosporus> mali 224718 6 - Live 0xbf010000
<Necrosporus> lsmod same output
<Necrosporus> /proc/config.gz exists
<Necrosporus> Hmph, it seems that the device is ext2 and I was trying to mount it as ext3,
qweo has quit [Quit: Good luck! And may the Net prevail!]
<Necrosporus> OK, it was ext2, I forgot about that. That's why it cannot mount it as ext3
<Necrosporus> Though the system does not work anyway I guess I need another one
<lkcl> Necrosporus, cool! grab that /proc/config.gz because along with /proc/version you actually stand a chance of compiling your own kernel
leviathan has joined #arm-netbook
leviathan has quit [Client Quit]
leviathan has joined #arm-netbook
<Necrosporus> How does /proc/version help? It is 2.6.34 something
<Necrosporus> Linux version 2.6.34V2.0.0-166-g584fce8 (luoj@ubtsvr) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-202) ) V2.0.0-166-g584fce8(20130124.190554)
<Necrosporus> lkcl, and what does it give to me?
<Necrosporus> extracting config.gz is a bit trickier but I think I can do it
<Necrosporus> Just need to mount external storage and copy there
<Necrosporus> There is sadly no program to send file over serial
opbolt has joined #arm-netbook
diarything has quit [Ping timeout: 260 seconds]
<lkcl> Necrosporus, now you can google that.
<lkcl> Necrosporus, yyyep
<lkcl> Necrosporus, actually there is: two options, an old program called "kermit" and you can always use pppd
<lkcl> but microsd is way better
<Necrosporus> yes, I know that kermit exists, I meant that it's not present in built-in android
<Necrosporus> Also sz / rz
<lkcl> cool! last used it in 1989! cool!
<Necrosporus> Well, I have used it to upload kernel to u-boot on my router and it worked, but slower than tftp
leviathan has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
ohama has joined #arm-netbook
infobot has joined #arm-netbook
oaken-source has quit [Ping timeout: 260 seconds]
isacdaavid has joined #arm-netbook