Changeset View
Changeset View
Standalone View
Standalone View
udev.cpp
Show First 20 Lines • Show All 172 Lines • ▼ Show 20 Line(s) | 167 | { | |||
---|---|---|---|---|---|
173 | enumerate.addMatch(UdevEnumerate::Match::SysName, "renderD[0-9]*"); | 173 | enumerate.addMatch(UdevEnumerate::Match::SysName, "renderD[0-9]*"); | ||
174 | enumerate.scan(); | 174 | enumerate.scan(); | ||
175 | return enumerate.find([](const UdevDevice::Ptr &device) { | 175 | return enumerate.find([](const UdevDevice::Ptr &device) { | ||
176 | Q_UNUSED(device) | 176 | Q_UNUSED(device) | ||
177 | return true; | 177 | return true; | ||
178 | }); | 178 | }); | ||
179 | } | 179 | } | ||
180 | 180 | | |||
181 | UdevDevice::Ptr Udev::primaryFramebuffer() | ||||
182 | { | ||||
183 | if (!m_udev) { | ||||
184 | return UdevDevice::Ptr(); | ||||
185 | } | ||||
186 | UdevEnumerate enumerate(this); | ||||
187 | enumerate.addMatch(UdevEnumerate::Match::SubSystem, "graphics"); | ||||
188 | enumerate.addMatch(UdevEnumerate::Match::SysName, "fb[0-9]*"); | ||||
189 | enumerate.scan(); | ||||
190 | return enumerate.find([](const UdevDevice::Ptr &device) { | ||||
191 | auto pci = device->getParentWithSubsystemDevType("pci"); | ||||
192 | if (!pci) { | ||||
193 | return false; | ||||
194 | } | ||||
195 | const char *systAttrValue = udev_device_get_sysattr_value(pci, "boot_vga"); | ||||
196 | if (systAttrValue && qstrcmp(systAttrValue, "1") == 0) { | ||||
197 | return true; | ||||
198 | } | ||||
199 | return false; | ||||
200 | }); | ||||
201 | } | ||||
202 | | ||||
181 | UdevDevice::Ptr Udev::deviceFromSyspath(const char *syspath) | 203 | UdevDevice::Ptr Udev::deviceFromSyspath(const char *syspath) | ||
182 | { | 204 | { | ||
183 | return UdevDevice::Ptr(new UdevDevice(udev_device_new_from_syspath(m_udev, syspath))); | 205 | return UdevDevice::Ptr(new UdevDevice(udev_device_new_from_syspath(m_udev, syspath))); | ||
184 | } | 206 | } | ||
185 | 207 | | |||
186 | UdevMonitor *Udev::monitor() | 208 | UdevMonitor *Udev::monitor() | ||
187 | { | 209 | { | ||
188 | UdevMonitor *m = new UdevMonitor(this); | 210 | UdevMonitor *m = new UdevMonitor(this); | ||
▲ Show 20 Lines • Show All 105 Lines • Show Last 20 Lines |