[OpenWrt-Devel] how to apply driver patch to the kernel

Murat Sezgin sezginmurat at gmail.com
Mon Oct 10 05:25:41 CEST 2011


Did you try to increase the printk debug level in run time?

echo 8 > /proc/sys/kernel/printk

Murat


On Oct 9, 2011, at 18:47, abhinav narain <abhinavnarain10 at gmail.com> wrote:

> Hi,
>   Jonas, Adam, Harish.
> 
>  so I have got a printk() msg on dmesg but only doing the following :
> modifying the tar in dl/ folder and deleting the build_dir directory.
> make package/mac80211/{clean,compile}
> 
> Now it definitely compiles my modifications
> 
> I have written the following note to tell I am doing right things without ambiguity as told by you all.
> @Adam,
> As you can see, I am modifying the
> build_dir/linux-ar71xx_generic/compat-wireless-2011-08-10/
> Hence  I am modifying at the right place, I suppose ( as suggested by you.
> # make package/mac80211/{clean,prepare} V=99 QUILT=1
> # cd build_dir/linux-ar71xx_generic/compat-wireless-2011-08-10/
> # quilt push -a
> # quilt new my_changes.patch
> # quilt edit drivers/net/wireless/ath/ath9k/files
> # quilt refresh
> # cd ../../../ && make package/mac80211/update
> 
> I do a make package/mac80211/update in openwrt/src/klash
> (same where update is done)
> 
> I get the patch code in the build_dir/compat-wireless/ .... /ath9k
> But, I did not get the printk() message in the dmesg.
> 
> @Harish :
> I am not sure how to trigger monolithic kernel, but i dont get any output of strings ... because vmlinux does not exist
> monolithic kernel ? option
> strings vmlinux | grep abhinav
> Note: vmlinux is not vmlinuz ..
> 
> 
> @Jonas: i kept the patch in package/mac80211/patches/ with latest serial no. in the list of patches
> Applied make package/mac80211/{clean,compile}
> This will fetch the compat source from dl/ and apply new patches.
> But i did not get the printk() by this method.
> 
> I am surprized why these things are not working.
> I am copying the factory.img, sometimes doing:
>  sysupgrade -n -v -d 30 open...-sysupgrade.bin
> 
> To copy this on router and still the code changes were not reflected while testing the dmesg output!
> Can any of you guess where am I going wrong in the above process...
> As i have to write and test actual code and it will be tedious to put things everytime in dl/ as tarball.
> 
> Abhinav
> 
> 
> On Sun, Oct 9, 2011 at 2:31 AM, harish badrinath <harishbadrinath at gmail.com> wrote:
> On Sun, Oct 9, 2011 at 9:55 AM, abhinav narain
> <abhinavnarain10 at gmail.com> wrote:
> > hi,
> >  your method does not work.
> > I tried doing this by adding a printk() line to module_exit() in ath9k in
> > the file init.c
> > The dmesg does not show any output of the changed line.
> 
> Are you sure  that
> (a) The code is compiled into the kernel
> (b) The code is lying in the exec path of the kernel and it is
> executed before a panic/something similar.
> it it is (a) You should probably mess with make files.
> if it is (b) Try adding the code in a different place or try adding
> printk's in arch/foo folder and then (re)generate your patch.
> 
> 
> > It took me a lot of time to figure this out.
> > Any help please ?
> >
> > On Thu, Oct 6, 2011 at 4:19 PM, Jonas Gorski
> > <jonas.gorski+openwrt at gmail.com> wrote:
> >>
> >> Hi,
> >>
> >> On 6 October 2011 20:55, abhinav narain <abhinavnarain10 at gmail.com> wrote:
> >> > hi,
> >> > This is my first experience with writing a patch/using git.
> >> > I need some specific answers to get it working
> >>
> >> mac80211 is actually a bit tricky since quilt doesn't work.
> >>
> >> I'd recommend cloning the appropriate tag from
> >> <https://github.com/mcgrof/compat-wireless>, then applying the OpenWrt
> >> patches on top of it (with e.g. git apply - don't forget to commit,
> >> but all as one should be fine).
> >>
> >> Then you can create patches you can put into package/mac80211/patches/
> >> (they should come last).
> >>
> >> > a/compat-wireless-2011-08-10/drivers/net/wireless/ath/ath9k/ath9k.h
> >> > b/compat-wireless-2011-08-10/drivers/net/wireless/ath/ath9k/ath9k.h
> >> > index c03949e..0b31c10 100644
> >> > --- a/compat-wireless-2011-08-10/drivers/net/wireless/ath/ath9k/ath9k.h
> >> > +++ b/compat-wireless-2011-08-10/drivers/net/wireless/ath/ath9k/ath9k.h
> >>
> >> The base is wrong, it should be a/drivers/net/... . without the
> >> compat-wireless... .
> >>
> >> > @@ -122,9 +122,14 @@ void ath_descdma_cleanup(struct ath_softc *sc,
> >> > struct
> >> > ath_descdma *dd,
> >> >  /***********/
> >> > My questing is :
> >> > 0) should index line be present in the patch ?
> >>
> >> It doesn't hurt, but it doesn't help either, patch ignores it when
> >> applying them. For a working patch the ---/+++ lines and the changes
> >> are enough, everything else is just fluff.
> >>
> >> > 1) Where should I place this patch file ?
> >>
> >> in package/mac80211/patches/ (where all patches are).
> >>
> >> > 2) What are the set of easiest commands to get this patch to be
> >> > applied/compile ?
> >>
> >> Copy the patch to the location above, do a "make
> >> package/mac80211/{clean,compile}
> >>
> >> > I saw Quilt http://wiki.openwrt.org/doc/devel/patches
> >> > The asked to do make package/example/update V=99
> >> > Now I don't know what this example should be to use this command ?
> >>
> >> Not for mac80211/compat-wireless, so just ignore it ;)
> >>
> >> Regards
> >> Jonas
> >> _______________________________________________
> >> openwrt-devel mailing list
> >> openwrt-devel at lists.openwrt.org
> >> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
> >
> >
> > _______________________________________________
> > openwrt-devel mailing list
> > openwrt-devel at lists.openwrt.org
> > https://lists.openwrt.org/mailman/listinfo/openwrt-devel
> >
> >
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel at lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
> 
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel at lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openwrt.org/pipermail/openwrt-devel/attachments/20111009/b8483819/attachment-0001.html>


More information about the openwrt-devel mailing list