--- On Thu, 12/30/10, Darmawan Salihun <darmawan_sali...@yahoo.com> wrote:
> From: Darmawan Salihun <darmawan_sali...@yahoo.com> > Subject: Re: PCI IDE Controller Base Address Register setting > To: "John Baldwin" <j...@freebsd.org> > Cc: freebsd-hackers@freebsd.org > Date: Thursday, December 30, 2010, 3:28 PM > --- On Tue, 12/28/10, John Baldwin > <j...@freebsd.org> > wrote: > > > From: John Baldwin <j...@freebsd.org> > > Subject: Re: PCI IDE Controller Base Address Register > setting > > To: "Darmawan Salihun" <darmawan_sali...@yahoo.com> > > Cc: freebsd-hackers@freebsd.org > > Date: Tuesday, December 28, 2010, 2:22 PM > > On Tuesday, December 28, 2010 2:10:59 > > pm Darmawan Salihun wrote: > > > Hi, > > > > > > --- On Tue, 12/28/10, John Baldwin <j...@freebsd.org> > > wrote: > > > > > > > From: John Baldwin <j...@freebsd.org> > > > > Subject: Re: PCI IDE Controller Base > Address > > Register setting > > > > To: "Darmawan Salihun" <darmawan_sali...@yahoo.com> > > > > Cc: freebsd-hackers@freebsd.org > > > > Date: Tuesday, December 28, 2010, 1:52 PM > > > > On Tuesday, December 28, 2010 1:38:05 > > > > pm Darmawan Salihun wrote: > > > > > Hi, > > > > > > > > > > --- On Tue, 12/28/10, John Baldwin > <j...@freebsd.org> > > > > wrote: > > > > > > > > > > > From: John Baldwin <j...@freebsd.org> > > > > > > Subject: Re: PCI IDE Controller > Base > > Address > > > > Register setting > > > > > > To: freebsd-hackers@freebsd.org > > > > > > Cc: "Darmawan Salihun" <darmawan_sali...@yahoo.com> > > > > > > Date: Tuesday, December 28, 2010, > 10:20 > > AM > > > > > > On Monday, December 27, 2010 > 6:07:35 > > > > > > am Darmawan Salihun wrote: > > > > > > > Hi, > > > > > > > > > > > > > > I'm trying to install FreeBSD > 8.0 > > on AMD > > > > Geode LX800 > > > > > > (CS5536 "southbridge"). > > > > > > However, it cannot detect the IDE > > controller (in > > > > the > > > > > > CS5536) correctly. It > > > > > > says something similar to this: > > > > > > > "IDE controller not present" > > > > > > > > > > > > Hmm, I can't find a message like > that > > > > anywhere. Can > > > > > > you get the exact message > > > > > > you are seeing? > > > > > > > > > > > > > > > > It says: > > > > > > > > > > "No disks found! Please verify that > your > > disk > > > > controller is being properly > > > > > probed at boot time." > > > > > > > > Oh, so this is a message from the > > installer. Can you > > > > capture a verbose dmesg > > > > via a serial console perhaps? > > > > > > I'm not sure if I can do this because I've tried > a > > couple of times > > > but nothing comes out of the serial console. > Perhaps a > > wrong baud rate setting? > > > I set it to 96bps and 8-N-1 back then. Is that > > correct? > > > > Yes, that should be correct. You have to turn the > > console on however (it is > > not enabled by default). The simplest way to do > this > > is probably to hit the > > key option to break into the loader prompt when you > see the > > boot menu (I think > > it is option '6'). Then enter 'boot -D' at the 'OK' > > prompt. This should boot > > with both the video and serial consoles enabled with > the > > video console as the > > primary console. For a verbose boot, use 'boot -Dv' > > > > Thanks, I tested this option and it worked. > I could see the debugging messages. > > FreeBSD cannot detect the disk in all of the IDE > interfaces. > (The AMDCS5536 only implemented the primary channel) > > Anyway, I manage to change the mapping in BAR4 of the IDE > controller. > However, I'm confused as to how to "force" FreeBSD to > recognize the > IDE controller to work only in compatibility mode. > Because, I'm not sure if the physical IDE controller chip > supports > Native-PCI mode correctly at all. > If I set BAR4 to "disabled"(i.e. not decoding any I/O > addresses at all), > would FreeBSD use compatibility mode? or would it consider > the > IDE controller not present? > > Here's some notes about the IDE controller PCI > configuration registers: > 1. The Programming Interface register contains 80h (which > means _only_ > compatibility mode supported). I have yet to be able to > write new values > into this register. That's the state of the register right > now. > I noticed in your previous reply that for FreeBSD to be > forced to use > compatibility mode, the programming interface register bits > in the PCI configuration register must be set accordingly > (I suppose the bits in the lower nibble). > > 2. BAR0-BAR3 cannot be changed and contains 00h. > I have yet to experiment with BAR5.The default value is > 00h > Silly me that I didn't know about the SFF-8038i standard (PCI IDE Bus mastering). So, I found out that it seems the allocation of I/O ports for the IDE controller is just fine. However, the primary IDE channel is shared between an IDE interface and a CF card. Moreover, Linux detects DMA bug, because all drives connected to the interface would be in PIO mode :-/ If all drives on the primary channel are "forced" to PIO mode, then shouldn't the "IDE PCI bus master register" (offset 20h per SFF-8038i) along with the command register (offset 4h), are set to indicate the controller doesn't support bus mastering? TIA, Darmawan _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"