diff --git a/embassy-usb-synopsys-otg/Cargo.toml b/embassy-usb-synopsys-otg/Cargo.toml
index f117d0cbf..9397ff607 100644
--- a/embassy-usb-synopsys-otg/Cargo.toml
+++ b/embassy-usb-synopsys-otg/Cargo.toml
@@ -2,6 +2,7 @@
 name = "embassy-usb-synopsys-otg"
 version = "0.1.0"
 edition = "2021"
+license = "MIT OR Apache-2.0"
 description = "`embassy-usb-driver` implementation for Synopsys OTG USB controllers"
 keywords = ["embedded", "async", "usb", "hal", "embedded-hal"]
 categories = ["embedded", "hardware-support", "no-std", "asynchronous"]
diff --git a/embassy-usb-synopsys-otg/README.md b/embassy-usb-synopsys-otg/README.md
index fa8d5d6da..5354f07bf 100644
--- a/embassy-usb-synopsys-otg/README.md
+++ b/embassy-usb-synopsys-otg/README.md
@@ -1,5 +1,16 @@
 # Embassy USB driver for the Synopsys USB OTG core
 
-This crate implements `embassy-usb-driver` for Synopsys USB OTG devices. If you wish to
-integrate this crate into your device's HAL, you will need to add device-specific initialization.
-For an example, check out the `embassy-stm32` crate.
+This crate implements [`embassy-usb-driver`](https://crates.io/crates/embassy-usb-driver) for Synopsys USB OTG devices. 
+
+It contains the "core" of the driver that is common across all chips using
+the Synopsys OTG IP, but it doesn't contain chip-specific initialization such
+as clock setup and GPIO muxing. You most likely don't want to use this crate
+directly, but use it through a HAL that does the initialization for you.
+
+List of HALs integrating this driver:
+
+- [`embassy-stm32`](https://crates.io/crates/embassy-stm32), for STMicroelectronics STM32 chips.
+- [`esp-hal`](https://crates.io/crates/esp-hal), for Espressif ESP32 chips.
+
+If you wish to integrate this crate into your device's HAL, you will need to add the 
+device-specific initialization. See the above crates for examples on how to do it.
\ No newline at end of file