On Fri, Apr 18, 2008 at 5:18 PM, Joe joe@settoplinux.org wrote:
Hello, Starting to work on the TV-Out code for the RCA RM4100, and I need some help. Here is the Logical Plan:
- Setup a custom vga init (similar to Corey's vga.c for the cn700
northbridge) that will call a i2c (i810_i2c.c which could be used for a bunch of intel nothbridges) driver from coreboot-v2/src/drivers/i2c/
that
will setup communications with the Tv encoder via the GPIO (sda, sdl) lines in the nothbridge.
Similar to, yes, but don't use vm86 (like I did) unless x86emu doesn't work. What you can do is NOT set up the rom_address in Config.lb, so coreboot doesn't know where to automagically run the rom from, then once you're done with the pre-rom stuff, call pci_rom_run manually from a function inside mainboard.c, using a location of 4GB-ROM_SIZE. Then in chip.h, add a struct member .enable_dev = [name of your function], so your custom vga init is only for your board.
- Then setup a init (that would program the registers, and fire it
up)for
the Tv encoder coreboot-v2/src/drivers/tv-out which could also be called from the nothbridge vga.c.
Again, do this inside mainboard.c, so any other systems that might use i830 don't get tv init interfering with anything else.
Here is where it gets tricky. I want to make it dynamic in the respect that you could specify from your mainboard directory: a. TV-out settings (with a header file??) like NTSC, PAl, resolution, macrovision, filters, etc. a. enable TV encoder usage (if yes setup i2c, otherwise just skip over
it)
b. Specify which Tv encoder to use
Two options: The first is to add global defines to the mainboard Config.lb, which also means adding them to the build system, I can't remember at the moment how to do that, but I think if you grep for some config variable name in util/, and you should be able to find it.
The second is to add config variables, similar to how we set the rom_address = "0xsomething". That I can't remember how to do at the moment either, and I'm not sure if you can do it on a mainboard level or not, thinking about it again, you might have to resort to doing it in the northbridge stuff.
Good luck! -Corey
This would broaden the horizons and allow other boards that have TV-out
to
use this code also. The only thing I can think to do is setup some
global
parameters? Suggestions?
-- Thanks, Joseph Smith Set-Top-Linux www.settoplinux.org
-- coreboot mailing list coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
-- coreboot mailing list coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot