Iirc openwrt refused to include a kernel patch to make hardware NAT work because it was too much of a hack.