aloksinha2001 / picuntu-3.0.8-alok

Integrated kernel for Picuntu 3.0.8-alok+
Other
36 stars 34 forks source link

MT5931 Wifi and MT6622 Bluetooth support #2

Open Galland opened 11 years ago

Galland commented 11 years ago

Thanks for adding the Rikomagic Mediatek code. From my side, I've found more Linux-like drivers in this repo: git://github.com/Anderxale/7300-kern.git

Take a look at folder: 7300-kern/common/drivers/amlogic/wifi/mtk_5931/

UPDATE: The repo has been deleted!! I cloned it a couple weeks ago. I'll reupload the mtk folder to a repo of my own

Galland commented 11 years ago

Is the "gpio" file in the folder you are in?

BerberNeri commented 11 years ago

Yes. Gpio.bin

Galland commented 11 years ago

Then you have to execute the exact same name (case sensitive), like: ./Gpio.bin dump gpio

BerberNeri commented 11 years ago

Thanx!!! Finally I've got it. Here is the result with Wi-Fi ON:

<4>[10817.127929] GPIO gpio3 277 mmc1-clk <4>[10817.131497] GPIO gpio3 278 (null) <4>[10817.134892] GPIO gpio3 279 wifi_power <4>[10817.138634] GPIO gpio3 280 (null) <4>[10817.142028] GPIO gpio3 281 wifi reset <4>[10817.145770] GPIO gpio3 282 BT_EINT <4>[10817.149252] GPIO gpio3 283 (null) And it's absolutely the same as the example posted by @usumfabricae And this if is the result with Wi-Fi OFF: <4>[11888.723910] GPIO gpio3 277 mmc1-clk <4>[11888.727496] GPIO gpio3 278 (null) <4>[11888.730909] GPIO gpio3 279 wifi_power <4>[11888.734670] GPIO gpio3 280 (null) <4>[11888.738083] GPIO gpio3 281 wifi reset <4>[11888.741843] GPIO gpio3 282 BT_EINT <4>[11888.745343] GPIO gpio3 283 (null) Actually I don't see any difference((( 11.08.2013, 22:53, "Galland" notifications@github.com: > Then you have to execute the exact same name (case sensitive), like: > ./Gpio.bin dump gpio > > — > Reply to this email directly or view it on GitHub. ## Ivan Blagoy Der Erste Kanal Russland (Channel One Russia) Studio Leiter Reinhardtstrasse 55, 10117 Berlin +491704615414
usumfabricae commented 11 years ago

I see....It's strange to me that you have exatly the values I have, i was expecting somethingdifferent :(. Anyway to read the wifi_power register value you should use ./Gpio.bin get gpio 279

To see if it's changing you turn wifi on than: ./Gpio.bin get gpio 279

Than switch it off and again ./Gpio.bin get gpio 279

The output of the former two commands is returned on the terminal and they should be different.

As last could you also upload the dmesg after tail after switching Wifi off and on again? to gat the tail of the dmesg you can do: "adb shell cat /proc/kmesg " this will print on the screen only the last part of the log. than switch off and on Wifi.

mrhall4d commented 11 years ago

hi im new to github but i am really interested in getting wifi working on ug007 i have one and a bionic lapdock and i think it would make a sweet laptop im downloading adb now and i am going to try the above steps before i start firing off questions but at the same time my linux experience is limited so if anyone has tips id be more than happy to listen

usumfabricae commented 11 years ago

@mrhall4d did it work?

mrhall4d commented 11 years ago

nope didnt work downloaded to ug007 i am in the dir but i think im running a different kernel under android when i try to insmod it says (Operation not permitted) its kernel Linux 3.0.36+ at top of terminal emulator im running finless bob's 2.0 rom 4.2.2

mrhall4d commented 11 years ago

also not 100 percent sure if i got the right file i got gpio.txt but no gpio.bin

Galland commented 11 years ago

@usumfabricae sorry to write this here: I'd like to chat with you about some rk things, though I can't see how to privately PM you from github. Would you be able to contact me at my gmail address? email username:

mrhall4d commented 11 years ago

tried again got (Exec format error)

Galland commented 11 years ago

@mrhall4d try insmodding this 3.0.36+ version: (see post below for updated and working version)

mrhall4d commented 11 years ago

just tried to insmod the other version and so far it just freezes nad have to reboot

mrhall4d commented 11 years ago

tried a couple of more times and still freezes ive had it locked up for ten minutes now just in case i didnt give it long enough. i have a bunch of different roms i could flash for it dont know if mabye the problem is thta im not running stock rom

zmora2622 commented 11 years ago

Hello. I'm new and i have problem with installation. What firmware do you use on MK802iiis and maybye someone can make any tutorial step by step how install picuntu with working wifi? I have mk802iiis with android not rooted. I'm begin user of Linux... I want to use it as an web serwer for my personal use. Looking forward for some help.

tux880 commented 11 years ago

agreed @zmora2622 i have been trying to get this to work, i definitely need a guide stupider the better, ( one that my dog would understand) i have had picuntu booted but it was an image from someone eles. couldn't figure WiFi out i also have a mk802iiis

usumfabricae commented 11 years ago

I cannot get the point where are you stucked. try to do a short environment setup guide.

First install picuntu http://ubuntu.g8.net/index.php/installation-guide. Than flash a recovery image found in: http://files.yume.ru/files/mk802iiis-recovery-and-modules.tar copy the modules to be used with this image: copy mod_fw/lib/modules/3.0.36+/kernel/drivers/net/wireless/mt5931/wlan.ko into your linux home directory copy mod_fw/etc/firmware/WIFI_RAM_CODE into /etc/firmware/WIFI_RAM_CODE of your linux filesystem

Than boot picuntu with new kernal image log into linux and go in the directiry where you saved wlan.ko as root do insmod ./wlan.ko

if with iwconfig you see wlan interface you are done. Just setup wifi_supplicant changing the content of /etc/wpa_supplicant/wpa_supplicant.conf as follows: ctrl_interface=wlan0 #wlan found with iwconfig update_config=1

network={ ssid="BBFDA" #ssid of wifi network proto=RSN key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP psk="password" #password of WIFI network }

and start wpa_supplicant wpa_supplicant -Dwext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf

if you cannot see anything with iwconfig than attach the dmesg part related to wlan.ko should be something like: MT5931 SDIO WiFi driver (Powered by Rockchip,Ver 2.12) init. Aug 22 14:31:48 picuntu kernel: [ 4.853104] initWlan Aug 22 14:31:48 picuntu kernel: [ 4.853115] ## Calling platform_driver_register Aug 22 14:31:48 picuntu kernel: [ 4.853179] ## wifi_probe Aug 22 14:31:48 picuntu kernel: [ 4.853192] wifi_set_power = 1 Aug 22 14:31:48 picuntu kernel: [ 4.853206] rk29sdk_wifi_power: 1 Aug 22 14:31:49 picuntu kernel: [ 5.708459] wifi turn on power Aug 22 14:31:49 picuntu kernel: [ 5.708482] wifi_set_carddetect = 1 Aug 22 14:31:49 picuntu kernel: [ 5.708501] rk29sdk_wifi_set_carddetect:1 Aug 22 14:31:49 picuntu kernel: [ 5.708527] mmc1: slot status change detected(0-1) ... Aug 22 14:31:49 picuntu kernel: [ 5.944956] mmc_attach_sdio..801.. ===== Begin to identify card as SDIO-card. ... Aug 22 14:31:49 picuntu kernel: [ 5.985740] Open FW image: WIFI_RAM_CODE done ...

zmora2622 commented 11 years ago

Thx for help but after instaling linux base console text is pixelated mabey u know solution for this ? Mabey it is fault of base cernel that i instaled ?("RBox UG802 JB 2dark_finless1.7)

mrhall4d commented 11 years ago

thought id give your driections a shot but i have no etc/firmware but i do have a lib/firmware am i supposed to copy WIFI_RAM_CODE into that?

mrhall4d commented 11 years ago

shot in the dark here but would it be doable to make the mt5931 wlan.ko work with the 3.0.36 kernel its the only one i can get to work with my lapdock i really appreicate the work u guys are doing here

mrhall4d commented 11 years ago

or i also have a usb wifi adapter with the 8188cus chipset any idea how to get it up and running

zmora2622 commented 11 years ago

I run picuntu and solve problem with pixeled text. I did what u said - copied wlan.ko to /home/, and etc/firmware/WIFI_RAM_CODE into /etc/firmware/WIFI_RAM_CODE. Run linux on my mk 802iiis and login as root. Then i go to /home and type insmod ./wlan.ko and iwconfig show me nothing. Any idea?

Galland commented 11 years ago

type 'dmesg' before and after the insmod and paste here only the new lines at the end

Galland commented 11 years ago

Forget the previous .ko, Omegamoon has a working user-gpio-drv.ko for 3.0.36+ kernels, you can download it here: https://www.dropbox.com/s/xlywhnnuro2s84g/user-gpio-drv.ko

mrhall4d commented 11 years ago

but where do i fnd gpio.bin all i see is gpio.txt and will that work with the 3.0.36 version

Galland commented 11 years ago

the bin (named "gpio") is version independent and it's located here: https://github.com/usumfabricae/GPIO_DUMP/blob/master/build/android/3.0.8+/gpio?raw=true

you gotta get it into root folder: /data (because there you can execute it) and then do:

su insmod user-gpio-drv.ko ./gpio dump gpio dmesg > log.txt and then you'll see the dumped gpio names at the end of the log

mrhall4d commented 11 years ago

ok put files in proper place get ./gpio not found

zmora2622 commented 11 years ago

it's all what i see after run ./wlan.ko. After Open FW image: WIFI_RAM_CODE done i see lines:

Remove wlan! 0 == u4WlanDevNum wlan: probe of mmc1:0001:1 failed with error -1 mmc_rescan_try_freq..1675.. ===== Initialize SDIO successfully. [mmc1]

any simple step by step resolve?

usumfabricae commented 11 years ago

@zmora2622 Could you pleas upload also the other lines of dmesg starting from MT5931 SDIO WiFi driver (Powered by Rockchip,Ver 2.12) init.

@mrhall4d Just rename gpio.txt into gpio.bin (mv gpio.txt gpio.bin) I did a mistake. the correct syntax is ./gpio.bin get 279 and read also ./gpio.bin get 281

zmora2622 commented 11 years ago

All lines:

MT5931 SDIO WiFi driver (Powered by Rockchip,Ver 2.12) init. initWlan

Calling platform_driver_register

wifi_probe

wifi_set_power = 1 rk29sdk_wifi_power: 1 wifi turn on power wifi_set_carddetect = 1 rk29sdk_wifi_set_carddetect:1 mmc1: slot status change detected(0-1) rk29_sdmmc_change_clk_div..1935.. newDiv=42, newCLK=294Khz [sdio] wlandroid_wifictrl_func_add success.

drivers/mms/core/core.x...1824.. ===== mmc_rescan Begin [mmc1]

mmc_attach_sdio..801.. ===== Begin to identify card as SDIO-card. [mmc1] rk29_sdmmc_change_clk_div..1935.. newDiv=0, newCLK=24750Khz [sdio] mmc1: new high speed SDIO card at address 0001 wireless_dev prWdev (0xf23bfa00) allocated net_device prDev(0xf1d92800) allocated Open FW image: WIFI_RAM_CODE done Remove wlan! 0 == u4WlanDevNum wlan: probe of mmc1:0001:1 failed with error -1 mmc_rescan_try_freq..1675.. ===== Initialize SDIO successfully. [mmc1]

usumfabricae commented 11 years ago

Need to recompile the wlan.ko enabling debug. It seems that Can you do that or should I do it for you? Could you also do the same dmesg dump on ANDROID enabling and disabing and re enabling wifi?

2013/8/24 zmora2622 notifications@github.com

All lines:

MT5931 SDIO WiFi driver (Powered by Rockchip,Ver 2.12) init. initWlan Calling platform_driver_register wifi_probe

wifi_set_power = 1 rk29sdk_wifi_power: 1 wifi turn on power wifi_set_carddetect = 1 rk29sdk_wifi_set_carddetect:1 mmc1: slot status change detected(0-1) rk29_sdmmc_change_clk_div..1935.. newDiv=42, newCLK=294Khz [sdio] wlandroid_wifictrl_func_add success.

drivers/mms/core/core.x...1824.. ===== mmc_rescan Begin [mmc1]

mmc_attach_sdio..801.. ===== Begin to identify card as SDIO-card. [mmc1] rk29_sdmmc_change_clk_div..1935.. newDiv=0, newCLK=24750Khz [sdio] mmc1: new high speed SDIO card at address 0001 wireless_dev prWdev (0xf23bfa00) allocated net_device prDev(0xf1d92800) allocated Open FW image: WIFI_RAM_CODE done Remove wlan! 0 == u4WlanDevNum wlan: probe of mmc1:0001:1 failed with error -1 mmc_rescan_try_freq..1675.. ===== Initialize SDIO successfully. [mmc1]

— Reply to this email directly or view it on GitHubhttps://github.com/aloksinha2001/picuntu-3.0.8-alok/issues/2#issuecomment-23204708 .

zmora2622 commented 11 years ago

If u can recompile this for me i will be grateful.

dmesg on android will be harder to do beause when i add recovery.img from this link -> http://files.yume.ru/files/mk802iiis-recovery-and-modules.tar i can't now run android, or maybye is there some other way to do dmesg?

BerberNeri commented 11 years ago

Hi! I get an argument error. u0_a49@android:/ $ su u0_a49@android:/ # cd /data/local/tmp/ u0_a49@android:/data/local/tmp # insmod user-gpio-drv.ko u0_a49@android:/data/local/tmp # ./gpio.bin get gpio 279 Usage: gpio command args

Command is one of the following: request gpio label Requests a gpio for use and assigns a label free gpio Releases a gpio input gpio Configures a GPIO for input output gpio value Configures a GPIO for output and sets the initial value get gpio Reports the current value of a GPIO pin set gpio value Sets the value of an output pin dump gpio Dumps gpio to kernel log

mrhall4d commented 11 years ago

for gpio.bin get 279 & 281 both return a 1 in terminal emulator

mrhall4d commented 11 years ago

with wifi off 279 returns 1 & 281 returns 0

usumfabricae commented 11 years ago

@BarberNeri: I would like to compare dmesg messages in Android and Picuntu could you dump the android dmesg during wifi switch off and switch on ? and the dmesg part on picuntu just after insmod wlan.ko

I would also see the value of gpio pin 279 e 281 before and after insmod wlan.ko in picuntu.

@mrhall4d: can't your device boot Android anymore ? If you have replaced only the recovery partition image, standar boot should bring you into android.

for you both: you can get a debug enabled copy of wlan.ko from https://github.com/usumfabricae/Linux_3188_bin.git

usumfabricae commented 11 years ago

Sorry the last message was for @zmora2622 instead of @mrhall4d

zmora2622 commented 11 years ago

Can you tell me what firmware you have uploaded to the device?

tyeo098 commented 11 years ago

I'm running an slightly older version of Ubuntu with the XFCE desktop, and when I try to load the wlan.ko module with

sudo insmod wlan.ko

I get:

insmod: error inserting 'wlan.ko': -1 Invalid module format

And dmesg complains:

wlan: version magic '3.0.36+ SMP preempt mod_unload ARMv7' should be 3.0.8+ SMP preempt mod_unload ARMv7

So it seems I just need to recompile the module against my kernel, right?

Galland commented 11 years ago

@tyeo098 Some posts above, usumfabricae posted the 3.0.8+ link

tyeo098 commented 11 years ago

@Galland

I apologize, but the only links I see relating to the 3.0.8+ kernel are for the GPIO dump.

Additionally, when I try to build the kernel from the source I am encountering an error which kills the make process:

/home/tyler/rk/Linux3188/scripts/gen_initramfs_list.sh: Cannot open '/home/fede/picuntu/home/ubuntu/initram' make[1]: * [usr/initramfs_data.cpio] Error 1 make: * [usr] Error 2 make: *\ Waiting for unfinished jobs....

This was following the guide posted at http://hwswbits.blogspot.com/2013/03/compiling-picuntu-kernel-ubuntu-linux.html with kernel source from https://github.com/usumfabricae/Linux3188

Any help would be appreciated :)

EDIT: The solution for the kernel compilation error is to change in the file include/config/auto.conf the line that says +CONFIG_INITRAMFS_SOURCE="/home/fede/picuntu/home/ubuntu/initram" to -CONFIG_INITRAMFS_SOURCE="../initramfs/initramfs.cpio"

And it compiles :)

Galland commented 11 years ago

here is the post where the 3.0.8+ .ko link is: https://github.com/aloksinha2001/picuntu-3.0.8-alok/issues/2#issuecomment-22025271

The compilation is missing the location of initramfs (CONFIG_INITRAMFS_SOURCE in .config file), since you're using a different repo than the one indicated in the guide, just make that config point to the initramfs file mentioned in the guide

tyeo098 commented 11 years ago

@Galland,

I was able to get it to compile, but why was that file hardcoded for someone else home folder? Isn't that considered bad form lol.

And arent those the GPIO dump files? I thought those were separate from the wlan.ko modules?

tonikasch commented 11 years ago

Hi!

I think the problem you are having with the initram is because you are not pointing the kernel options to the location where it is, so for example if I'm building at /home/tonic/mk888b/Linux3188/ and my initramfs.cpio is at /home/tonic/mk888b/initramfs/initramfs.cpio, I should point the kernel option to ../initramfs/initramfs.cpio

Change your path according to the relative location of your initramfs.cpio with recpect to the directory in which the kernel source code is located

Good luck!!

2013/8/27 tyeo098 notifications@github.com

@Galland https://github.com/Galland

I apologize, but the only links I see relating to the 3.0.8+ kernel are for the GPIO dump.

Additionally, when I try to build the kernel from the source I am encountering an error which kills the make process:

/home/tyler/rk/Linux3188/scripts/gen_initramfs_list.sh: Cannot open '/home/fede/picuntu/home/ubuntu/initram' make[1]: * [usr/initramfs_data.cpio] Error 1 make: * [usr] Error 2 make: *\ Waiting for unfinished jobs....

This was following the guide posted at http://hwswbits.blogspot.com/2013/03/compiling-picuntu-kernel-ubuntu-linux.htmlwith kernel source from https://github.com/usumfabricae/Linux3188

Any help would be appreciated :)

— Reply to this email directly or view it on GitHubhttps://github.com/aloksinha2001/picuntu-3.0.8-alok/issues/2#issuecomment-23343180 .

Galland commented 11 years ago

@tyeo098 you should tell that to the repo owner, not me. Is it bad form? ask for your money back :P

The guide you pointed at tells you to use my repo, not the one you used. In any case both repos are 3.0.36 so they won't generate a 3.0.8 wlan.ko

tyeo098 commented 11 years ago

@Galland

I'm just going to use the kernel that I compiled following the guide, which is the 3.0.36 kernel, and the modules that it created as well. That should work... right?

tyeo098 commented 11 years ago

Well... I flashed my compiled kernel and when I reboot recovery it goes straight back to the bootloader. Doesn't boot :(

NVM! Got it to boot with a recompile. May have typed the recovery.img generation sequence wrong haha.

Running a sudo insmod wlan.ko....

WIRELESS NETWORKS AVAILABLE! FICK JA!

Its not taking my WPA key though. I'll have to look at that tomorrow.

aloksinha2001 commented 11 years ago

Yes - it will..

Alok

This message is confidential. It may also be privileged or otherwise protected by work product immunity or other legal rules. If you have received it by mistake, please let us know by e-mail reply and delete it from your system; you may not copy this message or disclose its contents to anyone. Please send us by fax any message containing deadlines as incoming e-mails are not screened for response deadlines. The integrity and security of this message cannot be guaranteed on the Internet.

On Tue, Aug 27, 2013 at 3:42 PM, tyeo098 notifications@github.com wrote:

@Galland https://github.com/Galland

I'm just going to use the kernel that I compiled following the guide, which is the 3.0.36 kernel, and the modules that it created as well. That should work... right?

— Reply to this email directly or view it on GitHubhttps://github.com/aloksinha2001/picuntu-3.0.8-alok/issues/2#issuecomment-23346765 .

Alok Sinha Chief Executive Officer, Globus Eight Level 12, Tower 8C, DLF Phase II, Gurgaon, India 122002 Suite 600, 2201 Cooperative Way, Herndon, VA, USA 20171 Phone: +1-757-447-4642 | +91-9810159444 asinha@g8.net | www.g8.net

mrhall4d commented 11 years ago

so wheredo we go from here?

mrhall4d commented 11 years ago

tyeo what mini pc r u using