ç­å¤: ç­å¤: ç­å¤: Disable USB2 in AMD8111 and remove ide hardcode io addr

Li-Ta Lo ollie at lanl.gov
Wed May 5 17:30:01 CEST 2004


On Wed, 2004-05-05 at 16:12, Eric W. Biederman wrote:
> Li-Ta Lo <ollie at lanl.gov> writes:
> 
> > On Wed, 2004-05-05 at 10:51, YhLu wrote:
> > > If I changed config.lb
> > > PCI 1:0.2 on --> PCI 1:0.2 off 
> > > The PCI 1:0.0 and PCI 1:0.1 will be disabled together.
> > > 
> > > According to AMD 8111 data sheet, LPC 0x48, only can be disabled the device
> > > in second bus by device num, and the three USB share one device number.
> > > 
> > > So I guess the code about 0x47 must be there.
> > > 
> > 
> > Ron and I just dicurssed about the enable/disable mechanism for
> > amd8111. We are going to implement a slightly better one soon.
> > 
> > Actually, the enable/disable for devices in amd8111 is multiplexed
> > in amd8111_enable and the device_operation::enable() is directed to
> > amd8111_enable. We are going to demultiplex this and each devices
> > has its own "real" enable method.
> 
> No.  This must be per chip.
> 
> Because you cannot necessarily see these devices before you enable/disable

What do you mean ? Do you mean when I try to enable/disable something on
8111 but the LPC bridge is not there yet ?

> them.  And only one device on the 8111 actually does the enable/disable.
> 

The function amd8111_enable() is used both as .enable and .enable_dev. 
Why are you doing this ? This make it very difficult know under which
contex the function is called and what it is supposed to do when it acts
as different method.

What I want to do is make amd8111_enable() a generic public function and
each device's .enable() calls amd8111_enable() to do the real thing.

Ollie





More information about the coreboot mailing list