BUG: interchange.from_dataframe doesn't work with large_string
- [ ] closes #52795 (Replace xxxx with the GitHub issue number)
- [ ] [Tests added and passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#writing-tests) if fixing a bug or adding a new feature
- [ ] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [ ] Added [type annotations](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#type-hints) to new arguments/methods/functions.
- [ ] Added an entry in the latest `doc/source/whatsnew/vX.X.X.rst` file if fixing a bug or adding a new feature.

The change looks good.

One related thing to note: it might be good to test the full roundtrip, i.e. the conversion from pandas to pyarrow as well (or at least have a test that checks what we create for buffers in pandas' `__dataframe__`, to ensure that the type (u vs U) matches the offsets' dtype) thanks @jorisvandenbossche , have updated and added a test - would appreciate it if we could get this in to encourage more testing of "from interchange object to pandas" scenarios in real life It's good that the roundtrip works. Now, that only works because pyarrow actually checks the bitwidth of the offsets in case the type string is "u" (and not just assumes it will be int32 offsets). 
It's probably still good to make the pandas implementation compliant with the spec (use int32, or keep using int64 offsets but use "U" instead of "u" in the dtype specification) thanks for explaining, noted!