Oh, sorry. Didn't get it right.

Terminal emulator in Android has no root privileges unfortunately. May
I ask why would you do it in terminal emulator when you can do it in
adb (already root)?

On Oct 30, 12:30 pm, perumal316 <perumal...@gmail.com> wrote:
> Hi Mr Chew,
>
> I have built the module against the goldfish kernel. Then I start the
> emulator then in a terminal (adb shell) then insmod it and it is
> working. But within the emulator there is a terminal emulator. If I
> insmod there the module is not loaded ("Operation Not Permitted").
> Since it is working in the shell, it should also work within the
> terminal emulator but not sure why it is not working. Is there any way
> to verify I have root access in terminal emulator?
>
> Regards,
> Perumal
>
> On Oct 30, 12:10 pm, Chew Esmero <chew.esm...@gmail.com> wrote:
>
>
>
> > Hi Perumal,
>
> > I'm confused when you say that it's already working in shell but not
> > in emulator. Working in shell meaning you insmod the hello.ko to your
> > host? If so, then the module was not properly built. If module is
> > properly built against the goldfish kernel, output module would be for
> > ARM architecture therefore you cant insmod it to your host (assuming
> > your host is x86). Only in emulator since emulator is an emulated ARM
> > architecture.
>
> > On Oct 30, 11:35 am, perumal316 <perumal...@gmail.com> wrote:
>
> > > Hi,
>
> > > I also faced similar problem, your MakeFile may need changes, below is
> > > the makefile i used:
>
> > > ifeq ($(KERNELRELEASE),)
>
> > > KERNELDIR ?= /goldfish/kernel
> > > PWD := $(shell pwd)
>
> > > .PHONY: build clean
>
> > > build:
> > >         $(MAKE) -C $(KERNELDIR) M=$(PWD) modules
>
> > > clean:
> > >         rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c
> > > else
>
> > > $(info Building with KERNELRELEASE = ${KERNELRELEASE})
> > > obj-m :=    hello.o
>
> > > endif
>
> > > Or you can also try the one mentioned by Mr Chew above.
> > > Also as mentioned by him above set the path to your CROSS_COMPILE
> > > directory before make.
>
> > > Regards,
> > > Perumal
>
> > > On Oct 30, 10:57 am, Eduardo Acker <izayahighfat...@gmail.com> wrote:
>
> > > > Hi Chew,
>
> > > > I'm a newbie in linux/android and Im having some problems to compile 
> > > > the my
> > > > module.
> > > > i dowloaded the android-goldfish-2.6.29 snapshot and the android 
> > > > plataform.
> > > > Compiled the kernel with your instructions to ARCH and CROSS_COMPILE and
> > > > have no problem, but when i try to compile the module it givesthe error:
> > > > - entering directory /home/acker/goldfish/kernel
> > > > - no rule to process the target "modules"
>
> > > > any idea of what  i did wrong?
>
> > > > thanks for the help,
> > > > Eduardo Acker
>
> > > > 2009/10/29 Chew Esmero <chew.esm...@gmail.com>
>
> > > > > Yes, it is possible. Exec Format Error: it seems that your module is
> > > > > not built using the headers of your goldfish kernel. Try this simple
> > > > > makefile when building your new driver (assuming hello.c as source):
>
> > > > > obj-m := hello.o
>
> > > > > CROSS_COMPILE=arm-eabi-
> > > > > KERNEL_DIR ?= ~/goldfish/kernel/
>
> > > > > all:
> > > > >        $(MAKE) -C $(KERNEL_DIR) M=`pwd` ARCH=arm CROSS_COMPILE=$
> > > > > (CROSS_COMPILE) modules
>
> > > > > clean:
> > > > >        rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions
> > > > > modules.order Module.symvers Module.markers
>
> > > > > You need to take note that you need to export first CROSS_COMPILE
> > > > > variable to your current shell. (i.e. #export CROSS_COMPILE=~/<your-
> > > > > android-dir>/prebuilt/linux-x86/toolchain/arm-eabi-4.3.1/bin) Then you
> > > > > issue the command #make. I think this will resolve the Exec Format
> > > > > Error problem.
>
> > > > > As for the 'operation not permitted' problem in #insmod, it seems that
> > > > > the "Loadable Module Support" in your goldfish's kernel config is
> > > > > still not enabled. You can try this:
>
> > > > > <goldfish-kernel># ARCH=arm make goldfish_defconfig
> > > > > <goldfish-kernel># ARCH=arm make menuconfig
>
> > > > > [*] Enable loadable module support ---> (make sure to have this one)
>
> > > > > <goldfish-kernel># ARCH=arm ARCH=arm CROSS_COMPILE=arm-eabi- make
>
> > > > > Your final kernel will be arch/arm/boot/zImage. After booting emulator
> > > > > using that kernel, you can now do your #insmod in emulator shell.
>
> > > > > Hope that helps.
>
> > > > > On Oct 29, 1:01 pm, perumal316 <perumal...@gmail.com> wrote:
> > > > > > Thanks,Yes, now it can be loaded when the emulator is booted with 
> > > > > > the
> > > > > > new kernel.
> > > > > > But must I always build the module against my new kernel and boot 
> > > > > > with
> > > > > > the new kernel to load a new module?
> > > > > > Is it possible to insmod <module>, similar like in Linux to load a
> > > > > > module?
> > > > > > I have tried in emulator's terminal and in shell but keep on getting
> > > > > > the "init module failed, Exec Format Error or init module
> > > > > > failed,operation not permitted" error messages.
>
> > > > > > Regards,
> > > > > > Perumal
>
> > > > > > On Oct 20, 9:06 pm, Chew Esmero <chew.esm...@gmail.com> wrote:
>
> > > > > > > Did you build the module against your new kernel? (i.e. ARCH=arm
> > > > > > > KERNEL_DIR=<android-root-dir>/kernel make). I've encountered that
> > > > > > > error message before and it seems that the booted kernel still do 
> > > > > > > not
> > > > > > > allow "Enable Loadable Module" .config support. Are you sure 
> > > > > > > emulator
> > > > > > > is booted with the new kernel? (i.e. emulator -kernel 
> > > > > > > <new-kernel> -
> > > > > > > show-kernel -avd <name-of-avd>)
--~--~---------~--~----~------------~-------~--~----~
unsubscribe: android-kernel+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-kernel
-~----------~----~----~----~------~----~------~--~---

Reply via email to