[Solved] Compiling nls_utf8.ko kernel module for MI3 - Mi 3 Q&A, Help & Troubleshooting

Here is the source code: ht-tps://github.com/MiCode/Xiaomi_Kernel_OpenSource/tree/cancro-kk-oss
path: fs/nls/nls_utf8.c
I have no idea about building kernel, hope someone can help
I found stock kernel for cancro had nls support integrated, so needn't compile nls_utf8 module.

Related

Compile bcm4329 to Nexus One with custom Kernel

Dear All,
How do I compile the bcm4329.ko wlan driver to nexus one? I'm using the kernel 2.6.32-nexusonec but when I compile the kernel, it dont put the bcm4329.ko on the directory drivers/net/wireless.
Thank you
Kind Regards,
Ricardo Silva
Moved as not Android Development.
Sorry. I thought that because was about the kernel, it was to be created on development forum.
About the question posted, some tip??
Thanks
No one knows?
A lot of kernels for Nexus One with the wlan driver and no answer to this?
Good Idea.
** Solved **
- Used Koush AnyKernel Updater
- Switched to to the self compiled bcm4329.ko modul.
- Repacked with Koush AnyKernel Updater
- Flashed the File
* working like a charm
i am stuck too atm.
Compiled an Kernel and need the WLAN Modul. wlan.ko is compiled like described at CM Wiki.
i tried following :
adb remount
adb push bcm4329.ko /system/lib/modules
tried the same with the : wlan.ko
Flashed the Kernel through fastboot, Kernel is booting up and is working like a charm. If i try to enable WLAN i got only "Error".
Perhaps someone skilled can help, would be nice to get a hint.
Best regards,
Alex.

[Q] Modify BCM4329 driver

Hello,
I'm looking to access Broadcom 4329 sources and make some minimal modifications.
I could successfully compile Kernel and bcm4329.ko and upload to the phone. Both Kernel a module are working fine. Except that I can't find the true sources and modify them.
There are many guides, some outdateted, and confuses me a bit.
I found bcm4329 sources at ~/android/system/hardware/broadcom/wlan/bcm4329/src but those files are never being used at all while compiling.
On Nexus One this folder seams to be completelly unused.
When I compile the Kernel it also makes a working bcm4329.ko module with files from ~/android/kernel/cm-kernel/drivers/net/wireless/bcm4329.
I need help to known how can I modify sources a compile them.
Which files are the 'true' sources for this drivers to be modifed?
I add a printk in wl_cfg80211.c located at both folders, but do nothing.
Regards,
for the record: we found the solution, the module gets compiled with the sources from
Code:
cm-kernel/drivers/net/wireless/bcm4329/

[KERNEL] Building additional modules for JB stock kernels

Some background info:
I'm the author of PPP Widget which is an app that enables mobile data connections on Android devices with USB host capabilities - even if they are WiFi-only.
It turned out that many Android devices have the drivers for 3G sticks already on board, included with the stock kernel. The one large exception are Samsung devices ...
I started to provide the missing drivers as modules (mostly "ppp_async" and "option" which depends on "usb_wwan"). That worked well for some Google devices and also for Samsung devices running ICS, using the source packages from
http://opensource.samsung.com/
In their JB kernels though, Samsung enabled the "MODVERSION" option. Furthermore, compiling the modules with the officially recommended toolchain resulted in a different "module_layout" checksum than in the modules provided in the firmware.
This prevents using any additonal modules on the devices. "insmod" refuses to load these modules.
The only explanation for this problem is that the custom device configuration provided in the source packages does not match the configuration of the device kernel.
This is the case for all GT-P31xx and GT-P51xx models as far as I can tell.
My take is that Samsung is required to provide the correct kernel configuration under the rules of the GPL. Maybe anyone else wants to contact Samsung on this behalf; I already did several times - still waiting for an answer ...
That's the reason why I build everyting from source including the GPU driver and lost exFAT support http://forum.xda-developers.com/showthread.php?t=1859227 and the boot image result http://forum.xda-developers.com/showthread.php?t=1855700 .
ketut.kumajaya said:
That's the reason why I build everyting from source including the GPU driver and lost exFAT support
Click to expand...
Click to collapse
Unfortunately, replacing the kernel is no option for end users. The modules I provide are going into a folder on the sdcard, and can be "insmod'ed" from there with no problem - once their magic string and the "modversions" are matching the kernel on the device. The latter is the wall I'm hitting ...
JFDee said:
Unfortunately, replacing the kernel is no option for end users. The modules I provide are going into a folder on the sdcard, and can be "insmod'ed" from there with no problem - once their magic string and the "modversions" are matching the kernel on the device. The latter is the wall I'm hitting ...
Click to expand...
Click to collapse
Thanx alot for such a great development. ...
Adi™
Creator Of Sungsonic™HD
I have received a reply from Samsung. They have updated the JB open source package for GT-P3110, GT-P5110 and GT-N7100 (which previously included a config file from 3.0.15 for a kernel version of 3.0.31 !!).
Unfortunately, the modversions of the compiled kernel are still different and incompatible. I have replied with these finding.
Waiting again ...
BTW, the only recent kernel config consistent with the actual device kernel that I have found is for the GT-N8000 (3.0.31). So it is possible to provide a matching configuration.
JFDee said:
I have received a reply from Samsung. They have updated the JB open source package for GT-P3110, GT-P5110 and GT-N7100 (which previously included a config file from 3.0.15 for a kernel version of 3.0.31 !!).
Unfortunately, the modversions of the compiled kernel are still different and incompatible. I have replied with these finding.
Waiting again ...
BTW, the only recent kernel config consistent with the actual device kernel that I have found is for the GT-N8000 (3.0.31). So it is possible to provide a matching configuration.
Click to expand...
Click to collapse
If You will start to work with kernel I'm willing to beta test with my P5110. Only issue for me is that I need to know what 3G dongle to buy (well need it anyway so would prefer an advice from someone who know something about it). I'm living in Poland and Ireland (once here once there) so I can even test LTE modems (well donations here, myself can spend up to ~50€ on 3G one) because in Wroclaw, Poland I heard it's quite good, also I got H+/H on SGSII here. While in Ireland signal is not THAT strong due to fact most of places are quite remote (except Dublin, Galway etc). Hope I can help in either way
This is what I wrote to Samsung concerning the botched configuration file provided with the latest GT-P3110 kernel source:
Thank you for the source code update.
However, I have asked for the kernel configuration that matches exactly the kernel on the GT-P3110.
I have compiled the kernel from the provided update, but the module layout checksum does *not* match the one from the kernel running on my device.
On the device: module_layout 0xb5a27644
From source: module_layout 0x143474f1
I have used the recommended toolchain "CodeSourcery 2010q1" and the unchanged config file provided with the source ("android_espresso_omap4430_r04_user_defconfig").
Please be aware that you are obliged by the GPL to provide the correct config file for the binary kernel that you are distributing.
As a side note: the configuration provided with the kernel source for the GT-N8000 *does* match the kernel on the device, so there is no doubt that it is possible to get the configuration right.
Other Android vendors are just enabling the "embedded" config file in the kernel, so that the correct configuration is simply available on the device as "/proc/config.gz". This is so much less trouble. I suggest that you enable this option for Samsung kernels too.
Regards,
...
Click to expand...
Click to collapse
The GT-N8010 is also in the same situation you describe - config for 3.0.15 and jb stock kernel at 3.0.31, can't build working modules for stock.
davp, there seems to have been some activity at the Samsung open source center after my messages.
I suggest you make yourself heard as well. Use the "Inquiry" button next to the package download link in the table for your device.
To be able to add working modules to the device, the kernel configuration for the source has to be 100% compatible. It does not matter if any closed drivers are missing as we don't want to replace the kernel - but all those general debugging config options should be correct.
BTW, there is a history of similar issues:
http://forum.xda-developers.com/showthread.php?t=1123643
The kernel source for the GT-P3110 has been updated once more, and this time they have fixed the configuration.
With the latest JB update we can actually build working modules for the current firmware.
I confirmed this to the Samsung people and reminded them of the other devices in need of this fix: GT-P3100, GT-P5100, GT-P5110, GT-N7100 and probably more (like the GT-N8010).
JFDee said:
The kernel source for the GT-P3110 has been updated once more, and this time they have fixed the configuration.
With the latest JB update we can actually build working modules for the current firmware.
I confirmed this to the Samsung people and reminded them of the other devices in need of this fix: GT-P3100, GT-P5100, GT-P5110, GT-N7100 and probably more (like the GT-N8010).
Click to expand...
Click to collapse
So for now we might get stock kernel which will support 3G modems via USB OTG? How about other kernels such as CM10.1?
I'm looking for good 3G dongle then Any advices?
Additional kernel modules for stock JB P31xx (tested) and P51xx (untested), contains:
- usb_wwan, ppp_async, and option module for PPP Widget
- dns_resolver, md4, and cifs module for cifs/samba filesystem support
- sunrpc, lockd, and nfs module for nfs filesystem support
Kernel config file attached.
FTDI Single Port Serial Driver added.
cifs.ko not working on P3100 JB 4.1.2 (stock rooted)
ketut.kumajaya said:
Additional kernel modules for stock JB P31xx (tested) and P51xx (untested), contains:
- usb_wwan, ppp_async, and option module for PPP Widget
- dns_resolver, md4, and cifs module for cifs/samba filesystem support
- sunrpc, lockd, and nfs module for nfs filesystem support
Kernel config file attached.
Click to expand...
Click to collapse
Hi ketut.kumajaya,
I'm trying to use cifs.ko but i get:
/system/lib/modules # insmod cifs.ko
insmod: can't insert 'cifs.ko': unknown symbol in module or invalid parameter
I have:
/system/lib/modules # uname -a
Linux localhost 3.0.31-1084989 #1 SMP PREEMPT Mon Mar 25 14:53:07 KST 2013 armv7l GNU/Linux
I tried other cirs.ko with same result.
Can you give me some clues of what can I do?
Thank you.
Try insmod in order:
insmod dns_resolver.ko
insmod md4.ko
insmod cifs.ko
If something goes wrong, see the kernel messages using dmesg.
ketut.kumajaya said:
Try insmod in order:
insmod dns_resolver.ko
insmod md4.ko
insmod cifs.ko
If something goes wrong, see the kernel messages using dmesg.
Click to expand...
Click to collapse
Great!!!
That's the solution.
In my Tab 10.1 4.0.4 I'm loading (different kernel and different modules, of course):
insmod cifs.ko
insmod md4.ko
insmod nls_utf8.ko
So I was not thinking I should use a different order.
Thank you.

[Q] cifs module

Hello,
Does anyone have cifs module for the TF701?
jenowa said:
Hello,
Does anyone have cifs module for the TF701?
Click to expand...
Click to collapse
Needs to be compiled into the kernel normally as insmod adding cifs.ko stopped working since android 4.2 due to the way google made changes. We don't have kernel sources for 4.3 yet.
sbdags said:
Needs to be compiled into the kernel normally as insmod adding cifs.ko stopped working since android 4.2 due to the way google made changes. We don't have kernel sources for 4.3 yet.
Click to expand...
Click to collapse
Thank You for the informative reply.

[Q][DEV]How to add *mount namespace* support for kernel? /adding *MAGISK* support/

Hi!
I want to add *mount namespace* support for stock kernel N9005 [TW][LL] or maybe to any kernel deprived of MagiskHide support.
I will be grateful for your help.

Categories

Resources