Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Razer Blade Stealth - X windows - No screens [SOLVED]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
datafatmunger
n00b
n00b


Joined: 02 Apr 2016
Posts: 25

PostPosted: Thu Jun 22, 2017 7:12 am    Post subject: Razer Blade Stealth - X windows - No screens [SOLVED] Reply with quote

Trying to get X running on a new machine (Razer Blade Stealth). Seems most people on the internets are using Intel's i915 driver for this...(although I suspect i965 might also work), I've read an tried to match the Intel article: https://wiki.gentoo.org/wiki/Intel

I suspect, I've messed something up in the kernel, as now I have super big generic console font on boot, which was super tiny on this 4k display before I started mucking with the kernel settings/drivers.


Code:

[    45.921] (II) LoadModule: "fbdev"
[    45.922] (WW) Warning, couldn't open module fbdev
[    45.922] (II) UnloadModule: "fbdev"
[    45.922] (II) Unloading fbdev
[    45.922] (EE) Failed to load module "fbdev" (module does not exist, 0)
[    45.922] (II) LoadModule: "vesa"
[    45.922] (WW) Warning, couldn't open module vesa
[    45.922] (II) UnloadModule: "vesa"
[    45.922] (II) Unloading vesa
[    45.922] (EE) Failed to load module "vesa" (module does not exist, 0)


Code:

[    47.964] intel: waited 2020 ms for i915.ko driver to load
[    47.965] (EE) open /dev/dri/card0: No such file or directory
[    47.965] (WW) Falling back to old probe method for modesetting
[    47.965] (EE) open /dev/dri/card0: No such file or directory
[    47.965] (EE) Screen 0 deleted because of no matching config section.
[    47.965] (II) UnloadModule: "modesetting"
[    47.965] (EE) Device(s) detected, but none match those in the config file.
[    47.965] (EE)
Fatal server error:
[    47.965] (EE) no screens found(EE)
[    47.965] (EE)
Please consult the The X.Org Foundation support
        at http://wiki.x.org
for help.
[    47.965] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[    47.965] (EE)
[    47.966] (EE) Server terminated with error (1). Closing log file.


.config:

Code:

€ grep FRAME .config
CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y
CONFIG_SCHED_OMIT_FRAME_POINTER=y
CONFIG_FRAME_VECTOR=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
CONFIG_FRAME_WARN=1024
CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y


Code:

€ grep AGP .config
CONFIG_AGP=y
# CONFIG_AGP_AMD64 is not set
CONFIG_AGP_INTEL=y
# CONFIG_AGP_SIS is not set
# CONFIG_AGP_VIA is not set


Code:

€ grep KMS .config
CONFIG_DRM_KMS_HELPER=y
CONFIG_DRM_KMS_FB_HELPER=y


Code:

€ grep DEVTMPFS .config
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y


Code:

€ grep FB .config | grep -v '^#'
CONFIG_IFB=m
CONFIG_DRM_KMS_FB_HELPER=y
CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_FB=y
CONFIG_FB_CMDLINE=y
CONFIG_FB_NOTIFY=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
CONFIG_FB_SYS_FILLRECT=y
CONFIG_FB_SYS_COPYAREA=y
CONFIG_FB_SYS_IMAGEBLIT=y
CONFIG_FB_SYS_FOPS=y
CONFIG_FB_DEFERRED_IO=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y


Code:

€ grep DRM .config | grep -v '^#'
CONFIG_DRM=y
CONFIG_DRM_MIPI_DSI=y
CONFIG_DRM_KMS_HELPER=y
CONFIG_DRM_KMS_FB_HELPER=y
CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_SIL164=m
CONFIG_DRM_I915=y
CONFIG_DRM_I915_USERPTR=y
CONFIG_DRM_PANEL=y
CONFIG_DRM_BRIDGE=y


Code:

€ grep DEVTMPFS .config
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y


Code:

€ groups
wheel audio video usb users


Code:

