qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] sun4m: Add FCode ROM for TCX framebuffer


From: Andreas Färber
Subject: Re: [Qemu-devel] [PATCH] sun4m: Add FCode ROM for TCX framebuffer
Date: Sat, 24 Aug 2013 19:46:20 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130801 Thunderbird/17.0.8

Am 21.08.2013 20:52, schrieb Mark Cave-Ayland:
> On 21/08/13 18:54, Andreas Färber wrote:
> 
>>> Shouldn't this blob come in the same patch as an update to some
>>> git module, so that we keep track of the sources used to build
>>> the blob?
>>
>> I concur. Independent of how to order the .gitmodules update, this patch
>> is missing Makefile support to actually copy the new binary from
>> OpenBIOS build to the location it is being added to as binary here.
> 
> Okay that's something else to add to the v2 :)

On second thoughts, more important than Makefile changes (which would
depend on the OpenBIOS gitmodule update) would be to document textually
in the README wherever the openbios-sparc origin is tracked that this
file comes from OpenBIOS rXXXX, too.

>>>> --- a/hw/sparc/sun4m.c
>>>> +++ b/hw/sparc/sun4m.c
>>>
>>>> +    fcode_filename = qemu_find_file(QEMU_FILE_TYPE_BIOS,
>>>> TCX_ROM_FILE);
>>>> +    if (fcode_filename) {
>>>> +        ret = load_image_targphys(fcode_filename, addr,
>>>> FCODE_MAX_ROM_SIZE);
>>>> +    }
>>>
>>> This looks like the wrong place for this -- surely the tcx device
>>> should load its own fcode blob, not defer to the board code
>>> to do it?
>>>
>>> (For that matter, presumably if this is an SBus device then
>>> the offsets of the ROM, DAC, etc etc are all fixed relative to
>>> the base address of the SBus slot, and the tcx device itself
>>> should be creating a container with all its component parts
>>> at the right offset. But that's not an issue for this patch.)
>>
>> I vaguely recall Mark telling me that SBus is not really
>> qdev'ified/QOM'ified, right?
>>
>> PCI devices have support for ROM files, too, and I think they just set
>> the file name and generic PCI code takes care of the actual loading.
>> Maybe we would want to do the same for SBus? We're not in a rush yet so
>> getting this designed right probably only takes a week or so...
> 
> Currently there is no concept of an SBus in QEMU, since the bus address
> lines are effectively mapped to the processor bus (and so the standard
> sysbus calls work just fine). I know this isn't the complete truth with
> respect to real hardware, though I suspect Blue/Bob could expand further
> on this if required.

Seems I mixed that up with CBus then. ;)

So, TCX is a SysBusDevice. How do I recognize which devices are SBus
devices? Do you have a list of files/types or some recipe to find out?

With QOM it would be easily possible to derive a TYPE_SBUS_DEVICE from
TYPE_SYS_BUS_DEVICE and have TYPE_TCX be derived from it. Then
SBusDeviceClass could supply a rom_file field, which generic SBus code
loads in its realizefn while still being able to use sysbus_*() API.

Cheers,
Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

[Prev in Thread] Current Thread [Next in Thread]