I was wrong in last reply. firmware-b43-installer.postinst already download 'latest' firmware archive.
However, the hardware detection logic is kind of outdated. I went through the following page: http://linuxwireless.org/en/users/Drivers/b43#Supported_devices and made attached patch to reflect most recent support state. Of course, 4331 is moved to supported. Note that lpphy stuff seems outdated now and we can just use b43 for 4315.
--- firmware-b43-installer.postinst.orig 2012-11-18 00:44:16.158996680 -0600 +++ firmware-b43-installer.postinst 2012-11-18 00:56:42.006977632 -0600 @@ -88,16 +88,14 @@ 4301 | 4306 | 4320 |4324 | 4325) legacy=1 ;; - 4315) - lpphy=1 - ;; - 4328 | 4329 | 4307 | 4311 | 4312 | 4318 | 4319 | 432b | 4315 | 4321 | 4353 | 4357 | 5354) + 4307 | 4311 | 4312 | 4315 | 4318 | 4319 | 4321 | 4328 | 4329 | 432b | 432c | 4331 | 4353 | 4357 | 5354) latest=1 ;; - 4322 | 4331 | 4727) + 4322 | 4358 | 4365 | 4727 | a8d8) + # b43 upstream says 3.6+ for a8d8 unsupported="$unsupported $device_id" ;; - 0576 | 4313 | 432a | 432c | 432d | 4358 | 4359 | 435a | a99d) + 0576 | 4313 | 432a | 432d | 4358 | 4359 | 435a | a8d8 | a99d) nottested=1 ;; *) @@ -111,11 +109,6 @@ echo "Use b43legacy firmware (firmware-b43legacy-installer package) instead." echo "Aborting." exit 0 -elif [ "$lpphy" ]; then - echo "An unsupported BCM4312 Low-Power (LP-PHY) device was found." - echo "Use b43 LP-PHY firmware (firmware-b43-lpphy-installer package) instead." - echo "Aborting." - exit 0 elif [ "$unsupported" ]; then echo -n "Unsupported device(s) found: PCI id " for device_id in $unsupported; do echo -n "14e4:$device_id "; done