svn commit: r290373 - head/sys/dev/ofw

Andreas Tobler andreast at FreeBSD.org
Thu Nov 5 21:24:43 UTC 2015


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.

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

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?

> 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
> <nwhitehorn at freebsd.org <mailto:nwhitehorn at 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


More information about the svn-src-all mailing list