This is the official one that the ps3 looks to find.
http://dus01.ps3.update.playstation.net/update/ps3/list/us/ps3-updatelist.txt
So what you need to do is create /update/ps3/list/us/ps3-updatelist.txt on your own webserver and edit that ps3-update.txt file to something like this.
Code:
# US
Dest=84;ImageVersion=00000000;SystemSoftwareVersion=1.5100;CDN=http://dus01.ps3.update.playstation.net/update/ps3/image/us/2007_0202_afd01d9c72b3b69c03a0206c45d87dda/PS3UPDAT.PUP;CDN_Timeout=30;
Notes:
"ImageVersion=" is what the PS3 looks to check if it needs to be updated or not. So if that hex number is smaller then the one on your ps3 it will not update. That same "ImageVersion" is on the PS3UPDAT.PUP file but trying to hex edit it to match and trying to update gave errors.
"SystemSoftwareVersion=" is just a number at this point and if its needed to be updated it would then read it. I tested this by putting 9.99 and changed the "ImageVersion=" to a higher hex number then the one on my PS3. It started the download process and stated that it found and update with firmware version 9.99 and proceeded to download. Once again that same number is on the PS3UPDAT.PUP file but trying to hex edit it to match gave errors trying to update. But for this purpose of just bypassing it can be any number you want.
"CDN=http" That can be any web address as far as I know that it wll try to read to download the firmware. I tested it by basically doing "http://MYWEBSERVER/CRAP/PS3UPDAT.PUP and it did download the file. But again for this purpose it can be whatever you want.
This might be a way to install your own homebrew firmware after the PS3UPDAT.PUP file gets decoded.
I hope this helps.