On 11/05/15 13:24, Andreas Tobler wrote:
Hi Nathan, Warner,

first, I had the feeling that I have to provide a fast solution which makes PowerMacs usable again. I am aware that the committed version doesn't win a prize.

Thank you!

Also, I didn't know that we have AIM & FDT, Nathan which one?

PS3 and POWER8 systems are AIM+FDT. Neither of these have I2C busses in their FDTs, so the impact is low for now, but it makes me a little nervous.

On 05.11.15 21:26, Warner Losh wrote:
I'd suggested that this be driven off a global quirk like

u_int fdt_quirks;
#define FDT_QUIRK_8BIT_IIC_ADDR 1
...

In openfirm.h?

I'd really prefer an explicit platform check in ofw_iicbus.c for this by looking at the compatible property of the root node. If this ever comes up on another system, we can modify it, but I think it won't.
-Nathan


if (fdt_quirks & FDT_QUIRK_8BIT_IIC_ADDR)
dinfo->opd_dinfo.addr = paddr;
else
dinfo->opd_dinfo.addr = paddr << 1;

And the platform code, whatever that means, would set it when it "knows"
this is the case.

If I get that right, I'd have to set the fdt_quirk in each I2C parent, like kiic.c and smu.c?

On Thu, Nov 5, 2015 at 12:56 PM, Nathan Whitehorn
<nwhiteh...@freebsd.org <mailto:nwhiteh...@freebsd.org>> wrote:

    I'm not sure this is the best way to do this: we have AIM systems
    that use FDT, for example. Can we make it a quirk in the host-bus
    driver? Or do a run-time check to see if the root node has MacRISC
    in its compatible property?

The 'compatible property' approach would be limited/isolated to one file (ofw_iicbus.c) in comparison to the quirk approach where I'd have to adapt at least (known now) four files.

I can go either way, just my thoughts.

Andreas


_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to