On 10/20/2016 07:25 PM, Stuart Henderson wrote:
On 2016-10-20, lilit-aibolit<[email protected]> wrote:
Hi list.
In recent OpeBSD versions usb devices attached to upd driver.
This is why apcupsd doesn't detect APC USB devices.
After installing apcupsd there is statement
how to deal with above situation:
...................................................................................................................
The option with fewest side-effects is to add the following entries to
the table in /sys/dev/usb/usb_quirks.c and build a new kernel:
{ USB_VENDOR_APC, USB_PRODUCT_APC_UPS, ANY, { UQ_BAD_HID }},
{ USB_VENDOR_APC, USB_PRODUCT_APC_UPS5G, ANY, { UQ_BAD_HID }},
Alternatively, if you do not use a USB keyboard/mouse, you could simply
disable the upd and uhid drivers. The following line creates a new kernel
with the relevant changes:
printf 'disable uhid\ndisable upd\nquit\n' | config -e -o /bsd.no-uhid /bsd
...................................................................................................................
Second option isn't suitable because I have usb keyboard
and on very rare occasions it's used to fix something locally.
So regardless of undefined "fewest side-effects" I have to use
first option and build new kernel. I downloaded and extracted
src.tar.gz and sys.tar.gz into /usr/src. Then I modified usb_quirks.c file
and added specified lines into usb_quirks[] table.
See the "Build and install a new kernel" step in release(8).
Then I've read faq5.html and man config but didn't get
a clue how to build new kernel with applied changed in usb_quirks.c file.
In config man page there is statement that "Most people save their
backup kernels as //bsd.1/, //bsd.2/, etc." I'd also like to know how to
save my current kernel
cp(1)
and how to switch between new and old ones in case
of some troubles with new kernel.
at the boot-loader prompt, you can type "boot bsd.1"
Hi and thanks for your answer.
I followed steps in release(8) and executed:
# cd /usr/src/sys/arch/i386/conf/
# config GENERIC.MP
# cd ../compile/GENERIC.MP/
# make clean && make
However the size of my current kernel
is exactly the same as just built one:
# ls -la /bsd
-rw-r--r-- 1 root wheel 10628645 May 5 2015 /bsd
# ls -la ./bsd
-rwxr-xr-x 1 root wsrc 10628645 Oct 21 11:24 ./bsd
Is it expected result and new kernel
includes changes in usb_quirks.c?