€ cat /etc/portage/make.conf
VIDEO_CARDS="intel i915"
INPUT_DEVICES="evdev synaptics"
USE="acl bindist ssl X alsa -pulseaudio"


Last edited by datafatmunger on Fri Jun 23, 2017 6:30 am; edited 1 time in total
Back to top
View user's profile Send private message
fedeliallalinea
Bodhisattva
Bodhisattva


Joined: 08 Mar 2003
Posts: 21345
Location: here

PostPosted: Thu Jun 22, 2017 7:49 am    Post subject: Reply with quote

Probably the correct vide card is i965 not i915
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
datafatmunger
n00b
n00b


Joined: 02 Apr 2016
Posts: 25

PostPosted: Thu Jun 22, 2017 8:45 am    Post subject: Reply with quote

fedeliallalinea wrote:
Probably the correct vide card is i965 not i915


Thanks for the reply! I have changed:
Code:

VIDEO_CARDS="intel i965"


...and rebuilt @world. Strangely...Xorg still reports it's using i915.ko.

Stupid n00b question. When I rebuild the kernel
Code:
make && make modules_install && make install
, do I also need to run genkernel for initramfs again?

Also, since I have "Include in-kernel firmware blobs in kernel binary" option selected in the kernel, do I need to rebuild the kernel after building @world (I did do this in this case, just not sure if necessary).

Code:

[    87.526] intel: waited 2020 ms for i915.ko driver to load
[    87.527] (EE) open /dev/dri/card0: No such file or directory
[    87.527] (WW) Falling back to old probe method for modesetting
[    87.527] (EE) open /dev/dri/card0: No such file or directory
[    87.527] (EE) Screen 0 deleted because of no matching config section.
[    87.527] (II) UnloadModule: "modesetting"
[    87.527] (EE) Device(s) detected, but none match those in the config file.
[    87.527] (EE)
Fatal server error:
[    87.527] (EE) no screens found(EE)
[    87.527] (EE)


Also... /lib64/firmware only contains a directory for i915 and nothing for i965.

i915 contains:

Code:

€ ls -l /lib64/firmware/i915/
total 1200
-rw-r--r-- 1 root root   8380 Jun 21 17:29 bxt_dmc_ver1_07.bin
lrwxrwxrwx 1 root root     19 Jun 21 17:29 bxt_dmc_ver1.bin -> bxt_dmc_ver1_07.bin
-rw-r--r-- 1 root root 140928 Jun 21 17:29 bxt_guc_ver8_7.bin
-rw-r--r-- 1 root root 154432 Jun 21 17:29 bxt_huc_ver01_07_1398.bin
-rw-r--r-- 1 root root   8616 Jun 21 17:29 kbl_dmc_ver1_01.bin
lrwxrwxrwx 1 root root     19 Jun 21 17:29 kbl_dmc_ver1.bin -> kbl_dmc_ver1_01.bin
-rw-r--r-- 1 root root 142656 Jun 21 17:29 kbl_guc_ver9_14.bin
-rw-r--r-- 1 root root 218688 Jun 21 17:29 kbl_huc_ver02_00_1810.bin
-rw-r--r-- 1 root root   8824 Jun 21 17:29 skl_dmc_ver1_23.bin
-rw-r--r-- 1 root root   8928 Jun 21 17:29 skl_dmc_ver1_26.bin
lrwxrwxrwx 1 root root     19 Jun 21 17:29 skl_dmc_ver1.bin -> skl_dmc_ver1_26.bin
-rw-r--r-- 1 root root 109636 Jun 21 17:29 skl_guc_ver1.bin
-rw-r--r-- 1 root root 128320 Jun 21 17:29 skl_guc_ver4.bin
-rw-r--r-- 1 root root 129024 Jun 21 17:29 skl_guc_ver6_1.bin
lrwxrwxrwx 1 root root     18 Jun 21 17:29 skl_guc_ver6.bin -> skl_guc_ver6_1.bin
-rw-r--r-- 1 root root 140992 Jun 21 17:29 skl_huc_ver01_07_1398.bin


And re: the Intel article...

