
Hi,
I plan to send a patch to remove the DEV_FLAGS_SYSTEM and DEV_EXT_VIDEO. They look useless to me. For example,
$ grep -nr DEV_FLAGS_SYSTEM * arch/blackfin/cpu/jtag-console.c:186: dev.flags = DEV_FLAGS_OUTPUT | DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM; board/bf527-ezkit/video.c:442: videodev.flags = DEV_FLAGS_SYSTEM; /* No Output */ board/kosagi/novena/novena.c:80: .flags = DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM, board/cm-bf548/video.c:336: videodev.flags = DEV_FLAGS_SYSTEM; /* No Output */ board/mpl/common/kbd.c:206: kbddev.flags = DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM; board/mpl/pati/pati.c:569: pci_con_dev.flags = DEV_FLAGS_OUTPUT | DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM; board/bf548-ezkit/video.c:332: videodev.flags = DEV_FLAGS_SYSTEM; /* No Output */ board/bf533-stamp/video.c:168: videodev.flags = DEV_FLAGS_SYSTEM; common/cmd_console.c:33: (dev->flags & DEV_FLAGS_SYSTEM) ? 'S' : '.', common/usb_kbd.c:505: usb_kbd_dev.flags = DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM; common/stdio.c:91: dev.flags = DEV_FLAGS_OUTPUT | DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM; common/stdio.c:102: dev.flags = DEV_FLAGS_OUTPUT | DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM; drivers/input/cros_ec_keyb.c:261: dev.flags = DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM; drivers/input/tegra-kbc.c:361: dev.flags = DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM; drivers/input/keyboard.c:277: kbddev.flags = DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM; drivers/video/cfb_console.c:2296: console_dev.flags = DEV_FLAGS_OUTPUT | DEV_FLAGS_SYSTEM; drivers/net/netconsole.c:325: dev.flags = DEV_FLAGS_OUTPUT | DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM; include/stdio_dev.h:19:#define DEV_FLAGS_SYSTEM 0x80000000 /* Device is a system device */
Except for this one below which tests the flag and prints an 'S', common/cmd_console.c:33: (dev->flags & DEV_FLAGS_SYSTEM) ? 'S' : '.',
I don't see any actual meaning of this flag. I wonder if someone on the mailing list knows the history.
Also I noticed that several blackfin boards' video driver only set this flag without setting DEV_FLAGS_OUTPUT.
board/bf527-ezkit/video.c:442: videodev.flags = DEV_FLAGS_SYSTEM; /* No Output */ board/cm-bf548/video.c:336: videodev.flags = DEV_FLAGS_SYSTEM; /* No Output */ board/bf548-ezkit/video.c:332: videodev.flags = DEV_FLAGS_SYSTEM; /* No Output */ board/bf533-stamp/video.c:168: videodev.flags = DEV_FLAGS_SYSTEM;
I wonder these video drivers are not used for system output purpose?
Regards, Bin