Well binwalk tells me that it is basically a big endian JFFS2 file system. So that suggests unsurprisingly that it's a MIPS device. Had to install Jefferson to extract the JFFS2 file system.
Poking around in there I find the following
/usr/lib/dsl_sfp/drivers/libmetanoia.so /usr/lib/package/setup/metanoia_fw.sh /usr/lib/metanoia /usr/lib/metanoia/metanoia-definitions.odl /usr/lib/metanoia/metanoia.odl /usr/lib/metanoia/firmware_package.b /usr/lib/metanoia/metanoia-defaults.odl /etc/init.d/metanoia /etc/rc6.d/K20metanoia /lib/modules/3.4.11-rt19/extra/metanoia_dyinggasp.ko
So we have a kernel module for handling dying gasp. A quick check with strings shows that it's GPL licensed so if it is not submitted upstream to the kernel we can ask for it. However you don't have to have dying gasp to make it work.
Poking about a bit more and firmware_package.b is the firmware but binwalk tells me nothing, and it seems oddly small at only 860KB, but maybe I am just being ignorant here about how large the firmware file should be.
The whole lot is written by a firm called SoftAtHome that specializes in writing middleware for internet devices. They have this application called pcb_app (I think) that is called by /etc/init.d/dsl_sfp on entering runlevel 2 that loads libmetanoia.so as a driver into the app. After taking a punt and installing the binutils-mips-linux-gnu package on my laptop that is apparently a elf32-tradbigmips binary. Runing objdump with -T would suggest that this a a program that communicates via the fabled Ethernet Boot Management protocol with a Metanoia SFP. At least there is a whole bunch of routines called things like
mt_ebm_boot ebm_task_cancel mt_ebm_get_value_by_addr ebm_get_value_by_mib mt_ebm_get_value_by_mib ebm_set_value_by_mib mt_ebm_set_value_by_mib ebm_get_type_from_str mt_ebm_set_value_by_addr ebm_get_type_from_str mt_ebm_access_oid
There is also a routine called handle_downloadfw_metabin_withpacktool. A bit of Googling on packtool suggests the firmware might be XOR encrypted. There is a likely list of OID's in there too, seems the EBM might well be using SNMP.
Anyway at this point my MIPS assembler is some lacking to understand the disassembly.
I would suggest the next step would be to ask for the source code for the metanoia_dyinggasp Linux kernel module.