[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [XenPPC] XenPPC IEEE1275 binding?
On Aug 9, 2006, at 5:42 AM, Segher Boessenkool wrote: Ahh the beast awakens :) I remember seeing some mention of it, but I don't think we currently have an IEEE1275 binding describing the contents of the /xen node.As you're currently both the only producer and the only consumer of this node, you don't need a real binding yet. But, the standard properties you have should be correct; and you should make your specific properties as sane as possible as soon as possible. We intend to include these in the OpenPAPR :-P start-info is going away, which means we'll need to add more propertiesto replace it... something like this: xen { name = "xen"; version = "Xen-3.0-unstable";Call this property "xen-version" instead? Isn't that redundant? Should we have a "compatible" that domain can compare against?Yes, but you also should have a "device_type". The is not a device node, I'd rather not add that here, but console should have one, see below. reg = <0 @DOMAIN_ID@ 0 0>;This could certainly be "domain-id" and be one cell.If it's a 32-bit number always -- if not, make it two cells.I used "reg" because I mistakenly thought is was a mandatory property and we needed a "unit-id" which makes no sense as you point out below.If you only ever have one "xen" node, you don't need the "reg". reg, begone! It is 2x2 cells because: /#address-cells: 2 /#size-cells: 2 and they dictate the size of the unit-address.Only #address-cells actually; but "reg" contains a size as well.This, console and store, and all addresses should be expressed in bytes and are domain-physical not MFNs so we should label them correctly. They also need to match /#address-cells and should prolly have a size.domain-name = "@DOMAIN_NAME@"; shared = <@SHARED_INFO@>;privileged; init-domain;I have no idea what these last three props describe; please explain? (And perhaps make the names more specific). They are domain flags, telling the it has priveldge to all of the machine (trusted), and that it is dom0, respectively. console { name = "console"; we should add a device_type here: device_type = "serial"; compatible = "xencons"; Will Xen ever support multiple consoles? I don't think so. FYI, the second zero here denotes a sense code of 0 indicating positive edge triggered interruptinterrupts = <@CONSOLE_EVTCHN@ 0>;Well no. A node's "interrupts" property's semantics depends on the interrupt-controller it points to. You don't point to anything yet. Are those interrupts "virtual" interrupts? In that case, you want to have a "xen-interrupt-controller" node; or you could even just put an "interrupt-controller" in the main "xen" node. Thats a good point, a "/xen/interrupt-controller" is a good idea, but we should make it an empty property like the PAPR /vdevice, and then each "device" can use the encoding we have above. All virtual irqs will have the same sense/value, so you can do without that second cell in the interrupt specifiers completely. These may be the only 2 that ever see a device trww since everything else is "hot plugged" using Xen hcalls. We are not sure if the we'll be dyamically adding hotplug virtual devices to the devtree at runtime, we just ain't there yet. It think I'd like to keep the encoding, just in case. Perhaps this should be a "unit address" and be a reg property, that actually makes sense.frameno = <@CONSOLE_MFN@>;Can't comment; what is this?}; store { name = "store"; interrupts = <@STORE_EVTCHN@ 0>; frameno = <@STORE_MFN@>;this could be a "reg"/"unit address" as well.You need #address-cells and #size-cells in the parent node for that, btw. Do we need them? don't they get "ancestored in"? if not then yes we should add them. -JX _______________________________________________ Xen-ppc-devel mailing list Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ppc-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |