2022-01-23 11:36:17 -06:00
|
|
|
// SPDX-License-Identifier: GPL-2.0
|
|
|
|
#ifndef EHCI_H
|
|
|
|
#define EHCI_H
|
2022-02-19 10:17:40 -06:00
|
|
|
/**
|
|
|
|
* \file
|
|
|
|
*
|
2022-01-23 11:36:17 -06:00
|
|
|
* Provides support for USB keyboards connected via an EHCI controller.
|
|
|
|
*
|
2022-02-19 13:56:55 -06:00
|
|
|
*//*
|
2022-01-23 11:36:17 -06:00
|
|
|
* Copyright (C) 2021-2022 Martin Whitaker.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include <stdint.h>
|
|
|
|
|
|
|
|
#include "usbhcd.h"
|
|
|
|
|
2022-02-19 10:17:40 -06:00
|
|
|
/**
|
2022-01-23 11:36:17 -06:00
|
|
|
* Initialises the EHCI device identified by bus, dev, func, and base_addr,
|
|
|
|
* scans all the attached USB devices, and configures any HID USB keyboard
|
|
|
|
* devices it finds to generate periodic interrupt transfers that report key
|
|
|
|
* presses. Initialises hcd and returns true if the device was successfully
|
|
|
|
* initialised and one or more keyboards were found.
|
|
|
|
*/
|
|
|
|
bool ehci_init(int bus, int dev, int func, uintptr_t base_addr, usb_hcd_t *hcd);
|
|
|
|
|
|
|
|
#endif // EHCI_H
|