How to make a USB 3.0 slave that can draw 900 mA?
If you don’t need USB communications, the DP/DM lines can be left open. If you do, you need only the standard pull-down on DP or DM so the host can determine if you’re a low-speed or full-speed/high-speed device.

Regardless, the downstream-facing port will deliver its rated current no matter what the endpoint devices does. If your device exceeds that rating the host will limit/over current warning but will not suffer damage.

This simple, host-limited power delivery was the state of affairs before the various ‘battery charging’ handshaking/sensing schemes came into play, all designed to avoid tripping host over-current. Nevertheless, the simple method is still workable if you’re willing to be explicit about the type of port your device plugs into.

And what about those handshaking/sensing schemes? Endpoint devices that support fast charging look at the host’s DP/DM termination to determine how much current they’re allowed to draw, and self-limit accordingly. Unfortunately there’s confusion about how this works exactly. There’s the USB (BC 1.2) way, the Apple way, the Sony way, etc. More here: https://www.maximintegrated.com/en/design/technical-documents/tutorials/5/5801.html