There is no need to modify openwrt source code if you plan to modify flash chip size, let say from 4MB to 8MB, because openwrt will detect your flash chip size and adjust the rootsf size for new chip size.
This is my putty log of MR-3020 upgraded flsh chip to 8MB.
=~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2012.11.10 15:05:43 =~=~=~=~=~=~=~=~=~=~=~=
U-Boot 1.1.4 (Nov 28 2011 - 09:34:00)
AP121 (ar9330) U-boot
DRAM: 32 MB
led turning on for 1s...
id read 0x100000ff
flash size 4194304, sector count = 64
Flash: 4 MB
Using default environment
In: serial
Out: serial
Err: serial
Net: ag7240_enet_initialize...
No valid address in Flash. Using fixed address
Fetching MAC Address from 0x81ff4228
: cfg1 0x5 cfg2 0x7114
eth0: 00:03:7f:09:0b:ad
ag7240_phy_setup
eth0 up
: cfg1 0xf cfg2 0x7214
eth1: 00:0c:f0:60:dc:98
athrs26_reg_init_lan
ATHRS26: resetting s26
ATHRS26: s26 reset done
ag7240_phy_setup
eth1 up
eth0, eth1
Autobooting in 1 seconds
## Booting image at 9f020000 ...
Uncompressing Kernel Image ... OK
Starting kernel ...
[ 0.000000] Linux version 3.3.8 (blogic@Debian-60-squeeze-64-minimal) (gcc version 4.6.3 20120201 (prerelease) (Linaro GCC 4.6-2012.02) ) #2 Sat Oct 20 12:31:22 UTC 2012
[ 0.000000] bootconsole [early0] enabled
[ 0.000000] CPU revision is: 00019374 (MIPS 24Kc)
[ 0.000000] SoC: Atheros AR9330 rev 1
[ 0.000000] Clocks: CPU:400.000MHz, DDR:400.000MHz, AHB:200.000MHz, Ref:25.000MHz
[ 0.000000] Determined physical RAM map:
[ 0.000000] memory: 02000000 @ 00000000 (usable)
[ 0.000000] Initrd not found or empty - disabling initrd
[ 0.000000] Zone PFN ranges:
[ 0.000000] Normal 0x00000000 -> 0x00002000
[ 0.000000] Movable zone start PFN for each node
[ 0.000000] Early memory PFN ranges
[ 0.000000] 0: 0x00000000 -> 0x00002000
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128
[ 0.000000] Kernel command line: board=TL-MR3020 console=ttyATH0,115200 rootfstype=squashfs,jffs2 noinitrd
[ 0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[ 0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[ 0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
[ 0.000000] Writing ErrCtl register=00000000
[ 0.000000] Readback ErrCtl register=00000000
[ 0.000000] Memory: 29008k/32768k available (2209k kernel code, 3760k reserved, 412k data, 212k init, 0k highmem)
[ 0.000000] SLUB: Genslabs=9, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] NR_IRQS:51
[ 0.000000] Calibrating delay loop... 265.42 BogoMIPS (lpj=1327104)
[ 0.080000] pid_max: default: 32768 minimum: 301
[ 0.080000] Mount-cache hash table entries: 512
[ 0.090000] NET: Registered protocol family 16
[ 0.090000] gpiochip_add: registered GPIOs 0 to 29 on device: ath79
[ 0.100000] MIPS: machine is TP-LINK TL-MR3020
[ 0.350000] bio: create slab <bio-0> at 0
[ 0.360000] Switching to clocksource MIPS
[ 0.360000] NET: Registered protocol family 2
[ 0.370000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.370000] TCP established hash table entries: 1024 (order: 1, 8192 bytes)
[ 0.370000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.380000] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.390000] TCP reno registered
[ 0.390000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.400000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.400000] NET: Registered protocol family 1
[ 0.430000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.430000] JFFS2 version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 0.440000] msgmni has been set to 56
[ 0.440000] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 254)
[ 0.450000] io scheduler noop registered
[ 0.450000] io scheduler deadline registered (default)
[ 0.460000] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[ 0.470000] ar933x-uart: ttyATH0 at MMIO 0x18020000 (irq = 11) is a AR933X UART
[ 0.480000] console [ttyATH0] enabled, bootconsole disabled
[ 0.480000] console [ttyATH0] enabled, bootconsole disabled
[ 0.490000] m25p80 spi0.0: found mx25l6405d, expected m25p80
[ 0.500000] m25p80 spi0.0: mx25l6405d (8192 Kbytes)
[ 0.500000] 5 tp-link partitions found on MTD device spi0.0
[ 0.510000] Creating 5 MTD partitions on "spi0.0":
[ 0.510000] 0x000000000000-0x000000020000 : "u-boot"
[ 0.520000] 0x000000020000-0x0000001096a8 : "kernel"
[ 0.520000] mtd: partition "kernel" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only
[ 0.540000] 0x0000001096a8-0x0000007f0000 : "rootfs"
[ 0.540000] mtd: partition "rootfs" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only
[ 0.550000] mtd: partition "rootfs" set to be root filesystem
[ 0.560000] mtd: partition "rootfs_data" created automatically, ofs=2D0000, len=520000
[ 0.570000] 0x0000002d0000-0x0000007f0000 : "rootfs_data"
[ 0.570000] 0x0000007f0000-0x000000800000 : "art"
[ 0.580000] 0x000000020000-0x0000007f0000 : "firmware"
[ 0.600000] ag71xx_mdio: probed
[ 0.610000] eth0: Atheros AG71xx at 0xb9000000, irq 4
[ 1.160000] ag71xx ag71xx.0: eth0: connected to PHY at ag71xx-mdio.1:00 [uid=004dd041, driver=Generic PHY]
[ 1.170000] TCP cubic registered
[ 1.170000] NET: Registered protocol family 17
[ 1.180000] Bridge firewalling registered
[ 1.180000] 8021q: 802.1Q VLAN Support v1.8
[ 1.190000] VFS: Mounted root (squashfs filesystem) readonly on device 31:2.
[ 1.200000] Freeing unused kernel memory: 212k freed
- preinit -
Press the [f] key and hit [enter] to enter failsafe mode
- regular preinit -
[ 6.400000] JFFS2 notice: (441) jffs2_build_xattr_subsystem: complete building xattr subsystem, 1 of xdatum (0 unchecked, 0 orphan) and 12 of xref (0 dead, 2 orphan) found.
switching to jffs2
- init -
Please press Enter to activate this console. [ 8.290000] Compat-drivers backport release: compat-drivers-2012-09-04-2-gddac993
[ 8.290000] Backport based on wireless-testing.git master-2012-09-07
[ 8.300000] compat.git: wireless-testing.git
[ 8.470000] cfg80211: Calling CRDA to update world regulatory domain
[ 8.480000] cfg80211: World regulatory domain updated:
[ 8.480000] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[ 8.490000] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 8.500000] cfg80211: (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 8.500000] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 8.510000] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 8.520000] cfg80211: (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 8.720000] usbcore: registered new interface driver usbfs
[ 8.730000] usbcore: registered new interface driver hub
[ 8.730000] usbcore: registered new device driver usb
[ 9.420000] ieee80211 phy0: Atheros AR9330 Rev:1 mem=0xb8100000, irq=2
[ 9.420000] cfg80211: Calling CRDA for country: US
[ 9.430000] cfg80211: Regulatory domain changed to country: US
[ 9.430000] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[ 9.440000] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2700 mBm)
[ 9.450000] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 1700 mBm)
[ 9.460000] cfg80211: (5250000 KHz - 5330000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 9.460000] cfg80211: (5490000 KHz - 5600000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 9.470000] cfg80211: (5650000 KHz - 5710000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 9.480000] cfg80211: (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 3000 mBm)
[ 9.540000] PPP generic driver version 2.4.2
[ 9.790000] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 10.010000] NET: Registered protocol family 24
[ 10.030000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 10.040000] ehci-platform ehci-platform: Generic Platform EHCI Controller
[ 10.040000] ehci-platform ehci-platform: new USB bus registered, assigned bus number 1
[ 10.080000] ehci-platform ehci-platform: irq 3, io mem 0x1b000000
[ 10.100000] ehci-platform ehci-platform: USB 2.0 started, EHCI 1.00
[ 10.100000] hub 1-0:1.0: USB hub found
[ 10.100000] hub 1-0:1.0: 1 port detected
[ 10.130000] nf_conntrack version 0.5.0 (456 buckets, 1824 max)
[ 10.360000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 13.620000] device eth0 entered promiscuous mode
BusyBox v1.19.4 (2012-10-12 05:19:00 UTC) built-in shell (ash)
Enter 'help' for a list of built-in commands.
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
ATTITUDE ADJUSTMENT (Attitude Adjustment, r33883)
-----------------------------------------------------
* 1/4 oz Vodka Pour all ingredients into mixing
* 1/4 oz Gin tin with ice, strain into glass.
* 1/4 oz Amaretto
* 1/4 oz Triple sec
* 1/4 oz Peach schnapps
* 1/4 oz Sour mix
* 1 splash Cranberry juice
-----------------------------------------------------
root@OpenWrt:/# c[Jdf -h
Filesystem Size Used Available Use% Mounted on
rootfs 5.1M 276.0K 4.9M 5% /
/dev/root 2.0M 2.0M 0 100% /rom
tmpfs 14.3M 60.0K 14.2M 0% /tmp
tmpfs 512.0K 0 512.0K 0% /dev
/dev/mtdblock3 5.1M 276.0K 4.9M 5% /overlay
overlayfs:/overlay 5.1M 276.0K 4.9M 5% /
root@OpenWrt:/# cat /proc/cpuinfo
system type : Atheros AR9330 rev 1
machine : TP-LINK TL-MR3020
processor : 0
cpu model : MIPS 24Kc V7.4
BogoMIPS : 265.42
wait instruction : yes
microsecond timers : yes
tlb_entries : 16
extra interrupt vector : yes
hardware watchpoint : yes, count: 4, address/irw mask: [0x0000, 0x0180, 0x0010, 0x0010]
ASEs implemented : mips16
shadow register sets : 1
kscratch registers : 0
core : 0
VCED exceptions : not available
VCEI exceptions : not available
root@OpenWrt:/# cat /proc/mtd
dev: size erasesize name
mtd0: 00020000 00010000 "u-boot"
mtd1: 000e96a8 00010000 "kernel"
mtd2: 006e6958 00010000 "rootfs"
mtd3: 00520000 00010000 "rootfs_data"
mtd4: 00010000 00010000 "art"
mtd5: 007d0000 00010000 "firmware"