Alec Brown
9907d9c272
bus/usb/ehci: Define GRUB_EHCI_TOGGLE as grub_uint32_t
...
The Coverity indicates that GRUB_EHCI_TOGGLE is an int that contains
a negative value and we are using it for the variable token which is
grub_uint32_t. To remedy this we can cast the definition to grub_uint32_t.
Fixes: CID 473851
Signed-off-by: Alec Brown <alec.r.brown@oracle.com >
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com >
2025-02-13 15:45:58 +01:00
Elyes Haouas
b3897585dd
bus: Remove trailing whitespaces
...
Signed-off-by: Elyes Haouas <ehaouas@noos.fr >
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com >
2022-03-14 15:43:58 +01:00
Vladimir Serbinenko
284afab081
ehci: Fix compilation on i386
2017-07-09 21:31:19 +02:00
phcoder
edb37fb30b
ehci: Fix compilation for amd64
2017-07-09 20:58:31 +02:00
Vladimir Serbinenko
058df7b5a9
ehci: Split core code from PCI part.
...
On ARM often EHCI is present without PCI and just declared in device
tree. So splitcore from PCI part.
2017-05-08 22:10:26 +02:00
Vladimir Serbinenko
0f076d75d0
ehci: Fix memory coherence
...
This is a no-op on x86 but necessarry on ARM and may be necessarry on MIPS.
2016-02-27 13:40:52 +01:00
Vladimir Serbinenko
054d1325e9
Improve EHCI logging
...
Add dprintf's on common error paths and remove some entries which are too
noisy.
2016-02-22 20:07:10 +01:00
Colin Watson
95440b41d3
ahci, ehci: Fix typos
2016-01-16 20:37:15 +00:00
Andrey Borzenkov
954fe77163
cleanup: grub_cpu_to_XXX_compile_time for constants
...
This tries to catch all cases where grub_cpu_to_XXX was used for constant
expressions (including sizeof).
2014-09-22 20:47:10 +04:00
Aleš Nesrsta
e3ef0d30cf
* grub-core/bus/usb/ehci.c: Fix handling of newborn transfers.
...
Avoid confusing them with already completed transfers.
2013-12-18 18:59:49 +01:00
Vladimir Serbinenko
1e4b358720
Add PCI command activation to all PCI drivers as required for coreboot
...
and maybe some other firmwares.
2013-11-26 14:21:11 +01:00
Vladimir Serbinenko
3f63b4d89f
* grub-core/bus/usb/ehci.c (grub_ehci_restore_hw): Return right enum
...
type.
(grub_ehci_fini_hw): Likewise.
* grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Likewise.
2013-11-07 00:45:15 +01:00
Vladimir Serbinenko
dac6ce73be
* include/grub/usb.h (grub_usb_controller_dev): Make portstatus
...
return grub_usb_err_t for cosistency. All users updated.
2013-11-07 00:35:56 +01:00
starous@volny.cz
7c680e1f17
USB EHCI: SMI disabled in all cases
2013-09-23 20:30:52 +02:00
starous@volny.cz
306950e137
USB EHCI QH handling patch
2013-09-21 15:39:51 +02:00
Vladimir 'phcoder' Serbinenko
e2f27a8c53
Enforce disabling of firmware disk drivers when native drivers kick in.
2013-04-29 12:16:46 +02:00
Vladimir 'phcoder' Serbinenko
d70dbab77a
* grub-core/bus/usb/ehci.c (grub_ehci_fini_hw): Ignore errors, not
...
much we can do about it anyway.
2013-04-12 20:51:11 +02:00
Aleš Nesrsta
51a4c3e3b0
Fix handling of split transfers.
2013-04-12 20:42:46 +02:00
Vladimir 'phcoder' Serbinenko
8fe05def12
Slight improve in USB-related boot-time checkpoints.
2013-03-20 17:21:13 +01:00
Vladimir 'phcoder' Serbinenko
e744219bb6
Implement boot time analysis framework.
2013-03-19 20:25:09 +01:00
Vladimir 'phcoder' Serbinenko
5dd6f58789
Better estimate the maximum USB transfer size.
2013-03-19 08:17:51 +01:00
Colin Watson
5fdbaed168
Remove nested functions from USB iterators.
...
* include/grub/usb.h (grub_usb_iterate_hook_t): New type.
(grub_usb_controller_iterate_hook_t): Likewise.
(grub_usb_iterate): Add hook_data argument.
(grub_usb_controller_iterate): Likewise.
(struct grub_usb_controller_dev.iterate): Likewise.
Update all implementations and callers.
2013-01-21 21:02:24 +00:00
Colin Watson
ca3a74469a
Remove nested functions from PCI iterators.
...
* grub-core/bus/pci.c (grub_pci_iterate): Add hook_data argument,
passed to hook. Update all callers to pass appropriate hook data.
* grub-core/bus/emu/pci.c (grub_pci_iterate): Likewise.
* include/grub/pci.h (grub_pci_iteratefunc_t): Add data argument.
Remove NESTED_FUNC_ATTR from here and from all users.
(grub_pci_iterate): Update prototype.
* grub-core/bus/cs5536.c (grub_cs5536_find: hook): Make static
instead of nested. Rename to ...
(grub_cs5536_find_iter): ... this.
* grub-core/kern/efi/mm.c (stop_broadcom: find_card): Likewise.
* grub-core/kern/mips/loongson/init.c (init_pci: set_card):
Likewise.
* grub-core/kern/vga_init.c (grub_qemu_init_cirrus: find_card):
Likewise.
* grub-core/video/bochs.c (grub_video_bochs_setup: find_card):
Likewise.
* grub-core/video/cirrus.c (grub_video_cirrus_setup: find_card):
Likewise.
* grub-core/video/efi_uga.c (find_framebuf: find_card): Likewise.
* grub-core/video/radeon_fuloong2e.c
(grub_video_radeon_fuloong2e_setup: find_card): Likewise.
* grub-core/video/sis315pro.c (grub_video_sis315pro_setup:
find_card): Likewise.
* grub-core/video/sm712.c (grub_video_sm712_setup: find_card):
Likewise.
2013-01-13 01:10:41 +00:00
Colin Watson
33a68ac643
* grub-core/bus/usb/ehci.c (grub_ehci_pci_iter): Remove incorrect
...
__attribute__ ((unused)).
* grub-core/video/bochs.c (find_card): Likewise.
* grub-core/video/cirrus.c (find_card): Likewise.
* grub-core/video/radeon_fuloong2e.c (find_card): Likewise.
* grub-core/video/sis315pro.c (find_card): Likewise.
* grub-core/video/sm712.c (find_card): Likewise.
2012-12-30 09:57:58 +00:00
starous
39b27f1eaf
EHCI and OHCI PCI bus master
2012-07-22 21:09:30 +02:00
Christer Weinigel
bda36bfa77
Fix EHCI low-speed.
...
* grub-core/bus/usb/ehci.c (GRUB_EHCI_MULT_ONE): Fix the value.
(GRUB_EHCI_MULT_TWO): Likewise.
(GRUB_EHCI_MULT_THREE): Likewise.
(GRUB_EHCI_CMASK_MASK): New enum value.
(GRUB_EHCI_SMASK_MASK): Likewise.
(GRUB_EHCI_CMASK_OFF): Likewise.
(GRUB_EHCI_SMASK_OFF): Likewise.
(grub_ehci_pci_iter): Enable periodic schedule.
(grub_ehci_parse_notrun): Likewise.
(grub_ehci_restore_hw): Likewise.
(grub_ehci_setup_qh): Set flags for low speed transfers.
(grub_ehci_find_qh): Use periodic list for low speed.
(grub_ehci_setup_transfer): Check periodic queue as well.
(grub_ehci_check_transfer): Likewise.
(grub_ehci_cancel_transfer): Cancel periodic transfer.
2012-05-31 14:02:46 +02:00
Vladimir 'phcoder' Serbinenko
a9cdb3cf18
* grub-core/bus/usb/ehci.c (grub_ehci_ehcc_read32): Restructure to
...
conserve alignment invariants.
(grub_ehci_ehcc_read16): Likewise.
(grub_ehci_oper_read32): Likewise.
(grub_ehci_oper_write32): Likewise.
(grub_ehci_pci_iter) [!GRUB_HAVE_UNALIGNED_ACCESS]: Check alignment.
Conserve alignment invariants.
2012-02-09 23:18:53 +01:00
Vladimir 'phcoder' Serbinenko
d3e3fab52a
Fix ehci on amd64.
...
* grub-core/bus/usb/usbhub.c (grub_usb_hub_add_dev): Use %p to print
pointers.
* grub-core/bus/usb/ehci.c (grub_ehci_pci_iter): Likewise.
(grub_ehci_setup_qh): Likewise.
(grub_ehci_find_qh): Likewise.
(grub_ehci_transaction): Likewise.
(grub_ehci_setup_transfer): Likewise.
(grub_ehci_check_transfer): Likewise.
(grub_ehci_portstatus): Likewise.
(grub_ehci_detect_dev): Likewise.
(grub_ehci_transfer_controller_data): New field td_last_phys.
(grub_ehci_setup_transfer): Fill td_last_phys.
(grub_ehci_check_transfer): Use td_last_phys.
2012-02-01 16:13:17 +01:00
Vladimir 'phcoder' Serbinenko
08491b6a5a
Fix type errors. Don't stop after first EHCI controller is found.
2012-02-01 14:08:58 +01:00
Vladimir 'phcoder' Serbinenko
9305dd1a82
Some CS5536 code
2011-10-01 22:51:12 +02:00
Vladimir 'phcoder' Serbinenko
1333929060
Disable SMI on OS ownership failure
2011-10-01 22:01:31 +02:00
Vladimir 'phcoder' Serbinenko
81dbdc1d0a
Several small fixes
2011-10-01 21:53:43 +02:00
Vladimir 'phcoder' Serbinenko
2d523c70e5
Use map range
2011-10-01 21:42:44 +02:00
Vladimir 'phcoder' Serbinenko
0a213f4cdb
Move p2v and v2p to pci.h
2011-10-01 21:37:02 +02:00
Vladimir 'phcoder' Serbinenko
e5c0534f0b
Fix p2v and v2p
2011-10-01 21:31:53 +02:00
Vladimir 'phcoder' Serbinenko
4fbface043
Remove packed attribute.
2011-10-01 21:14:03 +02:00
Vladimir 'phcoder' Serbinenko
2877805fb0
Fix link_td to use grub_uint32_t and not the pointer type
2011-10-01 21:13:29 +02:00
Vladimir 'phcoder' Serbinenko
0e7ebb0569
run indent on ehci.c
2011-10-01 21:04:17 +02:00
Vladimir 'phcoder' Serbinenko
679cbb4020
Replace #define with enum
2011-10-01 21:03:03 +02:00
Aleš Nesrsta
2f82ea948d
EHCI implementation by Aleš Nesrsta.
2011-10-01 20:18:47 +02:00