Code:

€ grep -B 1 'MODULE_FIRMWARE.*SKL' drivers/gpu/drm/i915/intel_guc_loader.c drivers/gpu/drm/i915/intel_csr.c
drivers/gpu/drm/i915/intel_guc_loader.c-#define I915_SKL_GUC_UCODE GUC_FW_PATH(skl, SKL_FW_MAJOR, SKL_FW_MINOR)
drivers/gpu/drm/i915/intel_guc_loader.c:MODULE_FIRMWARE(I915_SKL_GUC_UCODE);
--
drivers/gpu/drm/i915/intel_csr.c-#define I915_CSR_SKL "i915/skl_dmc_ver1_26.bin"
drivers/gpu/drm/i915/intel_csr.c:MODULE_FIRMWARE(I915_CSR_SKL);


Seems I'm missing: drivers/gpu/drm/i915/intel_guc_loader.c-#define I915_SKL_GUC_UCODE "i915/skl_guc_ver6_1.bin" in /usr/src/linux.
Back to top
View user's profile Send private message
fedeliallalinea
Bodhisattva
Bodhisattva


Joined: 08 Mar 2003
Posts: 21345
Location: here

PostPosted: Thu Jun 22, 2017 10:00 am    Post subject: Reply with quote

Kernel module is named always i915 but for xorg-driver is correct i965 (see here).
You can post output of commands:
Code:
$ zgrep FIRMWARE /proc/config.gz
$ dmesg | grep i915

_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
datafatmunger
n00b
n00b


Joined: 02 Apr 2016
Posts: 25

PostPosted: Thu Jun 22, 2017 10:03 am    Post subject: Reply with quote

fedeliallalinea wrote:
Kernel module is named always i915 but for xorg-driver is correct i965 (see here).
You can post output of commands:
Code:
$ zgrep FIRMWARE /proc/config.gz
$ dmesg | grep i915


Code:
€ zgrep FIRMWARE /proc/config.gz
CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_FIRMWARE_IN_KERNEL is not set
CONFIG_EXTRA_FIRMWARE=""
CONFIG_HOSTAP_FIRMWARE=y
CONFIG_HOSTAP_FIRMWARE_NVRAM=y
CONFIG_RT2X00_LIB_FIRMWARE=y
# CONFIG_CYPRESS_FIRMWARE is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
# CONFIG_FIRMWARE_EDID is not set
CONFIG_FIRMWARE_MEMMAP=y
# CONFIG_GOOGLE_FIRMWARE is not set
# CONFIG_TEST_FIRMWARE is not set


Code:
€ dmesg | grep i915
[   27.599086] snd_hda_intel 0000:00:1f.3: failed to add i915 component master (-19)
[   27.627105] snd_hda_codec_hdmi hdaudioC0D2: No i915 binding for Intel HDMI/DP codec
[   27.627918] snd_hda_codec_hdmi hdaudioC0D2: No i915 binding for Intel HDMI/DP codec


I noticed the dmesg errors before...but assume they are related to sound, which I haven't tackled...yet. :P
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 42587
Location: 56N 3W

PostPosted: Thu Jun 22, 2017 10:37 am    Post subject: Reply with quote

datafatmunger,

Your kernel is missing DRM support,
Code:
[    47.965] (EE) open /dev/dri/card0: No such file or directory


Make friends with wgetpaste and put your entire /var/log/Xorg.0.log onto a pastebin.
Also your, kernel .config (all of it).

Tell us the links.
Post the output of lspci too please.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
datafatmunger
n00b
n00b


Joined: 02 Apr 2016
Posts: 25

PostPosted: Thu Jun 22, 2017 10:51 am    Post subject: Reply with quote

NeddySeagoon wrote:
datafatmunger,

Your kernel is missing DRM support,
Code:
[    47.965] (EE) open /dev/dri/card0: No such file or directory


Make friends with wgetpaste and put your entire /var/log/Xorg.0.log onto a pastebin.
Also your, kernel .config (all of it).

