[OpenWrt-Devel] modifying source code in OpenWrt

Felix Fietkau nbd at openwrt.org
Sun Oct 9 15:44:32 CEST 2011


On 2011-10-09 3:39 PM, abhinav narain wrote:
>
>
> On Sun, Oct 9, 2011 at 7:26 AM, Felix Fietkau <nbd at openwrt.org
> <mailto:nbd at openwrt.org>> wrote:
>
>     On 2011-10-09 10:49 AM, abhinav narain wrote:
>
>
>         I am adding the following lines to the code :
>
>         static void __exit ath9k_exit(void)
>         {
>                  is_ath9k_unloaded = true;
>                  ath_ahb_exit();
>                  ath_pci_exit();
>                  ath_rate_control_unregister();
>                  printk(KERN_INFO "%s:*I added this* Driver unloaded\n",
>         dev_info);
>         *  printk(KERN_INFO "abhinav init ");*
>
>         }
>         module_exit(ath9k_exit);
>
>         I don't even get these printk(() output on dmesg !
>         when i do :
>
>         rmmod ath9k.o
>
>         I am following exactly what you have said above.
>         I am not doing package/mac80211/{clean,__compile}
>         after package/mac80211/update
>         and loading the image on the router.
>
>         Please help, I am out of creativity of trying anything new on
>         this thing.
>
>     You're probably editing in the wrong place. OpenWrt does not use
>     mac80211 or ath9k from build_dir/linux-ar71xx___generic/linux-2.6.39.4.
>     What you're interested in is in
>     build_dir/linux-ar71xx___generic/compat-wireless-*/
>
> I want to modify compat wireless driver.
> this is what documentation I am following
> http://wiki.openwrt.org/doc/devel/patches .
> More precisely this :
> # 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
>
> After above I copy the image on the router.
> The changes are reflected in the code in
> build_dir/linux-ar71xx/compat../drivers/net/...ath9k/init.c
>
>     I suggest you read up on how to use quilt for managing patches on
>     packages, the OpenWrt package that this build dir belongs to is
>     package/mac80211.
>     After you modify it, don't run make package/mac80211/clean, that'll
>     throw away all of your modifications :)
>
> I am running mac80211/update as the last command before uploading the
> image on router.
> I think that should be it, but I don't get printk() outputs.
If you reflash, then you need to rebuild the firmware before you do so.
Otherwise you could just use make package/mac80211/compile and copy 
bin/ar71xx/packages/kmod-ath* to the router and install it there.

- Feix


More information about the openwrt-devel mailing list