Hello -
I've just started messing with my AppleTV. I'm new to the Mac, so my questions/comments may sound like I'm a newbie. Sorry.
I've decompressed the "mach_kernel.prelink", and see what appear to be USB driver files. Something that looks promising are the strings "IsIOUSBDeviceAllowed" and "IsIOUSBInterfaceAllowed" referenced several times.
From what I understand, the USB port isn't enabled by default. Could this be a clue to enabling it?
Is there some sort of master 'database/registry' on the MAC where 'variables' such as "IsIOUSBDeviceAllowed" would be stored (and drivers could refer to the vars to make decisions)? If not, maybe the AppleTV EEPROM (which is partially dumped in the "dmesg" output) contains 'variables' that the drivers can refer to?
If anything, someone with Intel disassembly/reverse-engineering experience may be able to find the code that actually refers to these strings/'variables', and force the code to always treat them as 'TRUE'. (assuming that's what these strings are - boolean 'variables')
Just a thought - sorry if this is obvious.
Edit: Maybe these aren't "boolean" symbols (yes/no for all USB devices) - maybe they are function names (that get passed device IDs to see if the given device is 'allowed'). Maybe they are exported somewhere in one of the modules inside "mach_kernel.prelink", or somewhere outside. Same idea should be possible: stub-out these functions to always return 'true'.
- Paulb