Tell us the links.
Post the output of lspci too please.


wgetpaste Nice one! Didn't know it. Thanks!

Xorg.0.log
https://paste.pound-python.org/show/3tIi62qWIS0mm195EXlx/

.config
https://paste.pound-python.org/show/pBcRqCxkkvn2f08dudal/

Code:
sudo lspci
00:00.0 Host bridge: Intel Corporation Device 5904 (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Device 5916 (rev 02)
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)
00:15.1 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #1 (rev 21)
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
00:1c.0 PCI bridge: Intel Corporation Device 9d12 (rev f1)
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)
00:1d.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #9 (rev f1)
00:1e.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO UART Controller #0 (rev 21)
00:1f.0 ISA bridge: Intel Corporation Device 9d58 (rev 21)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
00:1f.3 Audio device: Intel Corporation Device 9d71 (rev 21)
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
01:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)
3b:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 42587
Location: 56N 3W

PostPosted: Thu Jun 22, 2017 11:04 am    Post subject: Reply with quote

datafatmunger,

Code:
[    42.065] (==) Matched intel as autoconfigured driver 0
[    42.065] (==) Matched modesetting as autoconfigured driver 1
[    42.065] (==) Matched fbdev as autoconfigured driver 2
[    42.065] (==) Matched vesa as autoconfigured driver 3

Good, you are letting Xorg do its own thing with drivers. Its determined that the intel driver is as good as it gets for you.
It loads. Thats the user space part.
Code:
[    42.065] (II) LoadModule: "intel"
[    42.065] (II) Loading /usr/lib64/xorg/modules/drivers/intel_drv.so

So far so good.

It needs
Code:
[    44.114] intel: waited 2020 ms for i915.ko driver to load
[    44.115] (EE) open /dev/dri/card0: No such file or directory

So there is a bit missing in your kernel.

Code:
CONFIG_DRM=y
...
CONFIG_DRM_I915=y
that looks good too.

Maybe you are not running the kernel you think you are?
Code:
[    42.044] Current Operating System: Linux localhost 4.9.16-gentoo #2 SMP Tue Jun 20 23:54:18 CEST 2017 x86_64

Thats the kernel that booted to generate the Xorg log you posted. The Tue Jun 20 23:54:18 CEST 2017, is the build time of the running kernel.
If you have made a kernel since then, its not being used. Maybe you forgot to mount /boot.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
datafatmunger
n00b
n00b


Joined: 02 Apr 2016
Posts: 25

PostPosted: Thu Jun 22, 2017 11:31 am    Post subject: Reply with quote

NeddySeagoon wrote:
datafatmunger,

Code:
[    42.065] (==) Matched intel as autoconfigured driver 0
[    42.065] (==) Matched modesetting as autoconfigured driver 1
[    42.065] (==) Matched fbdev as autoconfigured driver 2
[    42.065] (==) Matched vesa as autoconfigured driver 3

Good, you are letting Xorg do its own thing with drivers. Its determined that the intel driver is as good as it gets for you.
It loads. Thats the user space part.
Code:
[    42.065] (II) LoadModule: "intel"
[    42.065] (II) Loading /usr/lib64/xorg/modules/drivers/intel_drv.so

So far so good.

It needs
Code:
[    44.114] intel: waited 2020 ms for i915.ko driver to load
[    44.115] (EE) open /dev/dri/card0: No such file or directory

So there is a bit missing in your kernel.

Code:
CONFIG_DRM=y
...
CONFIG_DRM_I915=y
that looks good too.

Maybe you are not running the kernel you think you are?
Code:
[    42.044] Current Operating System: Linux localhost 4.9.16-gentoo #2 SMP Tue Jun 20 23:54:18 CEST 2017 x86_64

Thats the kernel that booted to generate the Xorg log you posted. The Tue Jun 20 23:54:18 CEST 2017, is the build time of the running kernel.
If you have made a kernel since then, its not being used. Maybe you forgot to mount /boot.


Omg...you are right....embarrassing. :oops:

