mortalglitch | I'm still stuck on boot I get to the telnet 2323, autologin@100000 fails as does a few dev services (dev-bfqio.mount, dev-cpuctl.mount, dev-stune.mount). If I start autologin@100000 using systemctl it will attempt to load the display and then just go to a black screen. Gathering logs now. | 00:14 |
---|---|---|
mal | those mount failures are not a problem | 00:18 |
mortalglitch | systemctl : https://pastebin.com/t9M8UBYJ JournalCtl : https://pastebin.com/k8QPzzP6 Dmesg: https://pastebin.com/4dS3vkWg | 00:20 |
mortalglitch | I tried just in case, I can't seem to get rid of the mount failures at all | 00:20 |
mortalglitch | I was getting a error droid-hal-init (Failed to initialize property area) so I removed the exit from the core/property_service.cpp and now it seems to go a bit further than it did | 00:23 |
mal | hmm, that error usually means some files are missing, do you have droid-hal detritus installed on the device, check with "zypper se droid-hal" | 00:27 |
mal | mortalglitch: just ignore those mount failures | 00:28 |
mortalglitch | zypper se droid-hal gives error connection failed could not resolve host | 00:28 |
mal | I think there should be a way to ignore all failures and still get some output | 00:29 |
mortalglitch | detritus is in the list | 00:30 |
mal | it's installed? | 00:30 |
mortalglitch | it shows under installed packages | 00:30 |
mal | mortalglitch: btw, you can only run droid-hal-init once per boot | 00:31 |
mortalglitch | ah, figured I was doing something bad earlier it would just instantly drop me to recovery | 00:31 |
mal | mortalglitch: not sure when you got the property area error, those logs don't show any errors from droid-hal | 00:32 |
mortalglitch | it was prior to the rebuild, I could re-add the exit and test again to catch them | 00:33 |
mal | hmm | 00:33 |
mal | did you do any other changes for the new build? | 00:34 |
mortalglitch | not this last round, just patched the properties cpp file | 00:34 |
mortalglitch | found an old chat log where sledge had suggested it and you had followed it up with a change to the droid-hal-startup.sh | 00:35 |
mortalglitch | for a similar issue | 00:35 |
mal | yes, that was a long time ago and the issue was fixed in another way | 00:36 |
mortalglitch | ok, will revert to see if I can get closer to the underlying issue ty once again | 00:36 |
mal | not necessary | 00:39 |
mal | something is causing floating point errors from some processes, not sure what it could be | 00:40 |
mal | anyway it's late so we need to continue some other time | 00:45 |
mortalglitch | when I run mic it does 100's of floating point exceptions didn't know if that normal | 00:45 |
mal | that is normal | 00:46 |
mortalglitch | alright mal thank you for all the help have a great night ^^ | 00:46 |
*** ChanServ sets mode: +v T4 | 02:19 | |
T4 | <adampigg> @eugenio_g7 , Mal: current status, boots nicely into language selection, size is nice, click next onto license agreement and hangs clicking accept, was gonna fix this morning but not got a USB c cable with me, will try and source one!! | 07:02 |
T4 | <adampigg> All those permission errors seem to have gone after removing the vibration plugin which seems odd | 07:03 |
T4 | <eugenio_g7> @adampigg hybris or mesa? | 07:22 |
T4 | <adampigg> Mesa | 07:22 |
T4 | <adampigg> I just left libhybris installed and over write the 3 conflicting files :) | 07:24 |
T4 | <adampigg> I wondered if mer /Jolla would accept a patch that built the eglfs plugin, which would stop you having to build qt | 07:24 |
T4 | <eugenio_g7> I guess it would be ok if we split the kms eglfs integration in its own package | 07:29 |
T4 | <eugenio_g7> But that would also mean updating mesa on mer (which would be great as it's pretty old, but we should be sure not to break the emulator) | 07:33 |
T4 | <adampigg> @eugenio_g7 did you have an issue accepting the license? | 07:37 |
T4 | <eugenio_g7> Not that I remember | 07:47 |
*** ChanServ sets mode: +v T4 | 08:34 | |
T4 | <adampigg> @eugenio_g7 in the main UI now.... Touch seems bad. Did you have that | 08:57 |
T4 | <eugenio_g7> Had it happen sometimes just after the UI start-up, but then it works fine | 09:17 |
T4 | <eugenio_g7> Does the lock screen work? Mine shows only a spinning circle, but I can swipe from the edges and get to the home screen (which works fine) | 09:18 |
T4 | <adampigg> Yes | 09:20 |
T4 | <adampigg> I can swipe sideways ok | 09:20 |
T4 | <adampigg> But can't swipe up for menu | 09:20 |
T4 | <adampigg> Or click icons | 09:20 |
T4 | <adampigg> If I swipe right from the bottom it works | 09:21 |
T4 | <adampigg> But can't click anything | 09:21 |
T4 | <adampigg> There is something to do with touch protocols but I can't find it | 09:22 |
T4 | <adampigg> Mal? | 09:22 |
r0kk3rz | nice | 09:30 |
r0kk3rz | @eugenio_g7: in the past broken lockscreen is an ofono issue, but i thought that was fixed | 09:31 |
T4 | <adampigg> R0KK3RZ, what's the touch protocol a b stuff? | 09:37 |
T4 | <adampigg> I had spinning icon, but then unmasked ofono | 09:37 |
r0kk3rz | does it has a modem? | 09:43 |
T4 | <eugenio_g7> r0kk3rz oh that might explain it | 09:43 |
r0kk3rz | ofono needs to be running, but otherwise it should be ok i think | 09:44 |
r0kk3rz | @adampigg: i have no idea tbh, might have to do some digging | 09:45 |
T4 | <eugenio_g7> No, it doesn't have a modem, my ofono is masked (and I thought I disabled the modem from one of the droid-hal spec files) | 09:45 |
T4 | <adampigg> No modem | 09:45 |
r0kk3rz | yeah thats fine, just configure rilplugin to have no modems | 09:46 |
T4 | <eugenio_g7> Great, will try this evening :) thanks for the pointer | 09:46 |
T4 | <eugenio_g7> Also Sailfish-browser seems broken, pages seem to load but nothing displays | 09:47 |
r0kk3rz | adreno quirks libhybris option ;) | 09:47 |
T4 | <adampigg> It looks so nice, but my touch is so buggy!! | 09:47 |
T4 | <eugenio_g7> On mesa? | 09:47 |
r0kk3rz | oh, its not qcom | 09:47 |
r0kk3rz | ummmm | 09:47 |
T4 | <adampigg> Not usinglibhybris ;) | 09:47 |
r0kk3rz | oh, cool | 09:48 |
r0kk3rz | that could get interesting though | 09:48 |
r0kk3rz | with media, cameras, sensors | 09:49 |
T4 | <adampigg> Well, camera doesn't work in lineage anyway! | 09:52 |
r0kk3rz | yeah that wont help | 09:52 |
krnlyng | piggz_, is cache mounted? | 13:01 |
T4 | <adampigg> Krnyng let me check | 13:02 |
T4 | <adampigg> Thoughts on touchscreen weirdness? | 13:02 |
T4 | <adampigg> Btw, actdead charging animation working perfectly... That's usually the last thing to fix! | 13:04 |
T4 | <adampigg> Krnlyng, no, and there is no mount unit for it | 13:08 |
T4 | <adampigg> Fs_mgr tries to mount it tho | 13:09 |
krnlyng | piggz_, what's inside it? | 13:15 |
krnlyng | maybe you need to add a mount for it | 13:15 |
T4 | <adampigg> krnlyng: https://bpaste.net/show/4341a2051e01 | 13:25 |
krnlyng | piggz_, not sure if it helps but maybe you can figure out where that hwc.reg comes from | 13:26 |
T4 | <adampigg> Will do | 13:34 |
T4 | <adampigg> Is this for hwcomposer support? | 13:34 |
*** ChanServ sets mode: +v T4 | 14:00 | |
T4 | <adampigg> Krnlyng,.the reason the android mounts fail is that the symlinls in /dev are all off by onex but im probably better doing it in systemd anyway..n | 16:19 |
T4 | <adampigg> Got 4 partitions mounted | 16:19 |
T4 | <adampigg> One contains the wifi mac details | 16:19 |
krnlyng | piggz_, if you can please fix the udev rules | 16:20 |
T4 | <adampigg> No joy with toichscreen yet tho...its like i can touch things, but they stay sellected, and cant be deselected | 16:20 |
T4 | <adampigg> I probably need evdev_trace installed | 16:22 |
T4 | <adampigg> Krnlyng, does the rule go in droid-config-dev/sparse...? | 16:25 |
krnlyng | piggz_, there are already rules there, you probably have to adapt those | 16:28 |
T4 | <adampigg> Ok | 16:30 |
T4 | <adampigg> Krnlyng, so, should i just leave it to android init/fs_mgr to do the mounts? | 16:32 |
T4 | <adampigg> @eugenio_g7 it's very odd....it's like all my swipe gestures are handled perfectly, just clicking stuff doesnt work. It almost seems like an app issue. Not a hw/driver issue | 16:40 |
piggz_ | krnlyng: mal: what does this look like? https://bpaste.net/show/75b91728de16 | 18:40 |
krnlyng | piggz_, touch input | 18:40 |
krnlyng | ? | 18:40 |
piggz_ | krnlyng: yes, but it doesnt work correctly....its probably hard to explain without a video! | 18:46 |
piggz_ | im just gonna grab a trace from my mido to see how that looks | 18:46 |
piggz_ | krnlyng: see this from mido https://bpaste.net/show/3acf396ad14d | 18:48 |
piggz_ | notice how the gap between BTN_TOUCH 1 and 0 is a lot less on mido | 18:49 |
piggz_ | could that cause the weird behaviour where swipes seem to work ok, but touches dont? | 18:49 |
krnlyng | piggz_, hard to tell what the problem is | 18:51 |
piggz_ | krnlyng: pls watch this... https://www.piggz.co.uk/nextcloud/index.php/s/oSA9MaBAiiyk2kt | 19:02 |
piggz_ | @eugenio_g7 ^^ is this how your touch was? | 19:02 |
mal | piggz_: so it somehow missed the touch releases maybe? | 19:05 |
piggz_ | mal: seems like that | 19:08 |
krnlyng | piggz_, that's really odd, could be that pixel_ratio is one thing, but the delayed touches are weird | 19:11 |
krnlyng | is the system busy or smth? | 19:11 |
krnlyng | i.e. does it lag? | 19:11 |
krnlyng | maybe some setting in the touch driver? no idea | 19:12 |
piggz_ | krnlyng: no, there doesnt seemt o be lag when dragging | 19:14 |
eugenio | piggz_, when I had touch troubles only drag worked | 19:20 |
piggz_ | eugenio: so, similar ish? | 19:21 |
eugenio | stupid question... have you tried unplugging the USB cable? | 19:21 |
eugenio | perhaps, I managed only to open the application launcher, but taps didn't seem to register | 19:22 |
eugenio | but it went away in seconds | 19:22 |
piggz_ | yes, had cables in/out | 19:22 |
mal | I have had random touch issues on fp2 when some usb cable or charger is connected | 19:22 |
mal | i.e. touch fails completely when using some charger | 19:23 |
piggz_ | ive been disconnected with no change | 19:23 |
piggz_ | the releases are in the evdev_trace tho | 19:23 |
piggz_ | lookin at the trace looks fine | 19:23 |
eugenio | piggz_, these are my silica settings | 19:28 |
eugenio | [silica] | 19:28 |
eugenio | icon_size_launcher=150 | 19:28 |
eugenio | theme_icon_subdir='z1.5' | 19:28 |
eugenio | theme_pixel_ratio=1.5 | 19:28 |
piggz_ | eugenio: where are those set? | 19:28 |
eugenio | droid-config | 19:29 |
eugenio | but you can modify them on the fly (not from the nemo user as those dconf values are locked) | 19:30 |
eugenio | if I'm not mistaken there is a section about it on the hadk-faq | 19:30 |
piggz_ | eugenio: 1.5 didint help :( | 20:07 |
piggz_ | eugenio: can you do dmesg | grep ft5x46 | 20:10 |
r0kk3rz | piggz_: cat the input event and look at the touch output | 20:24 |
piggz_ | r0kk3rz: ?? | 20:25 |
*** ChanServ sets mode: +v T4 | 20:25 | |
piggz_ | r0kk3rz: evdev_trace looks ok ... catting it gives garbage doesnt it | 20:25 |
r0kk3rz | ish | 20:25 |
r0kk3rz | but its a bit like the matrix, if you look at the garbage long enough | 20:26 |
r0kk3rz | you can see a woman in a red dress | 20:26 |
eugenio | piggz_, https://pastebin.com/WXZhX4mH | 20:29 |
piggz_ | eugenio: looks the same | 20:30 |
eugenio | I'm still on 2.2.1, but I don't think that should matter | 20:30 |
piggz_ | it does feel like a qt ish issue | 20:31 |
piggz_ | evdev looks all fine | 20:31 |
piggz_ | i wonder if there is any config for lipstick | 20:31 |
piggz_ | eugenio: r0kk3rz: krnlyng: mal: fixed! | 20:36 |
krnlyng | nice! | 20:37 |
krnlyng | what was it? | 20:37 |
piggz_ | i feel it should be added to the faq! | 20:37 |
piggz_ | i found this https://forum.qt.io/topic/63167/evdev-vs-evdevtouch-touchscreen-driver-linux-embedded | 20:37 |
piggz_ | which says, for this TS, evdev works better than evdevtouch | 20:37 |
krnlyng | ah | 20:37 |
krnlyng | piggz_, do that :) | 20:37 |
piggz_ | so, i changed the lipstick env line | 20:37 |
eugenio | I do have evdevtouch though :/ | 20:38 |
piggz_ | well, you _had_ weird issued | 20:38 |
piggz_ | but, atleast this works | 20:38 |
piggz_ | i now have a working-ish tablet! | 20:39 |
eugenio | great | 20:39 |
mortalglitch | congrats! | 20:39 |
mortalglitch | is the lipstick-hack(aka surfaceflinger-hack) from the faq still valid in some cases? | 20:40 |
piggz_ | eugenio: might go back to ratio 1.0 ... get more icons on a row :) | 20:40 |
piggz_ | mortalglitch: that has only been valid for 2 or 3 devices iirc | 20:40 |
piggz_ | not very relevant at all | 20:41 |
mortalglitch | I saw previously it had been used in some htc builds and I'm having no luck with the display on mine | 20:41 |
eugenio | lol evdev doesn't work at all here | 20:41 |
piggz_ | eh, how odd | 20:42 |
r0kk3rz | mortalglitch: does yours need hwc2? | 20:42 |
mortalglitch | not certain, how would I verify the requirements for it? | 20:42 |
piggz_ | eugenio: this is my full config https://bpaste.net/show/8fe3a6bfb1dd | 20:43 |
piggz_ | i wonder if the physical size options broke it.... | 20:43 |
piggz_ | ill try without | 20:43 |
r0kk3rz | mortalglitch: what base are you using? | 20:43 |
eugenio | yup mine is the same withouth the size envvars | 20:43 |
mortalglitch | 14.1 | 20:43 |
eugenio | anyway, back working on sensors :) | 20:44 |
mortalglitch | and Lineage | 20:44 |
piggz_ | eugenio: any progreess? | 20:45 |
eugenio | nope, but I least I got the kernel modules to load (switched to the lineage 13 kernel) | 20:46 |
eugenio | reading more about IIO to try obtaining events from them manually without sensorfwd | 20:47 |
mortalglitch | haha, just tried to make libsurfaceflinger and i'm getting ninja error: /SHARE_LIBRARIES/libvulkan_intermediates/export_includes missing or no known rule to make it | 20:48 |
r0kk3rz | mortalglitch: i think it was 15.1 that really needed the sf hack | 20:52 |
r0kk3rz | mortalglitch: whats your issue? | 20:52 |
piggz_ | eugenio: no, the physical env didnt make any difference ... evdev for me! | 20:53 |
eugenio | ok | 20:54 |
mortalglitch | getting odd behavior during boot. autologin@100000 fails and occasionally user@100000 fails I can then systemctl start each of those services and it will switch to showing an all black display | 20:54 |
eugenio | wonder how it will behave on other Mi Pads | 20:54 |
piggz_ | yup | 20:55 |
r0kk3rz | mortalglitch: tried test_hwcomposer? | 20:55 |
piggz_ | r0kk3rz: on your tablet build, is there a .sepc setting to not install the voicecall stuff? | 20:56 |
piggz_ | .spec | 20:56 |
r0kk3rz | piggz_: its in patterns | 20:57 |
r0kk3rz | piggz_: https://github.com/mer-hybris/droid-hal-configs/blob/master/patterns/templates/jolla-configuration-%40DEVICE%40.yaml#L9 | 20:58 |
r0kk3rz | murder it | 20:58 |
piggz_ | r0kk3rz: yeah, found it ta | 20:58 |
mal | mortalglitch: you issue is different level than actual graphics | 20:58 |
mortalglitch | ah, more around the user issue? | 20:59 |
r0kk3rz | black screen sounds like hwcomposer is probably working | 20:59 |
mal | piggz_: his device fails even before it gets to graphics level, some floating point errors from some processes | 20:59 |
mal | r0kk3rz: ^ | 21:00 |
r0kk3rz | mortalglitch: what device? | 21:01 |
mortalglitch | htc 10 (pme) | 21:01 |
mortalglitch | will grab some newer logs | 21:03 |
r0kk3rz | yeah, dmesg and journal | 21:03 |
mortalglitch | dmesg: https://pastebin.com/Ltmqw5xX | 21:05 |
mortalglitch | journalctl : https://pastebin.com/LByEPXHq | 21:06 |
r0kk3rz | mortalglitch: kill time_daemon and ipacm | 21:12 |
r0kk3rz | from the android init rcs | 21:13 |
mortalglitch | trying to locate the file (sorry fairly new to this type of building) | 21:18 |
r0kk3rz | https://github.com/Fagyi/android_device_htc_pme/commit/d16472ec30c146398a748c3a9d6e5b06a1a6b47e | 21:22 |
piggz_ | r0kk3rz: can you give broadcom BT tips | 21:28 |
mortalglitch | r0kk3rz thank you for that | 21:28 |
r0kk3rz | piggz_: maybe | 21:29 |
piggz_ | r0kk3rz: so, the device is /dev/ttyHSU0 | 21:30 |
r0kk3rz | sounds usual, got yo firmwares? | 21:30 |
piggz_ | i have firmware linked to /etc/firmware/bt/.... | 21:30 |
r0kk3rz | good good, what name? | 21:30 |
piggz_ | sh-3.2# ls /etc/firmware/bt/ | 21:31 |
piggz_ | BCM4356A2_001.003.015.0084.0268_ORC.hcd | 21:31 |
piggz_ | i cant find a file with a mac address atm | 21:32 |
piggz_ | i have /data/misc/bluedroid and /data/misc/bluetooth but noth are empty | 21:32 |
piggz_ | hangon, it might be in /config | 21:33 |
r0kk3rz | ok cool | 21:33 |
r0kk3rz | prod it with hci_attach | 21:33 |
eugenio | piggz_, could you please pastebin me the output of find /sys/bus/iio/devices/iio\:device*/ ? | 21:35 |
r0kk3rz | piggz_: https://github.com/r0kk3rz/droid-config-scorpion_windy/commit/063779b2ff7a899dee8b0fadeb69e9de6b2b77fe | 21:35 |
piggz_ | r0kk3rz: i think im supposed to have a /config/bt/bd_addr.conf but it isnt there | 21:37 |
piggz_ | eugenio: https://bpaste.net/show/6c894e3ccf3f | 21:38 |
piggz_ | r0kk3rz: when i run hciattach i get a time out | 21:41 |
r0kk3rz | iirc you need to disable rfkill first | 21:41 |
r0kk3rz | what args did you give hciattach? | 21:42 |
r0kk3rz | piggz_: https://github.com/r0kk3rz/droid-config-scorpion_windy/blob/master/sparse/usr/bin/droid/droid-bt-init.sh | 21:43 |
piggz_ | r0kk3rz: yeah, thats what i did | 21:44 |
piggz_ | https://bpaste.net/show/3a4f82bfe155 | 21:45 |
piggz_ | but i need that package built | 21:45 |
eugenio | piggz_, thanks. Could you please insmod heci.ko, heci-ish.ko, hid-heci-ish.ko, sens-col-core.ko, hid-sensor-hub.ko, hid-sensor-iio-common.ko, hid-sensor-trigger.ko, hid-sensor-accel-3d.ko and hid-sensor-als.ko (in that order) and retry that find command? | 21:45 |
mal | eugenio: did you alread try adding the config I mentioned yesterday? | 21:46 |
eugenio | yup, nothing changed. But I don't think that sensorfwd is the problem | 21:47 |
eugenio | I think is in the kernel / my kernel config | 21:47 |
mortalglitch | r0kk3rz: I disabled the ipacm and time_daemon and rebooted, is there any particular changes I should be on the look out for in the logs? | 21:48 |
eugenio | looking on the net, IIO accelerometer devices should expose at least in_accel_{x,y,z}_raw in the iio:device sysfs path | 21:49 |
eugenio | they aren't in my case (even though I do have them in sensor_elements as they should) | 21:49 |
r0kk3rz | mortalglitch: not really, they were just spamming | 21:49 |
mal | eugenio: well based on your log yesterday the sensors were found by sensorfwd | 21:49 |
mal | IioAdaptor::setup() Accelerometer found | 21:50 |
mal | eugenio: without the proper hwsettings.ini the system just won't use the sensors | 21:50 |
mal | at least in the past it didn't | 21:50 |
mal | but that log from yesterday looked fine | 21:51 |
eugenio | yes the devices are there, but they miss the objects on which the actual values are reported (in_accel_x_raw, in_accel_y_raw, etc), at least looking at other sysfs tree for other accelerometers exposed on IIO | 21:52 |
mal | eugenio: how did you test those? using messwerk or csd app? | 21:52 |
eugenio | both | 21:52 |
mal | show how the sysfs looks for those | 21:52 |
eugenio | I had also enabled them manually from sensorfw, so perhaps that's why sensorfwd detected them before creating the hw-settings.ini | 21:53 |
eugenio | https://www.kernel.org/doc/Documentation/hid/intel-ish-hid.txt <-- bottom, that should how it should look | 21:53 |
piggz_ | eugenio: https://bpaste.net/show/ef162edddd61 | 21:53 |
eugenio | mal, this how they look in my device: https://pastebin.com/r80Zibfm | 21:54 |
eugenio | ok exactly the same, thanks piggz_ | 21:54 |
eugenio | uh sorry I opened my very same pastebin link :/ | 21:54 |
eugenio | hmm they should be more | 21:55 |
eugenio | hmmm I do have this kernel oops after loading heci-hish.ko https://pastebin.com/657iJMde | 22:01 |
mal | mortalglitch: just making sure, did you do any modifications to droid-hal-startup.sh? | 22:10 |
mortalglitch | double checking | 22:11 |
mortalglitch | I had tried previously removing the "exec nohup" from the /sbin/droid-hal-init. But right now it is the default set up | 22:15 |
piggz_ | r0kk3rz: eugenio: i now can enable the BT device...but scanning doesnt find anything | 22:31 |
piggz_ | r0kk3rz: https://bpaste.net/show/d57dfa9ab488 | 22:33 |
mortalglitch | semi good sign after systemctl starting autologin@100000 and the screen blacks out the buttons react with vibrate feedback and the buttons register in dmsg ^^ | 22:37 |
mal | mortalglitch: what did you change? | 22:39 |
piggz_ | r0kk3rz: found a device, but then bt turned off, and now cant find anything...but progress is progress! | 22:40 |
mortalglitch | nothing this time just rebooted, waited about 2 minutes and then ran "systemctl start autologin@100000" | 22:40 |
piggz_ | oh, it found a phone | 22:41 |
piggz_ | nice, double-tap-wake works too | 22:42 |
piggz_ | r0kk3rz: is the droid-bt-init.sh script needed with the other config? | 22:42 |
r0kk3rz | piggz_: no, i dont use the script anymore | 22:50 |
piggz_ | r0kk3rz: so the service goes too i guess | 22:50 |
r0kk3rz | the config is for use with this https://build.merproject.org/package/show/nemo:devel:hw:sony:scorpion/bluetooth-rfkill-event-hciattach | 22:50 |
r0kk3rz | which is a much better solution | 22:51 |
piggz_ | r0kk3rz: yes, i have that now | 22:52 |
r0kk3rz | but you should be able to init it manually with hciattach | 22:54 |
r0kk3rz | got your kernel config somewhere? | 22:55 |
piggz_ | r0kk3rz: https://github.com/piggz/android_kernel_xiaomi_latte/blob/hybris-13.0-latte/arch/x86/configs/lineageos_latte_defconfig | 23:07 |
Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!