NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: PR/48431 CVS commit: src/sys/arch/alpha/pci
The following reply was made to PR port-alpha/48431; it has been noted by GNATS.
From: "Naruaki.Etomi" <nullnilaki%gmail.com@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: tsutsui%netbsd.org@localhost, macallan%netbsd.org@localhost
Subject: Re: PR/48431 CVS commit: src/sys/arch/alpha/pci
Date: Sun, 19 Jan 2014 04:00:53 +0900
Dear Tsutsui-san.
Thank you for your mail!
> Could you try this diff?
>
> Index: dec_6600.c
> ===================================================================
> RCS file: /cvsroot/src/sys/arch/alpha/alpha/dec_6600.c,v
> retrieving revision 1.34
> diff -u -p -r1.34 dec_6600.c
> --- dec_6600.c 13 Oct 2012 17:58:54 -0000 1.34
> +++ dec_6600.c 13 Jan 2014 16:18:09 -0000
> @@ -201,6 +201,21 @@ dec_6600_device_register(device_t dev, v
> struct bootdev_data *b = bootdev_data;
> device_t parent = device_parent(dev);
>
> + /* set properties for PCI framebuffers */
> + if (parent != NULL && device_is_a(parent, "pci")) {
> + struct pci_attach_args *pa = aux;
> + struct ctb *ctb;
> + prop_dictionary_t dict;
> +
> + ctb = (struct ctb *)(((char *)hwrpb) + hwrpb->rpb_ctb_off);
> + if (PCI_CLASS(pa->pa_class) == PCI_CLASS_DISPLAY &&
> + ctb->ctb_term_type == CTB_GRAPHICS) {
> + dict = device_properties(dev);
> + prop_dictionary_set_bool(dict, "is_console", true);
> + }
> + }
> +
> + /* check boot device */
> if (found)
> return;
>
> ---
I apply this patch.
It work fine and radeonfb attached correctly.
--------------------------------------------------------------------------------------
radeonfb0 at pci1 dev 7 function 0: ATI Technologies Radeon 7500 QW (rev. 0x00)
radeonfb0: Found 48 KB Legacy BIOS
radeonfb0: refclk = 27.000 MHz, refdiv = 8 minpll = 200000, maxpll = 350000
radeonfb0: 64 MB aperture at 0x40000000, 64 KB registers at 0x01080000
radeonfb0: display 0: initial virtual resolution 1920x1200 at 32 bpp
radeonfb0: using 32 MB per display
radeonfb0: port 0: physical 1920x1200 60Hz
radeonfb0: port 1: physical 1920x1200 60Hz
wsdisplay0 at radeonfb0 kbdmux 1: console (fb, vt100 emulation), using wskbd0
wsmux1: connecting to wsdisplay0
--------------------------------------------------------------------------------------
> > Revert previous. PR/48431 claims ALPHA_PHYS_TO_K0SEG() is necessary.
>
> Can you try this patch instead?
>
> ---
> Index: pci/tsp_bus_mem.c
> ===================================================================
> RCS file: /cvsroot/src/sys/arch/alpha/pci/tsp_bus_mem.c,v
> retrieving revision 1.12
> diff -u -p -r1.12 tsp_bus_mem.c
> --- pci/tsp_bus_mem.c 6 Feb 2012 02:14:15 -0000 1.12
> +++ pci/tsp_bus_mem.c 15 Jan 2014 15:18:22 -0000
> @@ -57,7 +57,8 @@ __KERNEL_RCSID(0, "$NetBSD: tsp_bus_mem.
> #define CHIP_MEM_EX_STORE_SIZE(v)
> \
> (sizeof (((struct tsp_config *)(v))->pc_mem_exstorage))
>
> -#define CHIP_MEM_SYS_START(v) (((struct tsp_config *)(v))->pc_iobase)
> +#define CHIP_MEM_SYS_START(v) \
> + (((struct tsp_config *)(v))->pc_iobase | P_PCI_MEM)
>
> /*
> * Tsunami core logic appears on EV6. We require at least EV56
>
> ---
I apply this patch.
It work fine!
--------------------------------------------------------------------------------------
Please see the pictures below
Twitter clients /pkgsrc/net/tw on mlterm-fb framebuffer console
without X server @ Alpha station DS15
https://twitter.com/nullnilaki/status/424370741258096641/photo/1
Twitter clients /pkgsrc/net/mikutter on Xorg with radeonfb and wsfb
driver @ Alpha station DS15
https://twitter.com/nullnilaki/status/424380535062790144/photo/1
Xorg with radeonfb and wsfb driver on NetBSD/alpha @ Alpha station XP1000
https://twitter.com/nullnilaki/status/424405419377717248/photo/1
--------------------------------------------------------------------------------------
>return (alpha_btop(ALPHA_PHYS_TO_K0SEG(CHIP_MEM_SYS_START(v) + addr + off)));
My patch is work but it is very very rare instances.
I guess it should be MMU's magic!
> Can you any info why we need DEPTH_32 and
Why I used to "32bpp display mode" because Xorg with wsfb driver is
wrong on "8bpp display mode" and Xorg's radeon driver is wrong on alpha.
I guess radeonfb_getcmap function and radeonfb_putcmap function hasn't
been implemented yet.
> how does radeonfb_set_backlight() function fail?
This patch is not necessary.
I write a patch for old radeonfb.(NetBSD 6.1.2 included)
Some problems was solved.
--------------------------------------------------------------------------------------
Please read the send-pr.
http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=48492
--------------------------------------------------------------------------------------
> device properties for now, rather than ugly ifdefs.
> IIRC the alpha port still sticks X11R6 (XFree) based server
> for PCI TGA and TURBOchannel SFB/HFB/TFB etc.
>
> Probably it's time to switch alpha port to Xorg server
> (I guess TGA and SFB has fewer users and will also work
> with wsfb driver), but it should be discussed on port-alpha@.
I wholeheartedly agree with you!
Sincerely,
Naruaki Etomi
--
nullnilaki%gmail.com@localhost
Home |
Main Index |
Thread Index |
Old Index