So, if you don't mind a couple of n00b questions:

* It should have been obvious /boot was not mounted, as I didn't see /grub in there. So, I cleaned, rm /boot/*...but then when I mounted /boot, still empty. Huh?
- So I cd /usr/src/linux && make install
- genkernel
- grub install
- grub mkconfig

* So I have to mount /boot when I install the kernel, i guess?

* /boot is not mount automagically.

* Asked above, but not answered, do I HAVE to run genkernel if I make install a new kernel?

Thanks again! For your help! Now on to my other devices. :P
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 6968

PostPosted: Thu Jun 22, 2017 12:08 pm    Post subject: Reply with quote

datafatmunger wrote:
Omg...you are right....embarrassing. :oops:

Don't worry, it's so common no need to get embarrassed by that

datafatmunger wrote:
* /boot is not mount automagically.

it's normal for all users that have follow nicely the install, because you were told to set that in fstab
Code:
LABEL=belegBOOT      /boot      ext2      noauto,noatime   1 2

that's the noauto effect: noauto -> don't auto mount that partition, it's a security, if /boot is not mount when you have no use of it, well, you cannot mess it right :)

my lack of knowledge on genkernel prevent me from answering other questions
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 42587
Location: 56N 3W

PostPosted: Thu Jun 22, 2017 12:13 pm    Post subject: Reply with quote

datafatmunger,

The Gentoo way is to have the noauto option in /etc/fstab for /boot, so its not mounted for you.

I'm not sure what you are using genkernel for. Left to its own devices it configures and builds your kernel, installs the modules and installs the kernel binary into /boot.
I'm not a genkernel user and I don't use grub2 but after getting all the bits of the kernel in the right places grub mkconfig will write a new grub.cfg file.

When you reboot after you install a kernel update, run
Code:
uname -a
and check the kernel build timestamp.
Everyone messes up a kernel from time to time.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
datafatmunger
n00b
n00b


Joined: 02 Apr 2016
Posts: 25

PostPosted: Thu Jun 22, 2017 12:16 pm    Post subject: Reply with quote

NeddySeagoon wrote:
datafatmunger,

The Gentoo way is to have the noauto option in /etc/fstab for /boot, so its not mounted for you.

I'm not sure what you are using genkernel for. Left to its own devices it configures and builds your kernel, installs the modules and installs the kernel binary into /boot.
I'm not a genkernel user and I don't use grub2 but after genning all the bits of the kernel in the right places grub mkconfig will write a new grub.cfg file.

When you reboot after you install a kernel update, run
Code:
uname -a
and check the kernel build timestamp.
Everyone messes up a kernel from time to time.


I'm using genkernel for initramfs, for full disk encryption....lvm on luks, meaning i have one giant luks partition w/ lvm logical partitions once it's decrypted. Works great!

Code:
genkernel --luks --lvm --install initramfs


Just not sure if I need to rebuild that everytime. There seems to be a bunch of firmware in there, and cpio takes a lifetime.
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 42587
Location: 56N 3W

PostPosted: Thu Jun 22, 2017 12:29 pm    Post subject: Reply with quote

datafatmunger,
datafatmunger wrote:


I'm using genkernel for initramfs, for full disk encryption....lvm on luks, meaning i have one giant luks partition w/ lvm logical partitions once it's decrypted. Works great!

Code:
genkernel --luks --lvm --install initramfs


Just not sure if I need to rebuild that everytime. There seems to be a bunch of firmware in there, and cpio takes a lifetime.


Maybe. The initrd is a self contained root filesystem. It can be like firmware. I have root in LVM on raid5, so I have an initrd. It was made in April 2009.
However, I do not have any kernel modules in my initrd, so its kernel agnostic. Its hand rolled, no autoblackmagic.

You only need to update the initrd if it contains kernel modules. As you made it with genkernel, it will contain all the kernel modules you have made.
Look in
Code:
/lib/modules/'uname -r'/

I take care with my kernels that everything the kernel needs to boot is built in, so the initrd is user space programs only.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum